• 계정 통합: 회사 또는 지불 조직 별 관리
  • IAM: 계정 별 Rule 및 정책 설정
  • AWS Directory Service: AD 관리 및 기존 AD 연결 Connector (Direct Connect)
  • AWS Config: TAG 부여한 환경 별 인스턴스가 표준준수했는지 확인

VPC는 가상 사설망

  • 고성능 컴퓨팅 또는 소규모 단일 Application에 적합
  • Private Network는 Outbound는 NAT가 반드시 있어야 하고 Internet G/W를 통해서 밖에있는 AWS 리소스에 접근해야 한다.
  • 단, S3는 별도 Private to S3 네트워크 설정이 있음
  • EC2 선택시 네트워크 대역폭 결정도 중요
  • 배치 그룹: 노드 간 성능 향상(배치 그룹은 가용영역을 확장하지 않음)
  • VPC내 두 EC2 사이에서 점보 프레임을 사용하면 패킷 별 페이로드 크기를 늘릴 수 있음
  • 고성능 컴퓨팅: 연산이 많고 복잡한 처리
  • HPC 애플리케이션 분류:

    느슨하게 결합된 그리드 컴퓨팅 Amazon EC2 Spot Instance(내가 얼마만큼만 쓰게끔 설정) 또는 Auto Scaling에 이상적

  • 정적연결은 모든 경로(IP 접두사)가 지정 필요
  • 동적 VPN(BGP)는 최대 100개의 접두사 지원

    BGP 네크워크: 이웃간 라우팅연결

  • VPC에서 나가는 네트워크는 비용 발생

Direct Connect

  • AWS Direct Connect Router

Spot Instance : 쓰다가 리소스 넘으면 20분 전에 EC2메타데이터 쪽에 공지

Cloud Formation

  • Stack 관리: 환경 설정 관리(Template) 및 자동화 도구
  • EC2 설치 시점에 자동화 도구 제공
  • sh 파일에 환경초기화 Java 설치 응용 환경 구성 및 실행 까지 가능
  • 인프라 변경사항을 소스코드 관리 수준으로 제공

Beanstalk: 응용 서버 자동 구성

  • ELB, Auto-Scaling Group, Security Group, Database 등 선택
    Log, Monitoring 등 통합 설정 –> Route53으로 Beanstalk 테스트 도메인 제공
  • 블루/그린 배포를 사용하면 서비스 중단 없이 동적 배포 가능
  • 설정: 환경 선택 -> .ebextensions: 초기화 -> 구성
  • 내부적으로 Cloud Formation 동작함
  • 초기 규모 이후 테스트에 따라 점진적 증가 가능

AWS OpsWorks

  • Chef의 AWS 형태의 제공
  • 기본 Receipes 및 Cookbook 제공: 스크립트 작성 필요
  • AWS 서비스들도 함께 초기화 가능
  • Stack - 계층 정의 - 인스턴스 할당

Docker

  • 서버 및 OS 가상화 스크립트 –> 재사용
  • 하나의 서버에 여러개의 컨테이너를 만들어서 각 컨테이너에 탑재되는 응용 프로그램의 용량을 완전하게 사용하게 함

AWS 아키텍처 센터

  • 주요 구성 아키텍트에 대한 가이드
  • 아키텍트 그릴때 쓸 수 있는 아이콘 제공

글로벌 서비스

  • Route53, CloudFront, IAM

AWS Drive

  • 이미지 사이즈 별 제공

Amazon ElastiCache

  • 클라우드에서 인 메모리 데이터 스토어 또는 캐시를 손쉽게 배포, 운영 및 확장할 수 있게 해주는 웹 서비스
  • 제공 오픈소스 서비스: Memcached, Redis
  • RDS — ElasticCache — Proxy(Auto Sacling - 최소2개, 최대2개 - HA 구성을 위함) — Application
  • Replication을 위한 대역폭도 인스턴스 규모에 꼭 고려를 해야 한다.

AWS Storage Gateway

  • S3기반 블록 스토리지: 스냅샷, 캐싱, 가상테이브 디바이스 형태로 제공
  • 실제 디스크 공간 크기과 스토리지 볼륨 크기의 일치 필요
  • 각각의 게이트웨이는 최대 32개 저장 볼륨을 붙일 수 있다.

AWS 데이터 고려

  • 정적인가?
  • 캐싱해야하나?
  • 부하가 얼마인가?
  • 파일의 실행방식이 어렇게 되나?

Auto Scaling 솔루션: Scryer

  • 반응형 확장 외에 “예측 가능한 확장”을 제공
  • 가동중단이후 수많은 사용자가 동시에 액세스 시도: 재시도 폭풍
  • 노이즈 까지 예측해서 정상적인 상황대로 Scaling 진행

T2 인스턴스 . CPU 크레딧: 기준성능이 있고 안쓸때는 크레딧을 쌓다가 성능이 필요한 상황에 크레딧을 소진 - 다 쓰면 다시 기분 성능으로 다운

초기 크레딧은 부팅 시점에 많이 소진 (서버를 끄면 크레딧은 리셋! 크레딧은 24시간이후 리셋)

  • 특징: 즉각적인 확장 기능(버스팅), 100% 까지 vCPU 확장
  • EBS SSD(GP2): 즉각적인 확장(대기시간 없음)

마이크로 서비스

  • 각각의 서비스가 자체적인 ‘티어’: 따로 처리되고 독립적인 확장
  • 언어에 구애받지 않고 각 서비스가 API 표준만 수립하고 연계
  • 분산 트랜잭션 . MSA는 내 작업이 끝나면 작업을 다른 서비스에 넘기는 구조 . 따라서 Pub/Sub 관계의 데이터 전달 과정일 중계해야 한다. . MQ 등 도구를 이해서 데이터 생산-가공 및 소비의 확장 및 분산을 설계할 수 있다.
  • 따라서 각 마이크로 서비스의 모든 코드를 동일한 수준의 성숙도를 유지 . 소스 및 구조 변경이 필요할 경우 기존 서비스를 수정하지 말고 새로 만들어라.. . 상태 비저장 모드로 처리할 것: 개별적인 상태에 초점을 맞추지 마라 . 비동기 방식의 처리를 기본으로 하라

Blue-Green 배포 . 다운타임 없이 새 버전 전환 . 모든 사용자를 전환하기 전에 새 버전이 올바른지 확인: 한꺼번에 사용자의 서비스를 옮기지 않고 비중을 배분 . 블루: 구버전, 그린: 신버전 . Route53의 엔드포인트를 조절 (DNS Cache의 TTL을 1분 이내로 조절) . ASG + Route53 + CloudFormation . 데이터 변경사항은 어쩔 수 없음…

FS

  • 내부적으로만 쓰일 수 있는 File System
  • AZ지정 - Subnet 지정 - NFS 포트 오픈

AWS Kinesis : AWS에서 사용하는 Flume 같은 것

AWS WAS(Web Application Firewall) . DDOS: 슬로우로리스 (클라이언트 Stream Write 자체를 엄청나게 느리게 함으로서 Read Timeout 기회를 뺏는 것) . Application 앞단 Firewall: 규칙을 정하고 방화벽처럼 동작하게 가능 . ELB를 쓴다면 기본적인 보안 공격을 완화할 수 있는 방법들을 제공 . WAF와 CloudFront를 조합하여 어지간한 공격 방어(API Gateway 도 마찬가지) Route53 - WAF 또는 Route53 - API Gateway

피크타임에만 몰리는 서버의 경우는 버스팅(크레딧)을 제공하는 T2 EC2를 사용하는 것이 더 나을 수 있다.

  • T2는 Auto Scaling Group에 넣지 않는 것이 더 나을 수 있다.

Simian Army 넷플릭스 서비스 자동 장애발생 도구: 상용 에서 HA 테스트 목적 - 운영의 고도화 .Chaos Monkey - 특정 인스턴스 종료 .Chaos Gorilla - 특정 AZ 다운 .Chaos Kong - 특정 Region 다운

암호화 .기본 원칙: 대칭키 .마스터키 -> 데이터키 –> 암복호화 .데이터키로 암호화된 데이터와 마스터키로 암호화된 데이터키를 함께 저장: AWS 내부 스토리지

  • AES256방식으로 암호화, 각 키는 Region 별 저장 .HSM: 암호화작업 및 키 스토리지용 하드웨어 디바이스 제공 .Glacier는 기본적으로 데이터 암호화, S3와 Redshift는 선택사항 .S3 암호화 (데이터 & 암호화 키)
  • 고객 제공 키를 이용해서 암호화
  • S3에서 관리되고 보호되는 마스터키를 이용한 암호화
  • AWS KMS에서 제공 및 중앙 관리되는 키를 이용한 암호화 .Redshift
  • 4단계 암호화: Region Master Key -> Cluster Master Key -> Database Key - Data Key –> Data Encrypt

.HTTPS 앞단 ELB, Cloudfront에서 직접 HTTPS 인증서 처리를 대신 할 수 있다. . 웹서버 오프로드 감소

Internet G/W – Public ELB (이친구를 통해서만 외부 연결) —> Private ELB

시험에는 EC2 인스턴스 별 네트워크 성능 꼭 나온다..

EBS는 Multi-thread에 대해서 단일 I/O로 병합하여 처리

  • PIOPS : 용량/성능 중점 선택이 가능한 고가용 디스크
  • gp2 타입: 즉각적인 확장 기능(버스팅) 제공 - T타입 EC2처럼 크레딧 방식
  • AZ내에서 Mirroring 가능

디스크 성능 . Hadoop같은 분석용 스토리지는 i2타입같은 내부 디스크를 사용하되 고성능 I/O를 제공하는 인스턴스를 휘발성으로 사용 . 스트라이핑 . RAID를 사용(mdadm, RAID 0/1)

  • RAID 5또는 6이나 패리티를 사용하는 RAID는 사용을 피할 것! . Instance Store를 EBS에 미러링 … –> 물론 복구과정은 필요

GET 버킷 작업

  • 버킷 객체 앞단에 키 값의 해싱 값을 적용: 각 파티션 내에서 잘 분배 되도록

“NAT 자체의 병목 발생 가능성 고려” “Amazon S3 엔드 포인트” “EBS Snapshot는 별도 네트워크 구간으로 S3 저장”

셤 AWS 사이트 샘플문항의 답은 일본어 버전에만 있다 + 공식교재