AWS 용어정리 Part02
VPC 공유
- 여러 AWS 계정에서 Amazon EC2 인스턴스, RDS, Redshift, Lambda 함수 등과 같은 애플리케이션 리소스 공유할 수 있는 중앙관리형 VPC 생성가능
- Organizations 의 동일한 조직에 속한 다른 계정(참여자)과 한개 혹은 여러개의 서브넷 공유 가능
- 서브넷 공유후 애플리케이션 리소스 보기, 생성하기, 수정, 삭제 가능
- 참여자는 다른 참여자나 VPC 리소스 소유자의 리소스 접근 불가
- 높은 상호 연결성
- 신뢰 경계내에 있는 애플리케이션에 대해서 VPC내 임시 라우팅 가능
- 생성하는 VPC 개수 줄고, 청구 및 액세스 제어에 별도의 계정 사용 가능
- AWS Private Link, AWS Transit Gateway, Amazon VPC 피어링 등의 연결을 통해 공유된 VPC 를 상호 연결, 토폴로지 단순화
- 공유 서브넷의 VPC 소유자
- 서브넷, 라우팅테이블, 네트워크 ACL, 피어링 연결, 게이트웨이 엔드포인트, 인터페이스 엔드포인트, Route 53 Resolver 엔드포인트, 인터텟 게이트웨이, NAT 게이트웨이, 가싱 프라이빗 게이트웨이 및 Transit Gateway 연결등 VPC 수준의 모든 리소스 생성, 관리, 삭제할 책임
- 참여자가 생성한 보안그룹, 리소스 수정, 삭제 불가
- 문제해결, 감사를 위해서 참여자의 리소스에 세부정보 볼 수 있음
- 트래픽 모니터링, 문제해결을 위해 VPC, 서브넷, ENI 수준에서 흐름 로그 구독 생성 가능
- 공유 VPC 참여자
- EC2인스턴스, RDS, LB 등 리소스 생성, 관리, 삭제 가능
- 다른 참여자의 리소스 볼 수 없음
- 라우팅 테이블, 네트워크 ACL, 서브넷 등을 포함한 세부정보 볼수 있음, 수정불가
- 자신이 소유한 인터페이스에 대해서만 흐름 로그 구독 생성 가능
API Gateway
- 개발자가 API 를 손쉽게 게시, 유지관리, 모니터링 및 보호할 수 있도록 지원, 완전관리형 서비스
- AWS Management Console 에서 클릭 몇번으로 다음 서비스에 접근 가능
- EC2
- ECS
- Elastic Beanstalk
- Lambda 등
- 트래픽 관리, 권한 부여 및 엑세스 제어, 모니터링, API 버젼관리를 비롯해 최대 수십만 건의 동시 API 호출 수락 및 처리
- 최소요금, 시작비용 없음
- HTTP API, REST API: 수신한 API 호출과 전송한 데이터 양에 대해서만 요금 지불
- WebSocket API: 전송, 수신 메시지, 사용자/디바이스가 WebSocket API 에 연결한 시간에 대해서만 요금 지불
- API Gateway 제한: 백엔드 서비스가 성능 및 가용성을 유지할 수 있도록 API 트래픽을 제어하게 해준다.
- 글로벌, 서비스 호출별 등 여러 수준에서 제한 설정가능
- 표준속도, 버스트 속도에 대해서 제한 설정가능
- 제한을 넘은 요청은 429 HTTP 응답을 수신
- API Gateway 캐시를 프로비저닝, 기가바이트 단위로 크기 지정으로 캐싱 추가 가능
- 캐시는 API 의 특정 스테이지에 대해 프로비저닝됨
- 성능개선, 백엔드 전송 트래픽 줄일 수 있음
- 캐시 키가 구축되는 방법, 각 메서드에서 저장되는 데이터 TTL을 제어 할 수 있음
- 관리형 API 사용, 스테이지 캐시를 무효화 가능
AWS Snowball
- AWS 컴퓨팅 및 스토리지 기능을 엣지 환경으로 가져오고, AWS와 데이터를 주고 받을 수 있도록 안전하고 견고한 디바이스를 사용한다.
- 스토리지 + 선택적으로 EC2, AWS IOT Greengrass 컴퓨팅이 구성된 Snowball Edge 디바이스를 배송 가능한 안전하고 강화된 케이스에 담아 제공
- 마이그레이션, 단기 데이터 수집, 장기 배포 등 기계 학습, 데이터 분석, 프로세싱 및 스토리지를 위한 클라우드 기능 이용가능
- 인터넷 연결 여부와 상관없이 작동, 원격 환경에서 사용 가능하도록 설계
- 디바이스 종류 2가지
- Snowball Edge Compute Optimized: 고성능 워크로드에 적합
- Snowball Edge Storage Optimized: 더 많은 스토리지, 대규모 마이그레이션, 용량중심워크로드에 적합
- 블록볼륨, S3호환 객체 스토리지를 위한 80TB의 HDD 용량, 블록 볼륨을 위한 1TB SSD 제공
- sbe1(C5와 동급)를 지원하기 위해 40개 vCPU, 80Gib의 메모리 제공
- Snowball 장치는 서비스 중단
- Snowball Edge Storage Optimized가 데이터 전송의 기본 장치
- Glacier로 바로 전송은 안되며, S3 –> Glacier로 거쳐가야함 (생명주기 정책이용)
Code Deploy
- EC2 인스턴스, 온프레미스 인스턴스, 서비리스 Lambda 함수 또는 Amazon ECS 서비스로 애플리케이션 배포를 자동화 하는 배포 서비스이다.
- 다음 요소를 포함하여 애플리케이션 컨텐츠를 무한 배포 가능
- Code
- Serverless AWS Lambda 함수
- 웹 및 구성파일
- Executables
- 패키지
- 스크립트
- 멀티미디어파일
- Code Deploy는 서버에서 실행되고, S3버킷, GitHub 리포지토리 또는 Bitbucket 리포지토리에서 저장되는 애플리케이션 콘텐츠를 배포할 수 있습니다.
- 서버리스 람다함수 배포가능
- 기존 코드 변경 필요 없음
AWS Identity and Access Management(IAM) 서비스에 대한 권장 지침
- AWS 계정 루트 사용자 액세스 키 잠금
- 개발 IAM 사용자 만들기
- 그룹을 사용하여 IAM 사용자에게 권한을 할당하기
- 최소 권한 부여
- AWS 관리형 정책으로 권한 사용 시작
- 인라인 정책 대신 고객 관리형 정책 사용
- 액세스 레벨을 이용한 IAM 권한 검토
- 사용자에 대한 강력한 암호 정책 구성
- MFA 활성화
- Amazon EC2 인스턴스에서 실행되는 애플리케이션에 역할 사용
- 역할을 사용하여 권한 위임
- 액세스 키를 공유하지 않기
- 자격 증명을 정기적으로 교체
- 불필요한 자격 증명 삭제
- 보안 강화를 위해 정책 조건 사용
- AWS 계정의 활동 모니터링
- IAM 모범 사례에 대한 동영상 프레젠테이션