본문 바로가기

AWS/AWS Architecting

[AWS Architecting]엣지 서비스

반응형

0. AWS 엣지 컴퓨팅 서비스

AWS 에지 컴퓨팅 서비스는 필요에 따라 엔드포인트에 가깝게 데이터처리 및 분석 기능을 이동하는 인프라와 소프트웨어를 제공합니다.

AWS 데이터 센터 외부, 고객 소유 디바이스에 AWS 관리형 하드웨어 및 소프트웨어를 배포하는 것이 포함됩니다.


다음과 같이 위치와 관련된 AWS 엣지 서비스를 사용하여 일관된 하이브리드 경험을 위해 클라우드를 확장할 수 있습니다.

 

AWS 엣지 로케이션 - AWS 네트워크 백본을 통해 AWS 리전에 연결
- Amazon CloudFront, AWS WAF AWS Shield가 사용되는 서비스
AWS 로컬 영역 - AWS 클라우드의 확장
- 인구가 많은 산업 중심지와 가까운 곳에 배치
AWS Outposts - 온프레미스나 자체 데이터 센터에서 일부 AWS 서비스를 실행
AWS Snow 패밀리 - 오프라인 스토리지를 제공
- 스토리지를 사용하여 AWS 리전에 데이터를 재전송


동일한 인프라, 서비스, API 및 도구를 사용하여 일관된 환경을 구축할 수 있습니다

 

 

1. AWS용 DNS 솔루션

https://docs.aws.amazon.com/ko_kr/Route53/latest/DeveloperGuide/monitoring-health-checks.html

 

를 이용한 상태 확인 모니터링 CloudWatch - Amazon Route 53

1개 이상의 상태 확인을 선택하면, 그래프는 각 상태 확인을 별도의 컬러 코드 라인으로 표시합니다.

docs.aws.amazon.com

가용성과 확장성이 우수한 클라우드 DNS 웹서비스인 Amazon Route 53를 사용할 수 있습니다.

 

Route 53DNS, 도메인 이름 등록 및 상태 확인 기능을 제공합니다.

이 서비스는 example.com과 같은 도메인 이름을 컴퓨터의 상호 연결에 사용되는 숫자 IP 주소로 변환합니다.
Route 53를 사용하 도메인 이름을 구매관리하고 도메인에 대한 DNS 설정을 자동으로 구성할 수 있습니다.


Route 53는 Amazon EC2 인스턴스, ELB 로드밸런서 또는 Amazon S3 버킷 등 AWS에서 실행되는 인프라에 사용자 요청을 효율적으로 연결합니다.

사용자를 AWS 외부의 인프라로 라우팅하기 위해 Route 53를 사용할 수도 있습니다


Amazon CloudWatch 경보를 구성하여 엔드포인트 상태를 확인할 수 있습니다.

DNS를 상태 확인 지표와 결합하여 정상 엔드포인트를 모니터링하고 해당 엔드포인트로 트래픽을 라우팅합니다

 

호스팅 영역:

호스팅 영역레코드의 컨테이너입니다.

레코드에는 특정 도메인(예: example.com)과 그 하위 도메인(예: dev.example.com, mail.example.com)의 트래픽을 라우팅하는 방식에 대한 정보가 포함됩니다.

호스팅 영역과 해당 도메인의 이름동일합니다

 

퍼블릭 호스팅 영역 - 인터넷에 연결된 리소스로 라우팅
- 인터넷 이름 해석
- 글로벌 라우팅 정책 사용
프라이빗 호스팅 영역 - VPC 리소스로 라우팅
- VPC 내부에서 이름 해석
- 전달 규칙 및 엔드 포인트를 사용하여 온 프레미스 프라이빗 영역과 통합

 

 

라우팅 정책:

단순 라우팅 정책 리소스 하나에 트래픽 라우팅(웹서버 등)
장애 조치 라우팅 정책 액티브-패시브 장애 조치를 구성하려는 경우에 사용
- 지정한 리소스(웹 서버 등)의 상태
- 다른 상태 확인의 상태
- CloudWatch 경보의 상태
지리적 위치 라우팅 정책 사용자의 위치를 기준으로 트래픽을 라우팅하려는 경우에 사용
지리 근접 라우팅 정책 리소스 위치를 기반으로 트래픽을 라우팅하고 선택적으로 한 위치의 리소스에서 다른 리소스로 트래픽을 이동하려는 경우에 사용
지연시간 라우팅 정책 여러 AWS 리전에 리소스가 있고, 더 짧은 왕복 시간으로 가장 짧은 지연시간을 제공하는 리전으로 트래픽을 라우팅하려는 경우에 사용
다중응답 라우팅 정책 Route 53가 무작위로 선택된 최대 8개의 정상 레코드로 DNS 쿼리에 응답하도록 하려는 경우에 사용
가중치 기반 라우팅 정책 트래픽을 지정한 비율로 여러 리소스로 라우팅하는데 사용

레코드를 생성할 때 라우팅 정책을 선택하게 되는데, 이는 Amazon Route 53가 쿼리에 응답하는 방식을 결정합니다.

 

 

2. 콘텐츠 전송 네트워크 서비스

Amazon CloudFront 서비스는 AWS 클라우드의 콘텐츠 전송 네트워크(CDN)입니다.

이 서비스는 전 세계의 엣지 상호 접속 위치(POP)에 데이터를 캐시 합니다

 

콘텐츠전송 네트워크(CDN)에서는 웹 콘텐츠의 캐시 된 사본을 고객에게 제공하기 위해 엣지 로케이션의 글로벌 네트워크를 사용할 수 있습니다.
응답시간을 줄이기 위해 CDN은 고객 또는 발신 요청 위치에 가장 가까운 엣지 로케이션을 사용합니다.

가장 가까운 엣지 로케이션 사용 시에는 웹 자산이 캐시에서 제공되므로 처리량이 크게 증가합니다.

동적 데이터의 경우, 다수의 CDN이 오리진 서버에서 데이터를 검색하도록 구성할 수 있습니다.

 

엣지 로케이션에 유지할 정도로 자주 액세스 되지 않는 콘텐츠가 있을 때는 리전 엣지 캐시를 사용합니다.

이러한 콘텐츠는 리전 내 엣지 캐시에 수집되므로 오리진 서버에서 해당 콘텐츠를 검색할 필요가 없습니다.

 

Amazon CloudFront:

Amazon CloudFront는 웹사이트, API, 동영상 콘텐츠, 기타 웹 자산의 전송을 가속화하는 글로벌 CDN 서비스입니다.

다른 AWS 제품과 통합하여 사용하면 쉽고 빠르게 콘텐츠를 전송할 수 있습니다.


CloudFront는 지연시간 및 처리량을 위한 네트워크 계층 최적화와 함께 캐시 동작 최적화를 위한 강력한 유연성을 제공합니다. 

CDN은 기본적으로 멀티티어 캐시를 제공합니다 

멀티티어 캐시에 포함되어 있는 리전 엣지 캐시는 객체가 엣지에 아직 캐싱 되어있지 않은 경우 지연시간을 단축하고 오리진 서버의 부하를 줄입니다.

CloudFront는 WebSocket 프로토콜을 통한 실시간 양방향통신을 지원하여 통신 애플리케이션에 유용합니다.

이 영구 연결을 통해 클라이언트와 서버가 반복적인 연결로 인한 오버헤드 없이 서로 실시간 데이터를 전송할 수 있습니다.

 

이처럼 CloudFront에서 WebSocket이 지원되므로 다른 동적 및 정적 콘텐츠와 동일한 경로를 통해 WebSocket 트래픽을 관리할 수 있습니다.

CloudFront를 사용하면 CloudFront가 기본 제공하는 AWS Shield 및 AWS WAF와의 통합을 통해 DDoS 보호를 활용할 수 있습니다.

 

엣지 캐싱:

엣지 로케이션에서 데이터를 캐시 하여 지연시간을 단축하고 보안을 강화합니다.

CloudFront 캐싱 단계는 다음과 같습니다:

1. 요청이 최적의 엣지 로케이션으로 라우팅
2. 캐시 되지 않은 콘텐츠가 오리진으로부터 검색
3. 오리진 콘텐츠가 캐싱을 위해 CloudFront 엣지 로케이션으로 전송
4. 데이터가 사용자에게 전송

 

콘텐츠가 이미 캐시 되어있으며 콘텐츠의 유지시간(TTL)이 만료되지 않았으면 2~3단계를 건너뜁니다.

 

 

CloudFront  캐싱 개선:

https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/ConfiguringCaching.html

 

캐싱 및 가용성 최적화 - Amazon CloudFront

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

애플리케이션 성능을 최적화하도록 CloudFront를 구성하는 작업은 다음과 같습니다:

 

AWS의 컨텐츠 전송 성능 개선 기능
TCP 최적화 기능 - 네트워크에서 현재 트래픽을 전송 중인 속도와 현재 왕복 지연시간을 관찰
- 그 후 해당 데이터를 입력으로 사용하여 성능을 자동으로 개선
TLS 1.3 지원 기능 필요한 왕복 수가 적어 더 간편한 핸드 셰이크 프로세스를 통해 더욱 우수한 성능을 제공
동적 콘텐츠 배치 기능 - ELB 로드밸런서나 EC2 인스턴스에서 웹 애플리케이션 또는 API와 같은 동적 콘텐츠를 제공
- 콘텐츠의 성능, 가용성 및 보안을 개선

 

사용자가 CloudFront 배포 구성 조정
캐싱 전략 정의 - 적절한 TTL을 선택
- 쿼리 문자열 파라미터, 쿠키 또는 요청 헤더 등을 기준으로 캐싱을 고려
캐시 적중률 개선 - CloudFront 콘솔에서 적중, 미스, 오류 상태의 뷰어 요청 비율 확인 가능
- CloudFront 캐시 통계 보고서에 수집된 통계를 기준으로 하여 배포 변경 가능
CloudFront 
Origin Shield 사용
- 리전 엣지 캐시와 오리진 간에 캐싱 계층을 더 추가할 수 있음
- 뷰어가 여러 지역의 리전에 분산되어 있거나 온프레미스 오리진에 용량 또는 대역폭 제약조건이 적용되는 경우에 유용

 

CloudFront 구성 순서:

1. 오리진 선택(원본)

   - 전 세계의 CloudFront 엣지 로케이션에서 배포됨

   - 예: S3 버킷, ELB 로드 밸런서, 사용자의 HTTP 서버 및 온프레미스 서버 등

2. 배포 생성

   - 요청하는 파일을 가져올 오리진 서버에 대해 CloudFront에 알림

   - CloudFront에서 세부 사항 지정(모든 요청을 기록할지, 배포를 만들자마자 활성화할지 등)

3. (선택사항)함수 연결, AWS WAF 웹 ACL 연결, 도메인 이름 할당 등

   - 콘텐츠를 제외한 배포의 구성을 모든 에지 로케이션에 전송

 

 

 

3. 퍼블릭 애플리케이션 보호

AWS WAF, AWS Shield 등의 서비스가 DDoS 및 기타 공격으로부터 사용자를 보호합니다.

 

Shield Standard에서는 계층 4 및 계층 3 공격을 자동으로 완화하는 기술이 기본 제공됩니다.

Shield Advanced에서는 복잡한 대규모 DDoS 공격의 실시간 탐지 및 완화 기능이 추가로 제공되며, 웹 애플리케이션 방화벽인 AWS WAF와 통합도 가능합니다

그리고 AWS WAF는 규칙과 ACL을 사용하여 애플리케이션 계층(계층 7)을 보호합니다.

 

OSI 계층 공격:

호스트 계층 (7)애플리케이션 HTTP 플러드, DNS 쿼리 플러드 애플리케이션 계층 공격 WAF Shiled
Advanced


(6)프레젠테이션 SSL 부정 사용 프레젠테이션 계층 공격
(5)세션 - - -
(4)전송 SYN 플러드 인프라 계층 공격 Shield
Standard
미디어 계층 (3)네트워크 UDP 리플랙션 공격
(2)데이터 링크 - - - -
(1) 물리 - - - -

 

AWS WAF:

https://docs.aws.amazon.com/ko_kr/waf/latest/developerguide/getting-started.html

 

AWS WAF 시작하기 - AWS WAF, AWS Firewall Manager, 및 AWS Shield Advanced

콘솔은 Rule visual editor(규칙 시각적 편집기)와 Rule JSON editor(규칙 JSON 편집기)를 제공합니다. JSON 편집기는 웹 ACL 간에 구성을 쉽게 복사할 수 있게 해주므로 여러 수준의 중첩이 있는 규칙 집합과

docs.aws.amazon.com

AWS WAF는 일반적인 웹 악용과 봇으로부터 웹 애플리케이션이나 API를 보호하는 데 도움이 되는 웹 애플리케이션 방화벽입니다.

 

AWS WAF에서는 트래픽이 애플리케이션에 수신되는 방식을 제어할 수 있습니다.

SQL 명령어 삽입(SQLi) 또는 크로스 사이트 스크립팅(XSS)과 같은 일반적인 공격 패턴을 차단하고 봇 트래픽을 제어하는 보안 규칙을 생성하면 됩니다.

호환 AWS 서비스로 전달되는 HTTP(S) 요청도 모니터링할 수 있습니다.


슬라이드의 다이어그램에서는 클라이언트가 지원되는 5개 서비스인 CloudFront, Application Load Balancer, Amazon API Gateway, AWS AppSync Amazon Cognito 사용자풀 중 하나로 인바운드 요청을 전송합니다. 트래픽은 웹 액세스 제어 목록(웹 ACL)을 기준으로 평가된 후 대상 위치로 전송됩니다. 한 번도 거부되지 않고 웹 ACL을 모두 통과하는 트래픽은 대상 위치 AWS 서비스로 전송됩니다.

 

AWS WAF 액세스 제어 구성 요소:

웹 ACL - AWS 리소스 집합을 보호
- 규칙을 추가하여 웹 ACL을 생성하고 보호 전략을 정의
규칙 웹 요청을 검사하기 위한 기준을 정의하고 이 기준과 일치하는 요청을 처리하는 방법을 지정
규칙 그룹 - AWS AWF용 AWS 관리형 규칙 및 AWS Marketplace 판매자는 사용할 관리형 규칙 그룹을 제공함
- 사용자 고유의 규칙 그룹도 정의 가능
규칙 구문 - AWS WAF에서 웹 요청을 검사하는 방법을 지시하는 규칙의 일부
- AWS WAF가 웹 요청에서 검사 기준을 찾으면 웹 요청이 스테이트먼트와 일치한다고 표현
IP 집합 - 규칙 문서 함께 사용할 IP 주소 및 IP 주소 범위의 모음을 제공
   (IP 집합은 AWS 리소스)
정규식 패턴 집합 - 규칙 문서 함께 사용할 정규 표현식 모음
  (정규식 패턴 집합은 AWS 리소스)
모니터링 및 로깅 - CloudWatch를 사용하여 웹 요청, 웹 ACL 및 규칙을 모니터링
- 로깅을 활성화하여 웹 ACL에서 분석한 트래픽에 대한 자세한 정보 수집 가능
- 로그를 전송할 위치를 CloudWatch Logs, Amazon S3, Amazon Kinesis Data Firehose 중에서 선택 가능

 

AWS Firewall Manager:

AWS Firewall Manager는 AWS WAF 및 Amazon VPC 보안 그룹의 관리 및 유지관리 태스크를 단순화합니다. 

AWS WAF 방화벽 규칙, Shield 보호 및 Amazon VPC 보안 그룹을 한 번만 설정하면 됩니다. 

새로운 리소스를 추가하는 경우에도 서비스가 계정과 리소스에 규칙과 보호를 자동으로 적용합니다.


Firewall Manager에서는 다음과 같은 작업을 수행할 수 있습니다:

- 대규모로 규정 준수를 관리

- 여러 애플리케이션과 계정에서 간편하게 규칙 관리

- 자동으로 새 계정 검색 및 규정 미준수 이벤트 수정

- AWS Marketplace에서 AWS WAF 규칙을 배포

- 모든 계정에서 신속하게 공격에 대응


Firewall Manager를 사용하는 경우, 새로운 애플리케이션이 생성될 때 새로운 애플리케이션 및 리소스가 처음부터 공통 보안규칙 세트를 준수하도록 할 수 있습니다. 

단일 서비스를 통해 방화벽 규칙을 수립하고, 보안정책을 생성하며, 전체 AWS 인프라에 걸쳐 일관된 계층형 방식으로 이를 적용할 수 있게 해줍니다.

 

Firewall Manager 사용 조건은 전체 기능을 갖춘 AWS Organizations를 활성화하고, AWS Config를 사용하고, Firewall Manager 관리자로 할당된 사용자가 있어야 합니다.

 

Firewall Manager는 다음과 같은 사례에 유용합니다:

- 계정 및 리소스의 수가 많음

- 지속적으로 새 애플리케이션이 생성됨

- 조직 전체의 위협에 대한 중앙 집중식 가시성

 

 

 

4. 온프레미스에서 실행되는 서비스

지연시간 및 레지던시 여부를 충족할 수 있도록 AWS Outposts 랙이나 Outposts 서버를 요청할 수 있습니다.

비용 최적화를 고려하고 요구사항을 확인한 후에 사무실이나 데이터 센터에 Outposts 사이트를 생성해야 합니다

 

AWS Outposts 랙 Outposts 서버
다양한 Outposts 구성 중에서 선택 가눙 랙보다 소규모로 하드웨어 주문 가능
42U 표준 랙 96개까지 확장가능  고객에게 직접 배달
여러 Outposts 랙 간에 컴퓨팅및 스토리지 용량 풀링 고객의 온사이트 담당자나 서드파티 공급업체가 설치
  Outposts 서버가 고객의 네트워크에 연결되면
AWS가 컴퓨팅 및 스토리지 리소스를 원격으로 프로비저닝

 

Outposts를 사용하면 AWS 클라우드를 온프레미스 데이터 센터로 확장할 수 있습니다.

Outposts는 다양한 폼팩터로 제공되며 각각의 별도의 요구사항이 있습니다.

https://docs.aws.amazon.com/ko_kr/outposts/latest/userguide/outposts-requirements.html

 

전초 기지 사이트 요구 사항 - AWS Outposts

가장 좋은 방법은 IP67 플러그를 IP67 콘센트와 메이트하는 것입니다. 그렇게 할 수 없는 경우 IP67 플러그가 IP44 콘센트와 짝을 이루게 됩니다. 결합 된 플러그와 소켓의 등급은 낮은 등급 (IP44) 이

docs.aws.amazon.com

 

Outposts 랙을 주문할 때 다양한 Outposts 구성 중에서 선택할 수 있습니다.

 

컴퓨팅 및 스토리지 Amazon EC2, Amazon EBS, Amazon S3
네트워킹 Amazon VPC, ALB
데이터베이스 Amazon RDS. Amazon ElastiCache
컨테이너 Amazon ECS, Amazon EKS

 

 

 

 

 

 

 

 

 

Architecting on AWS 7.4.6 (KO): Student Guide  참고

반응형