[Cloud Computing] 6-2 Networking II

채린·2023년 10월 12일
0

2023-2클라우드컴퓨팅

목록 보기
10/13

Agency
▪ Amazon VPC 사용
        – 서비스 이용방법
        – VPC를 설정하는 데 필요한 기본 구성 요소
        – 각 구성요소별 구성
▪ 네트워크 관리

Amazon VPC

Amazon VPC Components

Amazon VPC CIDR Blocks

VPC를 생성할 때 VPC에 대해 IPv4 CIDR 블록을 지정해야 함
VPC의 넷마스크는 네트워크에서 필요한 서브넷 IP 주소를 모두 포함할 수 있을 정도로 커야 함

Again, 나중에 CIDR 블록을 변경할 수 없기 때문에 미리 계획하는 것이 중요

Amazon VPC CIDR Block Considerations

서로 통신할 VPC는 네트워킹 문제를 일으킬 수 있으므로 동일한 CIDR 블록을 가질 수 없음

Amazon VPC Default Components

VPC를 생성하면 main route table, network ACL, security group이 자동으로 생성

VPC ID and Tags

VPC ID, tag는 VPC components를 올바른 VPC에 연결하는 데 사용

VPC ID

  • VPC를 만들면 편집할 수 없는 VPC ID가 자동으로 할당
  • VPC를 식별하는 일련의 난수와 문자
  • Example: vpc-0476e890abedg995f

VPC tags

  • VPC ID가 기억하기 어려우니까 식별 가능한(identifiable)이름으로 태그 지정
  • 예:
    - vpc-0476e890abedg995f (Development VPC)
    - vpc-s897fsf9afs09h3jk30 (Production VPC)
    - vpc-nj789sedjna0halje30 (Testing VPC)

Subnets in AWS

AWS subnets: VPC 내에서 AWS 리소스를 배치할 수 있는 소규모 네트워크
서브넷 수준에서 Routing 구성 가능

  • 서브넷은 퍼블릭 또는 프라이빗 라우팅 구성을 필요로 하는 리소스를 바인딩하는 방법을 제공

Subnet Placement

VPC 서브넷이 특정 Availability Zones에 매핑됨
서브넷을 두 개 이상의 서로 다른 AZ에 생성하면 네트워크 가용성 유지 가능

Subnetting in AWS

서브넷을 생성할 때 자체 CIDR 블록이 필요한데, 이는 VPC CIDR 블록의 하위 집합(subset)
AWS는 블록 내에 5개의 IP 주소를 이미 정해둠. 이 주소는 사용할 수 없음:

10.0.0.0 → VPC CIDR block
10.0.0.1 → VPC local router
10.0.0.2 → DNA reaolution
10.0.0.3 → Future use
10.0.0.255 → Network broadcast address

Subnet Sizes

setting up 한 다음엔 바꿀 수 없음

Subnet and VPC Associations

서브넷이 생성되는 즉시 subnet ID가 제공되며, 이는 구성 요소를 연결하는 VPC ID처럼 작동

Network Gateways

network gateway: 네트워크에 액세스할 트래픽을 결정하는 통로

internet gateway

  • VPC와 인터넷 간의 통신을 가능하게 하는 horizontally scaled(수평적으로 확장되고), and highly available(가용성이 높은) VPC component

virtual private gateway
Amazon side의 site-to-site VPN connection의 VPN connector

  • VPC에 on-premises site 연결 가능

Route Tables

Route tables: VPC에서 traffic를 지시하는 매커니즘

route: 서브넷에서 네트워크 트래픽을 지시하는 규칙 집합

  • 각 route는 목적지(destination)과 목표(target)를 지정
    - destination: 트래픽이 이동할 IP addresses의 범위 (destination CIDR)
    - target: destination traffic이 전송되는 연결

Route Table Associations

VPC의 각 subnet은 route table과 연결되야 함

subnet만들 때, main route table과 연결됨

subnet이랑 route tables는 다대일 many-to-one rule
       - 하나의 서브넷에 하나의 route table, 하나의 route table엔 많은 서브넷 연결 가능

Security Groups

Security Group은 VPC에 있는 두 개의 방화벽 중 하나

  • 서브넷 level이 아닌 인스턴스 level에서 작동
  • 따라서 VPC의 서브넷에 있는 각 인스턴스를 서로 다른 Security Group 집합에 할당 가능

인스턴스에 허용되는 인바운드 및 아웃바운드 트래픽을 필터링할 수 있는 방법

Security Group Rules

Security Group에 인바운드 및 아웃바운드 트래픽을 제어하는 rule 존재

Security Group에 allow rules(허용규칙) 지정, deny rules(거부 규칙) 지정 X

Inbound rules

  • default로 Security Group에 인바운드 규칙 없음
  • 허용 예

Outbound rules

  • default로 Security Group에 모든 아웃바운드 트래픽을 허용하는 아웃바운드 규칙 존재

Security Groups’ Stateful Characteristic

Security Group는 stateful(서버가 클라이언트의 상태를 보존)

  • 모든 인바운드 규칙에 대해, 설정 안해도 outbound response가 허용됨
  • 반대로 모든 아웃바운드 규칙에 대해 unbound response가 허용됨

Choosing Security Groups

시작하는 모든 EC2 및 RDS 인스턴스에는 Security Group이 필요

Network ACLs

network ACL: VPC를 보호하기 위해 사용할 수 있는 다른 방화벽

  • subnet level에서 작동
  • 서브넷에 출입할수있는 traffic을 제어

Subnet and Network ACL Associations

VPC의 각 서브넷을 네트워크 ACL과 연결해야 함

  • 서브넷을 네트워크 ACL에 명시적으로 연결하지 않으면 서브넷이 default network ACL에 자동으로 연결

network ACL을 여러 서브넷과 연결 가능

  • 그러나 서브넷은 한 번에 하나의 네트워크 ACL에만 연결 가능

Network ACLs’ Stateless Characteristic

Network ACL은 stateless (서버가 클라이언트의 상태를 보존하지 않음)

  • 인바운드 규칙은 특정 트래픽이 서브넷에 들어오는 것을 허용하지만, 아웃바운드 응답을 자동으로 허용하지는 않음
    – ⇒ 인바운드 및 아웃바운드 규칙에 허용되는 트래픽을 지정해야 함

Network ACL Rules

deny rules을 설정하여 network ACL을 사용하여 규칙을 세분화 가능

  • 트래픽 유형 또는 특정 IP 주소 거부 가능

    네트워크 ACL을 사용하는 또 다른 common way은 트래픽이 서브넷을 떠나는 것을 막는 것

Network ACLs’ Rule Evaluation

네트워크 ACL은 가장 낮은 번호의 규칙부터 순서대로 고려되는 규칙의 numbered list을 포함

  • 해당 트래픽에 대한 첫 번째 규칙에 따라 트래픽이 허용되거나 거부됨

    나중에 필요한 곳에 새 규칙을 삽입할 수 있도록 규칙을 (10개 또는 100개와 같이) 점진적으로 생성하는 것이 좋음

Default and Custom Network ACLs

Default network ACL

  • 모든 인바운드 및 아웃바운드 트래픽 허용 (default)

Custom network ACL

  • 각 custom network ACL는 rule을 추가할때까지 모든 인바운드 및 아웃바운드 트래픽을 거부

Comparing Security Groups and Network ACLs

Security groups과 network ACLs이 협력하여 VPC 보호

network ACL은 외부 방화벽(outer firewall)

  • 트래픽이 이 방화벽을 통과하는 것이 허용되지 않으면 내부 방화벽인 Security Group에 도달할 수 없음

Deleting a VPC

VPC를 삭제하려면 먼저 VPC에 생성된 일부 리소스를 수동으로 종료하거나 삭제해야 함
일부 VPC 구성 요소가 자동으로 삭제됨

Elastic IP Address

VPC를 생성하면 해당 VPC에서 시작되는 모든 인스턴스에 private IP address 가 자동으로 할당됨

  • public IP address 할당 요청 가능

Elastic IP address: 동적 클라우드 컴퓨팅을 위해 설계된 정적 퍼블릭 IPv4 주소

  • Elastic IP 주소를 EC2 인스턴스와 연결하면 default public IP address가 바뀜
    – Elastic IP 주소를 사용하면 해당 주소를 VPC의 다른 인스턴스로 빠르게 재매핑하여 인스턴스의 장애를 숨길 수 있음

Elastic IP Address Flexibility and Costs

탄력적인 IP 주소는 Region level에서 작동

  • 생성된 지역의 모든 VPC에서 Elastic IP 주소 사용 가능

    Elastic IP 주소가 인스턴스에 분리되어 사용 안하면 비용 청구됨

NAT Gateway

NAT gateway를 사용하면 private subnet의 인스턴스를 인터넷이나 다른 AWS 서비스에 연결 가능
NAT 게이트웨이를 생성하려면 NAT 게이트웨이가 위치할 public subnet을 지정해야 함

  • 생성할 때 NAT 게이트웨이와 연결할 Elastic IP 주소를 지정해야 함
  • NAT 게이트웨이를 생성한 후, internet-bound traffic을 NAT 게이트웨이로 가리키도록 하나 이상의 개인 서브넷과 연결된 경로 테이블을 업데이트

AWS VPN

VPN 연결을 통해 VPC를 remote network에 연결하려면 VPC를 설정해야 함

AWS Direct Connect

VPN 접속의 challenges는 network performance(성능)
Direct Connect를 사용하면 네트워크 트래픽이 AWS global network에 남아 있고 public internet에 전혀 닿지 않음

  • Direct Connect를 사용하여 네트워크와 Direct Connect 위치중하나 사이에 dedicated, private network connection을 설정가능

VPC Endpoints

VPC endpoint: VPC와 supported services 간의 연결을 제공

  • internet gateway, NAT device, VPN connection, or Direct Connect connection을 사용할 필요X
  • ⇒ 당신의 VPC는 공공 인터넷에 노출X

Interface VPC endpoints

  • AWS PrivateLink는 트래픽을 퍼블릭 인터넷에 노출시키지 않고 VPC, AWS 서비스 및 사내 네트워크 간에 프라이빗 연결을 제공하는 기술

Gateway endpoints

  • VPC를 위한 인터넷 게이트웨이나 NAT device 없이도 Amazon S3 및 Amazon DynamoDB에 대한 안정적인 연결 제공

참고하기: 엔드포인트

VPC Peering

VPC peering connection: 두 VPC 간에 트래픽을 개인적으로 라우팅하는 데 사용할 수 있는 네트워킹 연결

  • 두 VPC 중 하나의 인스턴스는 동일한 네트워크 내에 있는 것처럼 서로 통신 가능
    다음을 사용하여 VPC peering connections을 만듬:
  • Your own VPCs, VPCs in other accounts, VPCs in different Regions
    route table에 규칙을 만들어 피어링 리소스를 통해 VPC가 서로 통신할 수 있도록 함

VPC Peering Restrictions

IP address rages 중복X
Transitive peering 지원X
    - VPC2와 VPC3은 연결안됨. 새로운 peering connection 필요

AWS Transit Gateway

AWS Transit Gateway를 사용해 네트워킹 모델 simplify 가능
    - 네트워크 전체에서 single connection만 생성하고 관리해야 함
    - 연결된 모든 네트워크 간에 트래픽이 라우팅되는 방식을 제어하는 허브 역할
간편한 connectivity을 통해 네트워크를 보다 간편하게 확장 가능

Other AWS Networking Service

Amazon Route 53

  • 가용성과 확장성이 뛰어난 클라우드 DNS(Domain Name System) 웹 서비스
  • www.example.com 과 같은 이름을 10.0.2.17과 같은 숫자 IP 주소로 변환

Amazon CloudFront

  • 웹 사이트, 비디오, 앱 및 API를 빠른 속도로 안전하게 전송하고 지연 시간을 단축하는 global content delivery network

Amazon API Gateway

  • 개발자가 어떤 규모로든 API를 작성, 게시, 유지, 모니터링 및 보안할 수 있도록 작업을 단순화하는 완벽하게 관리되는 서비스

Summary

▪ 우리는 아마존 VPC를 설정하는 방법을 배웠다
– VPC의 기본 구성 요소의 다양한 구성
▪ VPC의 각 구성 요소는 특정 요구사항에 맞게 네트워크 환경을 구성할 수 있는 다양한 옵션을 제공합니다
▪ Amazon VPC를 어떻게 사용할 것인지 이해하는 것이 좋은 구성을 선택하는 데 도움이 될 것입니다
▪ Amazon VPC에는 네트워크 관리를 지원하는 VPC 피어링 및 NAT 게이트웨이와 같은 추가 기능이 있습니다
▪ AWS는 사내 리소스를 VPC에 연결할 수 있도록 AWS VPN 및 AWS Direct Connect를 제공합니다

1개의 댓글

comment-user-thumbnail
2023년 10월 12일

어려워

답글 달기