Mais conteúdo relacionado Semelhante a [Games on AWS 2019] AWS 입문자를 위한 초단기 레벨업 트랙 | AWS 레벨업 하기! : 네트워크 - 권신중 AWS 솔루션즈 아키텍트 (20) Mais de Amazon Web Services Korea (20) [Games on AWS 2019] AWS 입문자를 위한 초단기 레벨업 트랙 | AWS 레벨업 하기! : 네트워크 - 권신중 AWS 솔루션즈 아키텍트1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS 레벨업하기! : 네트워크
권신중 솔루션즈 아키텍트, AWS
2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
• Amazon VPC – Virtual Private Cloud
• Connectivity options for VPCs
• VPC 관리
• Elastic Load Balancer
• Route 53
• Global Accelerator
3. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC (Virtual Private Cloud)
4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon VPC (Virtual Private Cloud)
• 사용자가 정의한 가상의 네트워크 환경 (논리적 격리)
• 완전한 네크워크 제어가능
• 자체 IP 주소 범위
• Subnet
• Routing Tables
• Security : Security Group, Network ACL
• Gateway : Internet Gateway, NAT Gateway
• On-Premise 데이터센터와 연결 옵션 제공 (VPN, DirectConnect)
• VPC내의 모든 EC2 인스턴스는 사설 IP를 가지나
개별 인스턴스에 공인 IP 할당 가능 (Public IP/Elastic IP)
5. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region,
IP대역 결정
가용영역(AZ)에
Subnet 생성
Routing
설정
Traffic 통제
(In/Out)
VPC 만들기 : 일반적인 절차
EC2 Instance 생성 준비 끝!
Availability Zone
6. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Global Infrastructures
남아메리카
상파울루(3)
캐나다
중부(2)
미국 서부
캘리포니아 북부(3)
오레곤(3)
유럽
프랑크푸르트(3)
아일랜드(3)
런던(3)
파리(3)AWS GovCloud
US-West (3)
중국
베이징(2)
닝샤(3)
새로운 리전(제공 예정)
바레인 / 케이프타운 / 자카르타 / 밀라노
* 2019년 6월 기준https://aws.amazon.com/about-aws/global-infrastructure/
3미국 동부
버지니아 북부(6)
오하이오(3)
3 아시아 태평양
서울(2)
도쿄(3)
오사카-로컬(1)
싱가포르(2)
시드니(3)
뭄바이(2)
3
7. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Region, 가용영역, VPC 이해
AWS Region
VPC
Availability Zone #1 Availability Zone #2 Availability Zone #3
8. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : IP Range 결정
172.31.0.0/16
Recommended:
RFC1918 range
Recommended:
/16
(65,536 addresses)
VPC 확장 시나리오를 미리
고려하여
중복되지 않는 IP Range 결정!
VPC
9. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : CIDR (Classless Inter-Domain Routing)
172.31.0.0/16
10101100.00011111.00000000.00000000IP (172.31.0.0)
11111111.11111111.00000000.00000000Subnet Mask
(255.255.0.0)
Network ID Host ID
IP Address Range :172.31.0.0 ~ 172.31.255.255 (65,536개, 2^16)
172 31 0 0
255 255 0 0
10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : IP Range 결정 시 고려사항
Network 확장 시나리오 고려
서비스 확장 대비 충분히 큰 CIDR 지정
향후 AWS내 Region간 확장
향후 고객사 On-Premise Network과의 연동
VPC의 Network 범위는 /16 ~ /28까지 가능
VPC CIDR은 생성 후 변경 불가
Secondary CDIR은 4개 까지 추가 가능
RFC 1918 (Private IP 표준) 권장
10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16
Subnet Bits(CIDR) # of hosts
/16 65,534
/17 32,766
/18 18,382
/19 8,190
/20 4,094
/21 2,046
/22 1,022
/23 510
/24 254
/25 128
/26 62
/27 30
/28 14
11. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : 가용영역에 Subnet 생성
AWS Region
Availability Zone #1 Availability Zone #2 Availability Zone #3
172.31.0.0/16
subnet
172.31.0.0/24
subnet
172.31.1.0/24
subnet
172.31.2.0/24
12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Subnet 생성 시 고려 사항
최소 /24 subnet 지정 (가용 IP : 251개)
예약된 IP 주소 (Subnet CIDR이 10.0.0.0/24인 경우)
10.0.0.0 : 네트워크 주소
10.0.0.1 : VPC 라우터용으로 예약된 주소
10.0.0.2 : AWS에서 예약한 DNS 주소
10.0.0.3 : AWS에서 향후 사용을 위하여 예약
10.0.0.255 : 브로드캐스트 주소. VPC에서는 브로드캐스트를 지원하지 않으며, AWS에서 예약
Subnet의 CIDR은 생성 후 변경할 수 없음
Application의 고가용성을 위해 복수개의 가용영역에 Subnet 생성 (Multi-AZ)
13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Subnet 구성 예시
AWS Region
Availability Zone #1
Subnet (WEB)
Subnet (DB)
Availability Zone #2
14. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Subnet 구성 예시
AWS Region
Availability Zone #1
Subnet (WEB)
Subnet (DB)
Availability Zone #2
15. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Subnet 구성 예시
AWS Region
Availability Zone #1
Subnet (WEB)
Subnet (DB)
Availability Zone #2
Subnet (WEB)
Subnet (DB)
16. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Routing
172.31.0.100
255.255.255.0
172.31.0.200
255.255.255.0
172.31.1.100
255.255.255.0
“Network#1”
“Network#2”
17. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Route table : Packet이 어디로 가야 하는 지 정의하는 Route Policy의
집합
• VPC 생성 시 default route table이 만들어지고 모든 Subnet에 적용
• 그러나 사용자 정의 Route table을 만들어 Subnet별로 적용할 수
있음
VPC 만들기 : Routing
18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : Main Route Table
AWS Region
Availability Zone #1
Subnet (172.31.0.0/24)
Subnet (172.31.3.0/24)
Availability Zone #2
Subnet (172.31.1.0/24)
Subnet (172.31.2.0/24)
?
Subnet별 Route Table에 몇 개의 Route Policy가 필요할까요?
?
Router
19. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC내에서 송/수신되는
트래픽은 VPC내에서 라우팅
20. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“MyWebServers” security group
“MyBackends” security group
Allow only “MyWebServers”
Web Web Web Web
App App App
Allow
w
eb
traffic
on
0.0.0.0/0
IGW
VPC 만들기 : 네트워크 트래픽 통제 (Security Group)
21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Security Group for Web Servers Security Group for DB Servers
인터넷 구간으로부터 HTTP,
HTTPS Connection 허용
웹서버 Security Group으로부터
3306 Port Connection 허용
VPC 만들기 : 네트워크 트래픽 통제 (Security Group)
22. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : 네트워크 트래픽 통제 (Network ACL)
Private subnet
Public subnet
MySQL DB
Amazon Aurora
Amazon EC2
Network
access
control list
NACL “External Access”
Network
access
control list
NACL “Database Access”
0.0.0.0/0
HTTPS
(TCP 443)
10.0.0.0/16
MySQL
(TCP 3306)
Other IPs
Other Ports
• Inbound and Outbound
• Subnet level inspection
• Optional level of security
• By default, allow all traffic
• Stateless
• IP and TCP/UDP port based
• Supports allow and deny rules
• Deny all at the end
23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 만들기 : 네트워크 트래픽 통제
Security Group Network ACL
인스턴스 단위
인스턴스에 개별 적용
서브넷 단위
서브넷 내 인스턴스에 자동 적용
allow 규칙 만 allow / deny 규칙
stateful : return 트래픽 자동 허용 stateless : return 트래픽에 대해 allow
규칙 설정 필요
모든 규칙을 확인 후 판단 순서대로 규칙을 확인
allow/deny 규칙 만족 시 중단
Security Group vs Network ACL
24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region,
IP대역 결정
가용영역(AZ)에
Subnet 생성
Routing
설정
Traffic 통제
(In/Out)
VPC 만들기 : 일반적인 절차
EC2 Instance 생성 준비 끝!
Availability Zone
25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Connectivity options for VPCs
26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Internet
connectivity
Connecting to other
VPCs
Connecting to your
on-premises network
Connecting your VPC
or not
27. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Internet connectivity or not
28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 확장 : Internet
VPC Internet Gateway
Managed Service
확장성, 가용성, 중복성 보장 설계
VPC 인스턴스와 인터넷 간의 통신
1:1 NAT
인터넷 구간과 연결하려는 EC2 인스턴스는
Public IP나 EIP(Elastic IP) 를 가져야 함
Public Subnet의 Routing Table 수정
IPv4, IPv6 지원
Internet
Public Subnet
Private Subnet
Destination
172.16.0.0/16
Target
local
0.0.0.0/0 IGW
Public Subnet Route Table
29. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 확장 : Internet
VPC NAT Gateway
AWS가 완전하게 관리하는 NAT Gateway
Internet Access가 불가능한 Private
Subnet에 있는 Instance들이 Patch, Update
Download등을 위하여 구성
고가용성 및 최대 45Gbps의 대역폭 제공
Internet facing Interface를 위해 NAT
Gateway당 하나의 Elastic IP 필요
VPC Flow Logs를 통하여 Traffic Monitoring
TCP, UDP, ICMP Protocol 지원
Network ACL을 통하여 Outbound Traffic
통제(외부의 특정한 Server에서만 Download
가능)
CloudTrail 지원
Internet
Public Subnet
Private Subnet
NAT
Gateway
Destination
172.16.0.0/16
Target
local
0.0.0.0/0 NAT-GW
Private Subnet Route Table
30. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 확장 : Internet
172.16.11.0/24
VPC Subnet 1
Availability Zone ‘A’
172.16.12.0/24
VPC Subnet 2
Availability Zone ‘B’
172.16.11.100 172.16.12.89
InternetEIP (Elastic IP)
Account에 할당되어 변경되지 않는 Elastic
IP(EIP)를 할당
EC2 Instance 장애시, 다른 EC2 Instance로
EIP를 Re-Associate
Region당 기본 5개의 Elastic IP Address 할당
가능(Soft-Limit)
Allocation / Release
Account에 EIP 할당 또는 반납
Associate / Disassociate
EC2/NAT GW Instance에 EIP 연결 또는
분리
EIP(nn.nn.nn.nn)
31. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
NAT
InstanceB
10.1.1.11/24
Instance BNAT-GW
NAT-GW
0.0.0.0/0
AWS Region
Availability Zone 2Availability Zone 1
Private subnet
The
Internet
Private subnet
Public subnet
InstanceA
Public subnet
Amazon S3
VPC CIDR 10.1.0.0/16
10.1.0.11/24
InstanceC
10.1.2.11/24
InstanceD
10.1.3.11/24
+ Expand + IPv6
IGW
10.1.0.0/16 Local
0.0.0.0/0 IGW
Destination Target
10.1.0.0/16 Local
Destination Target
EIP-10.1.0.11:54.23.12.43
EIP-10.1.1.11:54.19.12.23
Let’s take a closer look
Amazon
DynamoDB
AWS
Lambda
Amazon
SQS
Amazon
SNS
AWS IOT
VPC
Private subnet
Public subnet
32. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Connecting to other VPCs
VPC Peering Transit Gateway
33. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC peering
• 2개의 VPC간 Network 연결
• 서로 다른 리전의 VPC간 Peering 가능
• 서로 다른 AWS Account의 VPC간 Peering
가능
• VPC CIDR 범위는 서로 겹치지 않아야 함
10.0.0.0/16
VPCA VPCB
VPCC VPCD
10.2.0.0/16
10.1.0.0/16
10.3.0.0/16
34. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Establish a VPC peering: Initiate request
Step 1
Initiate peering
request
172.31.0.0/16 10.55.0.0/16
35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Establish a VPC peering: Accept request
Step 1
Initiate peering
request
Step 2
Accept peering
request
172.31.0.0/16 10.55.0.0/16
36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Establish a VPC peering: Create a route
Step 1
Initiate peering
request
Step 2
Accept peering
request
Step 3
172.31.0.0/16 10.55.0.0/16
Traffic destined for the peered VPC
should go to the peering
37. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Connecting to other VPCs
VPC Peering Transit Gateway
38. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPN connectionCustomer
gateway
Amazon VPC Amazon VPC
AWS Direct
Connect Gateway
VPC peering
VPC peering VPC peering
Amazon VPC Amazon VPCVPC peering
VPN
connection
VPN connection
VPC peering
Before Transit Gateway …
39. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
1
3
2 4
VPC VPC
VPC
VPCVPC
B Local
A
C PCX-2
D PCX-3
E PCX-4
Destination Target
A B
C
D E
PCX-1
40. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Full mesh: 얼마나 많은 VPC Peering이 필요할까요?
n(n-1)
2
VPC x 10
41. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
10(10-1)
2
VPC x 10
Full mesh: 얼마나 많은 VPC Peering이 필요할까요?
42. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC x 10
45
Full mesh: 얼마나 많은 VPC Peering이 필요할까요?
43. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
100(100-1)
2
VPC x 100
Full mesh: 얼마나 많은 VPC Peering이 필요할까요?
44. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC x 100
4500
Full mesh: 얼마나 많은 VPC Peering이 필요할까요?
45. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Static routes per
Amazon VPC route table
100
Amazon VPC peering
connections per Amazon VPC
125
Full mesh: 그런데… Limits을 고려해야 합니다.
46. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Transit
Gateway
Amazon VPCAmazon VPC
Amazon VPCAmazon VPC
Customer
gateway
VPN
connection
With Transit Gateway …
AWS Direct
Connect Gateway
47. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Connecting to
on-premises networks:
48. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 확장 : On-Premise
Site-to-Site VPN
IPSec을 통하여 고객사 Network과 암호화된 터널을 구성
192.168.100.0/24
172.16.1.0/24
172.16.0.0/16
172.16.2.0/24
Customer
Gateway
(CGW)
On-Premise Network
VPN
Gateway (VGW)
Internet
Gateway (IGW)
Internet
13.124.64.138 (Public IP)
172.16.1.205 (Private IP)
EC2
Destination
172.16.0.0/16
0.0.0.0/0
Target
local
igw-bc3e5cd5
192.168.100.0/24 vgw-1428a424
Router
VPN Connection
(IPSec)
AZ-1
AZ-2
Subnet-1
Subnet-2
192.168.100.1
nn.nn.nn.nn
49. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 확장 : On-Premise
AWS Direct Connect
전용회선을 통하여 고객사와 직접 연결
172.16.0.0/16
EC2
Region
AZ
Subnet
Amazon
Glacier
Amazon S3
On-Premise Network
고객측 라우터/방화벽
AWS Direct Connect(DX) Location
AWS Cage
고객/파트너
Cage
고객/파트너
라우터
AWS Direct
Connect
Endpoint
VLAN 1
VLAN 2
Private Virtual
Interface
Public Virtual
Interface
Seoul Region : KINX, LG U+
Virtual Private
Gateway (VGW)
전용회선 구간
50. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 확장 : On-Premise
고객 전용의 1Gbps 또는 10Gbps Fiber Cross Connect
DX Connection당 최대 50개의 가상 인터페이스(Private and Public) 생성 및 연결 가능
필요에 따라 VIF(Virtual Interface)를 생성하고 Private Interface(VPC)및 Public
Interface(S3, DynamoDB등)에 연결
APN 파트너를 통한 Hosted Connection 사용
50M, 100M, 200M, 300M, 400M 및 500M 회선 사용 가능
Hosted Connection당 하나의 VIF(Virtual Interface)생성 및 연결
하나 이상의 VPC연결을 위하여 추가 Hosted Connection 구성 필요
고객 On-Premise Network과 VPC를 직접 연결(Private connectivity)
VPN 대비 낮은 Latency및 지속적이고 예측 가능한 성능 보장
낮은 Traffic 요금 (VPN, Internet 대비)
Direct Connect
51. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Public subnet
AWS Public 서비스와의 Connectivity
VPC Endpoints
• 인터넷을 경유하지 않고 VPC내
EC2 인스턴스와 AWS Public 서비
스를 연결
• 트래픽이 AWS를 벗어나지 않음
• 확장성, 고가용성 서비스
• 접근 통제 설정 가능
• Gateway 타입 (S3, DynamoDB)
• Interface 타입
VPC Endpoint
VPC
Internet gateway
Private subnet
EC2
Instance
EC2
Instance
VPC Endpoint
VPC
Service
Network Load Balancer
(NLB)VPC Endpoint
Amazon
Simple Storage Service (S3)
AWS
Key Management Service
52. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS PrivateLink
Type: Gateway
Type: Interface
AWS Public 서비스와의 Connectivity
VPC Endpoints
53. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Amazon API Gateway
• AWS CloudFormation
• Amazon CloudWatch
• Amazon CloudWatch Events
• Amazon CloudWatch Logs
• AWS CodeBuild
• AWS Config
• Amazon EC2 API
• Elastic Load Balancing API
• Amazon Elastic Container Registry
• Amazon Elastic Container Service
• AWS Key Management Service
• Amazon Kinesis Data Streams
• Amazon SageMaker and Amazon
SageMaker Runtime
• Amazon SageMaker Notebook Instance
• AWS Secrets Manager
• AWS Security Token Service
• AWS Service Catalog
• Amazon SNS
• Amazon SQS
• AWS Systems Manager
• Endpoint services hosted by other AWS
accounts
• Supported AWS Marketplace partner
services
More to come…
AWS Public 서비스와의 Connectivity
VPC Endpoints : Interface Type
54. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 관리
55. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 관리
VPC Flow Logs
VPC, Subnet, EC2 Instance ENI 단위로 적용 가능한 Network Packet 수집
생성되는 모든 Packet에 대한 정보를 CloudWatch Logs Group에 기록 (10분에서 15분 지연)
수집되지 않은 정보
Amazon DNS Server로의 Traffic
Amazon Windows 라이센스 인증을 위하여 Windows 인스턴스에서 생성한 Traffic
EC2 인스턴스의 Metadata를 위해 169.254.169.254와의 Traffic
DHCP Traffic
VPC의 Default Router의 예약된 IP Address로 보내는 Traffic
Traffic Mirroring and VPC Flow Logs New! : EC2 Instance의 ENI(Elastic Network Interface)단위
Guard Duty에서 사용
56. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC 관리
Who’s this?
# dig +short -x 109.236.86.32
internetpolice.co.
REJECT
UDP Port 53 = DNS
VPC Flow Logs
57. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Kinesis Firehose + Athena + QuickSight
https://aws.amazon.com/ko/blogs/big-data/analyzing-vpc-flow-logs-with-amazon-kinesis-firehose-amazon-athena-and-amazon-quicksight/
58. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CloudWatch Logs + Elastisearch + Kibana
https://github.com/awslabs/cloudwatch-logs-subscription-consumer
59. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Elastic Load Balancer (ELB)
60. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Elastic Load Balancer (ELB)
• Region내 Load Balancing 서비스
• TLS Offloading
• 다수의 가용영역(AZ)의 Target에 Traffic
분배
• EC2 instances
• Containers
• IP address
• Backend Instance에 대한 Health-Check
• 고가용성 기반의 L4/L7 서비스
• 모든 가용영역으로 Traffic 분산
• Traffic증가에 대한 자동 Scale-Out
VPC
Internet gateway
EC2
Instance
EC2
Instance
EC2
Instance
Elastic Load Balancing
(ELB)
Elastic Load Balancing
(ELB)
Auto Scaling Group
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
Auto Scaling Group
EC2
Instance
61. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ELB 유형
62. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
상세 기능 비교
기능
Application
Load Balancer (ALB)
Network
Load Balancer (NLB)
Classic
Load Balancer (CLB)
지원 프로토콜
HTTP, HTTPS
HTTP2, WebSockets
TCP/UDP New! HTTP, HTTPS
TCP, SSL
상태 확인 (Health Check)
CloudWatch 지표
로깅 (Logging) S3 VPC Flow-logs S3
영역 장애 조치 (Zonal Failover)
연결 드레이닝 (등록 취소 지연)
동일한 인스턴스의 여러 포트로 로드 밸런싱
WebSocket 지원
IP주소를 대상으로 사용
로드밸런서 삭제 보호
Amazon WAF(Web Application Firewall)
63. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
상세 기능 비교
기능
Application
Load Balancer (ALB)
Network
Load Balancer (NLB)
Classic
Load Balancer (CLB)
경로 기반 라우팅
호스트 기반 라우팅
네이티브 HTTP/2
구성 가능한 Idle Timeout 제한
교차 영역 로드 밸런싱
SSL 오프 로딩
SNI (서버 이름 표시)
고정 세션
백엔드 서버 암호화
고정 IP (Elastic IP)
탄력적 IP 주소 Elastic IP address
소스 IP 주소 보존
64. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53
65. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DNS Basic
ISP’s DNS
Resolver
www.example.com?
root nameservers
.com nameservers
example.com nameservers
www.example.com?
Nameservers of .com
www.example.com?
Nameservers of example.com
www.example.com?
10.10.10.10
10.10.10.10
66. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53
• 고가용성, Cloud기반의 Scalable한 DNS 서비스
• Global Anycast Network 사용 : 최적의 Edge Location내 Route 53서버에서 응답
• DNS Query 응답 100% 보장
• DDoS 방지를 위해 Shield Standard와 연동
• Hosted Zone
• Public Hosted Zone : Internet-facing application의 Name Resolution
• Private Hosted Zone : Amazon VPC 내 자원들의 Name Resolution을 위한
Private DNS, 동일 계정 내 / 다른 계정의 VPC에 Association
• Advanced 라우팅 정책
• Latency Based Routing (지연시간 기반)
• Geo Based Routing (지역 기반)
• Weighted Round Robin (가중치 기반)
• DNS Failover (Active-Standby) w/ Health Check
67. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53 Record Set Types
• A(주소 레코드)
• AAAA(IPv6 주소 레코드)
• CNAME(정식 이름 레코드)
• CAA(인증 기관 인증)
• MX(메일 교환 레코드)
• NAPTR(이름 권한 포인터 레코드)
• NS(이름 서버 레코드)
• PTR(포인터 레코드)
• SOA(권한 시작 레코드)
• SPF(Sender Policy Framework)
• SRV(서비스 로케이터)
• TXT(텍스트 레코드)
example.com
68. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53 Alias Record
• DNS에 대한 Amazon Route 53 만의 특정 확장명
• A 또는 AAAA 유형에 Alias 적용 가능, CNAME Record 와 유사한 방식으로 동작
• Alias Record를 생성하여 AWS 리소스에 트래픽 라우팅
• ELB 로드 밸런서 (ALB, NLB, CLB)
• 정적 웹사이트로 구성되는 Amazon S3 버킷
• CloudFront distribution
• Elastic Beanstalk 환경
• 동일한 호스팅 영역의 다른 Route 53 레코드
• Amazon API Gateway 사용자 지정 리전 API 또는 엣지 최적화 API
• Amazon VPC 인터페이스 엔드포인트
• Zone Apex (예 : example.com)을 AWS 리소스의 DNS 이름 (예 :
elb1234.elb.amazonaws.com) 매핑 가능
• DNS Query 비용 무료
69. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53 DNS Query Logging
• Public Hosted Zone에만 적용 가능
• Logging 정보
• 요청된 도메인 또는 하위 도메인
• 요청의 날짜 / 시간
• DNS 레코드 유형 (예 : A 또는 AAAA)
• DNS 쿼리에 응답한 Route 53 엣지 로케이션
• DNS 응답 코드 (예 : NoError 또는 ServFail)
• DNS Resolver IP Address
• CloudWatch Logs에 저장됨 (us-east-1)
• S3 또는 ElasticSearch에 전송하여 분석
• Expire Events After 옵션 : Retention 설정
70. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53 DNS Query Logging
Route 53
Public
Hosted Zone
CloudWatch
Logs
AWS Lambda Amazon Elasticsearch Service
Publishing
Logs
Streaming
• Lambda Function Name : LogsToElasticsearch_[ElasticSearch Cluster Name]
Streaming
Kibana
Dashboard
71. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53 DNS Query Logging
72. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Global Service Expansion
https://www.infrastructure.aws/
73. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route 53 Traffic Flow (“Mix & Match” 사용 가능)
Routing 정책 Description
Simple Routing • 단일 리소스로 트래픽 라우팅
Failover Routing • 특정 리소스가 정상일 경우 해당 리소스로 트래픽을 라우팅하고 첫 번째 리소스가
비정상일 경우 다른 리소스로 트래픽을 라우팅
• Active-Passive 장애 조치
Geolocation Routing • DNS 쿼리가 발생하는 위치를 기반으로 트래픽 라우팅
• EDNS (Extension mechanisms for DNS) 사용
Geoproximity Routing • 사용자와 리소스의 위도/경도기반으로 리소스 라우팅
• Bias를 지정하여 해당 리소스로 라우팅하는 트래픽의 양을 늘리거나 줄일 수 있음
• EDNS (Extension mechanisms for DNS) 사용
Latency Routing • 사용자들의 요청을 지연 시간이 가장 낮은 AWS 리전에서 처리
• 여러 AWS 리전에 위치하는 리소스에 대해 지연 시간 레코드를 미리 생성
(예 : 서울 IP <-> AWS Seoul Region, 서울 IP <-> AWS Singapore Region) Latency
Multivalue answer
Routing
• DNS 쿼리에 대해 다수의 값(예 : IP) 응답
• Health Check가 정상일 경우에만 해당 IP 주소 응답
Weighted Routing • 다수의 리소스를 단일 도메인 이름(example.com) 또는 하위 도메인
이름(acme.example.com)과 연결하고 각 리소스로 라우팅되는 트래픽 비율을 선택
• A/B 테스팅, Canary 배포에 활용
74. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
www.example.com
Health?
under-construction.example.com
prod.example.com
95% 5%
Y N
Route 53 Traffic Flow
Weighted w/
Health Checkprod-1.example.com prod-2.example.com
75. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Global Accelerator
76. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Local ISP Network A B C D E F
Access Application!
Accessing your application is not this straightforward!It can take many networks to reach the application
Paths to and from the application may differ
Each hop impacts performance and can introduce risk
Introducing AWS Global Accelerator
77. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Local ISP AWS Network
Accessing your web applications with AWS Global Accelerator
Adding AWS Global Accelerator removes these inefficiencies
Leverages the Global AWS Network
Resulting in improved performance
78. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Global Accelerator 특징
2
79. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Korea 공식 소셜 채널에서
발표자료 및 녹화 동영상을 확인하세요.
발표자료 다운로드
80. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
설문조사와 강연 평가에
참여해 주신 모든 분들께
랩탑 백팩을 드립니다!
여러분의 피드백을 기다립니다!
#GamesOnAWS 해시태그와 함께
여러분의 행사 소감을 SNS에 올려주세요.
81. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
입문자 트랙 강연을 듣고, AWS 공식 교육 바우처를 받으세요!
1
2
3 6층 AWS 전문가 상담부스에서 바우처 수령
3개 이상의 강연에서 입장/퇴장 스탬프 획득
AWS 입문자 트랙 입구에서 스탬프카드 수령
*강연 시작 후 10분 이내에 ‘입장’ & 강연 종료 후 ‘퇴장’
*선착순 100명 한정
*AWS 입문자 트랙 참여하신 분들께만 제공됩니다*
82. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
감사합니다.