SAP 문제 정리
- CloudFormation의 circular dependency란?
- CloudFormation에서 실제 리소스 이름은 스택+리소스의 논리적 이름
- Dynamo DB에서 projection이란 second index에 테이블의 attributes를 복사하는 것이다.
- Amazon Cognito의 quiet push notification 이란 유저의 디바이스의 응용 프로그램에서 보내는 push 메세지이지만 유저에게는 보이지 않는 메세지를 뜻한다.
- Memcached의 포트는 11211, Redis의 포트는 6379이다.
- AutoScaling에서 AWS 리소스를 유저가 직접 조정해서 스케일 아웃하는 방법은 desired capacity를 이용하는 방법이다.
- i/o 속도가 실패 상황보다 중요할 경우, RAID 0을 사용한다.
- HSM을 사용할때, CloudHSM Instance와 꼭 같은 VPC에 위치 해야하는가?
- 아니다, 하지만 HSM client가 돌아가는 서버나 인스턴스는 반드시 HSM에 접근가능한 네트워크에서 돌아가야 한다.
- AWS Direct Connect를 위해서는 Virtual Interface 를 만들고 BGP를 설정해야한다.
- AWS Direct Connect 는 Ethernet standard로 1G나 10G의 single mode fiber-optic cable을 사용한다.
- Elastic Cache는 인스턴스 테넌시가
dedicated
로 설정된 VPC에서 시작할 수 없습니다.
- 가끔 사용되지만 시스템에서 중요한 20개의 앱을 AWS로 전환을 하려고 한다. Java와 Node.js로 작성된 앱은 인스턴스 클러스터에 배포되어있다. 비용을 줄이고, 하나의 배포를 하려고 한다. 비록 다른 때에도 사용이 되지만, 대부분은 한달 중 부분적으로 제한된 동시접속자만 사용한다. 평균적으로 프로그램은 1GB의 메모리를 사용하고, 피크때에는 2.5GB까지 사용한다. 자바로 이루어진 빌링 리포트 기능이 가장 중요하고 주로 몇몇 데이터 소스에 접근하고 몇시간 동안 돌아간다. 가장 비용 최적화된 방법은?
- ECS 컨테이너를 사용해서 오토스케일링 설정을 메모리 75%사용으로 두는것. 그리고 ECS테스크를 에플리케이션 별로 만들어서 스케일링을 한다. 서비스는 클라우드 워치를 사용해서 모니터링한다.
- Elastic Beanstalk에 각각의 에플리케이션을 배포하고, 모든 리퀘스트가 충분한 리소스가 있는지 보고, 클라우드 워치로 감시하는 방식은 비용 최적화가 아니고, 하나의 배포 포인트를 사용하지도 않기 때문에 정답이 아님.
- SNS는 매분의 데이터를 전송할 수 없다. 5분 간격까지만 가능. 반면, CloudWatch는 매분의 데이터도 전송 가능.
- VPC에 RDS설정을 하려고 한다. 인터넷으로 RDS에 접속하길 희망할때 필요 없는 시나리오는?
- RDS를 반드시 외부 IP가 있는 서브넷 그룹에 설정한다. (X, NAT사용으로 할 수 있음)
- CloudFormation에는 샌드박스나 테스트 구역이 없다. 만들면 돈이 나간다. 템플릿이 잘 동작하는지 확인하는 방법은 스택을 만드는 방법이 있다.
- 만약 5분마다 S3에 데이터 파일을 저장하고, 각각의 파일은 크론잡으로 EC2위에서 돌아가는 스크립트를 통해서 RDS에 가공되어 로딩된다. 이때 크론잡은 24시간 마다 한번씩 15분에서 30분 정도 돌아간다. 데이터를 즉각적으로 요청하자마자 접근하고 싶다면 어떻게 바꾸어야 하는가?
- S3 이벤트 알람을 이용해서 S3로 옴길때 AWS Lamda function을 발동시킨다.
- Redshift의 dw2.8xlarge 노드를 몇개로 나눌수 있는가? 32
- AMI를 친구와 나누기 위해서는 친구의 AWS account를 알면 나눌수 있다.
- Window File server를 지원하는 AWS 서비스는 Amazon Fx이다.
- Describe Table이라는 명령이 Dynamo DB의 secondary index의 리스트를 조회 할 수 있는 명령이다.
- AMI를 30일 마다 스캔하고, 보안 점검을 하는 방법
- 람다 함수로 자동화 룰를 만든다. 증명된 AMI를 AWS System Manager Parameter Store에 저장한다. Amazon EventBridge는 AWS System Manager Automation document를 모든 EC2에 30일마다 발생시킨다.
- Amazon Inspector를 이용해서 CVE 평가를 EC2에 실행해 AMI를 스캔한다.
- EBS optimized instance 를 provisioned PIOPS 볼륨과 사용할때, bandwith 경험을 판단하기 위해서 어느 I/O 부분을 사용하는가?
- Standard S3 API 를 이용해서 EC2 스냅샷을 복원 할 수 있나?
- 아니다. 스냅샷은 EC2 API를 이용해서만 가능하다.
- CloudFormation에서 UPDATE_ROLLBACK_FAILED 상태일때는 UpdateStack 명령이 거부된다.
- ENI가 실패함에도 보장을 받기 위해서는 secondary private ip가 내부 트래픽을 위해서 필요하다.
- security group을 두개를 만들어서 하나의 인스턴스에 연결했다. 하나는 모든 0.0.0.0/0으로부터 온 포트 80번의 인바운드를 허락하고 22번 포트로 라우팅 한다. 두번째는 10.10.10.1/32로부터 오는 포트 22번의 인바운드를 허락한다.
- 즉, 위의 의미는 포트 80,22번의 모든 인바운드가 열렸다는 의미이다. 10.10.10.1/32는 0.0.0.0/0으로 ip가 포함될 수 있기 때문!
- 하나의 인스턴스에 여러개의 security그룹을 두는건 가능하다.
- S3에 넣어진 데이터는 암호화 되어야 한다. 암호화 시키는 방법은?
- AWS Key Management Service managed keys를 이용해서 S3 서버사이드 암호화 사용.
- customer-provided keys를 이용해서 S3 서버사이드 암호화 사용.
- S3에 데이터를 넣기 전에 클라이언트 사이드 암호화를 마스터 키를 사용해서 한다.
- 버켓 정책에서 server-side-encryption이 없다면 PutObject를 거부한다.
- 버켓 정책에서 Secure Transport condition이 없으면 거부한다.
- Dynamo DB에서 hash-and-range key를 만들때, secondary index를 하나 이상 옵셔널 하게 만들 수 있다.
- MYSQL의 RDS의 경우 스토리지의 최소 사이즈는 100 GB이며, PIOPS의 최소는 1000이다.
- DHCP옵션을 만들면, 수정이 불가능하다. 수정할 수 있는 방법은 새로운 DHCP옵션을 만들고 VPC에 연결하는 방법 뿐이다.
- eu-west-1 region에서, 고해상도 날씨 맵을 제공해야 한다. 날씨 맵은 주로 s3에 정적으로 보관되고, Amazon CloudFront를 앞에 달아 프론트엔드를 제공한다. 회사는 이 서비스를 us-east-1 region으로 확장하려고 한다. 새로운 유저들은 날씨 맵이 느린걸 경험 하고 있다. 이 문제를 해결하기 위한 방법은?
- 날씨 맵이 느리기 때문에 이문제의 포인트는 S3에서 불러오는 속도 개선!
- s3버킷을 새롭게 us-east-1에 만들고, cross-region 복제를 설정한다.
- 람다 엣지를 이용해서 미국에 오는 트래픽은 us-east-1 버킷으로 보내준다.
- EBS snapshot은 다른 AZ에 볼륨으로 저장된다.
- RDS 인스턴스에 credentials이 바뀌지가 않아서 보안적 문제가 있다. 이 문제를 해결하는 방법은?
- 람다 함수가 DB credentials를 암호화된 AWS System Manager Parameter Store 를 이용해 설정해둔다. 또 다른 람다는 credentials를 정기적으로 바꿔주고 암호화된 read replica를 만들어 준다. 그리고 새로운 노드에 암호화된 read replica를 띄워준다.
- Dynamo DB는 VPC가 현재는 지원하지 않는다. 만약 NOSQL을 VPC안에 만들고 싶다면, AWS instance에 NOSQL Cluster를 만들어야 한다.
- 만약 on-premise 데이터 센터에서 aws에 링크를 반드시 걸어야 한다. 조직은 VPC를 전부 연결하려고 한다. 그리고 외부 트레픽을 차단하고 대역폭의 처리량을 증가시키고, 안정적인 네트워크 경험을 보장하려고 한다. 이렇게 할수 있는 방법은?
- AWS site-to-site vpn을 설정하고, 새로운 중심 vpc를 만든다. 그리고 그 vpc에 모든 vpc를 peering으로 연결 한다.
- https://dev.classmethod.jp/articles/what-is-the-aws-dx-kr/
- 가장 간단한 구성으로 온 프레미스와 AWS VPC간의 통신을 위해 Direct Connect를 쓰는 구성입니다.
- 혹은 더욱 일관된 처리량과 고가용성을 위해 2개의 Direct Connect를 구성하는 패턴도 있습니다. 다른 지역 혹은 다른 계정의 VPC와 연결하기 위해 Direc Connect Gateway를 사용할 수 있습니다.
- VPC의 관리를 위해 Transit Gateway를 쓰던 환경이었다면 Direct Connect Gateway를 통해 이를 연결할 수 있습니다. 연결가능한 Transit Gateway는 최대 3개 입니다.
- AWS 리소스는 Public VIF와 통신하고 VPC와는 IPSec VPN과 통신합니다. 이러한 구성으로 종단간 보안 IPSec 연결의 장점과 Direct Connect의 대역폭을 결합하여 일반 회선을 사용하는 것 보다 향상된 네트워크 경험을 제공합니다.
- 동일한 리전의 여러 VPC에 대한 IPSec VPN의 연결 비용을 최소화 할 수 있습니다.AWS Transit Gateway와 IPSec VPN 터널의 라우터 사이에 또 다른 BGP 세션 또는 고정 라우터가 설정됩니다.
- Provisioned IOPS 대 볼륨 사이즈의 최대 비율은? 50:1이다.
- 문제가 생겼을때 최대 1시간의 read-only 모드로 유지 될 수 있다. Route 53이 양쪽에 한세트씩 있다. 이 경우 딜레이를 최소화 하고 복구하는 방법은?
- latency based routing을 둘다 사용한다. 헬스체크를 통해서 설정하고 그 지역의 Record set을 사용한다.
- RDS 이벤트 알람을 설정하여 US-EAST 1에 문제가 생기면 람다함수를 불러서 EU-WEST1의 read replica를 발동 시킨다.
- 하나의 물리적 호스트에만 소프트웨어 라이센스가 계약 되어 있다면 어떤 유형의 인스턴스를 사용해야 하는가?
- Run the instance on a dedicated host with Host Affinity set to Host
- CloudWatch 10개의 메트릭, 1,000,000 API 리퀘스트, 1,000 SNS까지는 무료이다.
- 라우팅 정책:
- 단순 라우팅 정책(Simple routing policy) - 도메인에 대해 특정 기능을 수행하는 하나의 리소스만 있는 경우(예: example.com 웹 사이트의 콘텐츠를 제공하는 하나의 웹 서버)에 사용합니다. 단순 라우팅을 사용하여 프라이빗 호스팅 영역에서 레코드를 생성할 수 있습니다.
- 장애 조치 라우팅 정책(Failover routing policy) - 액티브-패시브 장애 조치를 구성하려는 경우에 사용합니다. 장애 조치 라우팅을 사용하여 프라이빗 호스팅 영역에서 레코드를 생성할 수 있습니다.
- 지리 위치 라우팅 정책(Geolocation routing policy) - 사용자의 위치에 기반하여 트래픽을 라우팅하려는 경우에 사용합니다. 지리적 위치 라우팅을 사용하여 프라이빗 호스팅 영역에서 레코드를 생성할 수 있습니다.
- 지리 근접 라우팅 정책(Geoproximity routing policy) - 리소스의 위치를 기반으로 트래픽을 라우팅하고 필요에 따라 한 위치의 리소스에서 다른 위치의 리소스로 트래픽을 보내려는 경우에 사용합니다.
- 지연 시간 라우팅 정책 - 여러 AWS 리전에 리소스가 있고 최상의 지연 시간을 제공하는 리전으로 트래픽을 라우팅하려는 경우에 사용합니다. 지연 시간 라우팅을 사용하여 프라이빗 호스팅 영역에서 레코드를 생성할 수 있습니다.
- IP 기반 라우팅 정책 - 사용자의 위치에 기반하여 트래픽을 라우팅하고 트래픽이 시작되는 IP 주소가 있는 경우에 사용합니다.
- 다중 응답 라우팅 정책(Multivalue answer routing policy) - Route 53이 DNS 쿼리에 무작위로 선택된 최대 8개의 정상 레코드로 응답하게 하려는 경우에 사용합니다. 다중 값 응답 라우팅을 사용하여 프라이빗 호스팅 영역에서 레코드를 생성할 수 있습니다.
- 가중치 기반 라우팅 정책(Weighted routing policy) - 사용자가 지정하는 비율에 따라 여러 리소스로 트래픽을 라우팅하려는 경우에 사용합니다. 가중치 라우팅을 사용하여 프라이빗 호스팅 영역에서 레코드를 생성할 수 있습니다
- Web Identity Federation과 DynamoDBFine Grained Access Control을 통해서 DynamoDB의 보안 설정이 가능
- IAM role이름의 최대 길이는 64글자 이다.
- on-premise에 VMware virtual machine을 클라우드로 옴길때는 AWS Application Discovery Service를 사용하고 VMware vCenter의 Application Discovery Connector 를 사용한다.
- 프라이빗 DNS존에 아마존 Route 53 두고 사용할 것 이다. DNS를 위한 VPC Route 53 Resolver를 반드시 연결한다. 회사는 온프레미스 DNS 서버에서 주소를 찾을 수 있다. DNS를 반드시 설정해야한다. 그래야 EC2인스턴스가 온프레미스 DNS 리퀘스트에 Route 53을 이용해서 응답한다. 이게 가능한 세팅을 하는 방법은?
- outbound endpoint를 새로 하나 Route 53에 설정한다. VPC에 엔드 포인트를 붙인다. 온프레미스 DNS서버 IP 주소의 53번 포트에 접근이 가능한 엔드 포인트를 보안그룹에 붙인다. on-premise에 라우팅 할 새로운 Route53 Resolver를 만든다.
- 스토리지 게이트웨이를 이용하여 딜레이 발생 없이 AWS로 NAS 서버 전환을 할 수 있다.
- AppSync는 그래프QL, 람다, 다이나모 디비, API GATEWAY 에 사용되는 전형적인 serverless 아키텍쳐 구조를 가지고 있다.
- AWS 콘솔 알람을 받기 위해서는, Vault Inventory Retrieval Job Complete 나 Archive Retrieval Job Complete 등의 알람을 선택해서 발생 시킬 수 있다.
- 2번째 VPN 커넥션을 맺으면, 불필요한 VPN 커넥션과 customer gateway가 생겨 난다. 이때 이 상황이 잘 동작하게 할 방법은?
- customer gateway와 VPN 커넥션이 모두 퍼블릭에 노출이 되어 있어야 한다.
- Direct connect는 그 지역의 모든 퍼블릭 리소스에 접근이 가능하다. 또한 하나의 Direct Connect는 여러 지역의 서비스에 접근이 가능하다. 만약 다른 지역의 VPC에 접근 하고 싶다면, VPN을 달아서 접근이 가능하다.
- IAM 권한이 없더라도 클라우드 워치를 이용해서 알람 액션은 설정할 수 있다. 하지만 동작은 안한다.
- 만약 MYSQL RDS를 사용하는 PIOPS를 세팅한다면, 미니멈 스토리지 사이즈는 100 G이다.
- 보안, 고가용성, 높은 대역폭, 여러 지역에 배포를 해야하는 상황에 온프레미스와 연결하는 방법은?
- AWS Direct Connect를 사용해서 여러 ISP를 이용해 데이터 센터와 연결을 한다. 그리고 라우팅을 한 데이터 센터에서 실패하면 다른 데이터 센터로 가게 한다. VPC CIDR 블럭중 그 어떤것도 온프레미스나 서로 겹치지 않게 한다.
- EC2 instance optimized for EBS는 dedicated capacity for EBS IO가 제공된다.
- ELB는 한 AZ에 한 서브넷만 연결 가능하다.
- EC2 세팅을 복사할때 복사가 되지 않는 요소는? Storage
- AMI는 pv로 PV-GRUB을 사용함.
- API Gateway는 10분동안의 부하 테스트를 통해서, 캐시 사이즈를 점검하는걸 추천한다.
- PIOPS를 이용해서 RDS를 만들면 좋은점?
- optimized EBS볼륨과 configuration stack
- CloudFormation template에 DeletionPolicy를 추가하면, 임으로 삭제 되는걸 막을 수 있다.
- AWS KMS는 VPC endpoint가 필요한 리저널 서비스
- 502에러를 돌려 받았다. 이때 웹사이트가 잠시 뒤 다시 리 로딩이 되고 제대로 된 페이지가 알아서 뜨게 하고싶다. 또한 ALB의 에러를 그대로 내보내는게 아니라 따로 에러 페이지를 내보내고 싶다. 이렇게 할 수 있는 방법은?
- 클라우드 워치를 이용해서 알람이 일어나면 람다 함수를 부른다. 인터널 에러가 0보다 클때. 람다 함수는 ALB가 접근가능한 웹사이트로 트래픽을 전송하게 한다.
- 클라우드 프론트에 커스텀된 에러 페이지를 올린다. 그리고 DNS를 수정하여 접근 가능한 웹페이지로 동작되게 한다.
- 회사는 사스 솔루션을 AWS로 옴기길 원하며 파일 트렌스퍼 하는 서비스의 운영비용을 줄이길 원한다. 현재 서비스는 다양한 외부 SFTP endpoint가 있다. 이 서비스를 만족하는 서비스는?
- customer-owned block of ip address를 aws 어카운트로 옴긴다. 그리고 elastic ip를 만들고 aws transfer에 sftp endpoint에 ip를 할당한다. AWS Transfer를 이용해서 Amazon S3로 파일들을 옴긴다.
- 새로운 맴버 어카운트로 만들기 위해서 어떻게 해야하는가?
- Support1/root/master user credentials로 콘솔에서 들어가고 organization email로 부터 64글자의 패스워드를 받아서 새로운 유저에게 이메일을 보낸다. IAM을 유저가 설정하게 한다.
- RTO=6, RPO=24일때 가격을 가장 아끼면서 다른 리전에 데이터를 저장할 방법은?
- EBS와 RDS의 cross-region snapshot을 이용하여 DR에 만든다. Route53을 이용하여 active-active failover을 구성하고, 아마존 오토스케일링을 RD존에 capacity 0으로 설정한다.
- RPO = 15M, RTO=3HR이고 데이터가 망가진건 1.5시간 전부터임을 알게 되었다. 이런 문제가 생겼을때 RPO와 RTO를 달성하면서 문제를 해결할 방법은?
- RTO(복구 시간 목표) 조직에서 정의합니다. RTO는 서비스 중단 시점과 서비스 복원 시점 간에 허용되는 최대 지연 시간으로, 서비스를 사용할 수 없는 상태로 허용되는 기간을 결정합니다.
- RPO(복구 시점 목표) 조직에서 정의합니다. RPO는 마지막 데이터 복구 시점 이후 허용되는 최대 시간으로, 마지막 복구 시점과 서비스 중단 시점 사이에 허용되는 데이터 손실량을 결정합니다.
- DB백업은 1시간마다 S3에 한다. 그리고 트렌젝션 로그는 5분 마다 S3에 저장한다.
- Elastic cache 의 보안그룹은 오직 VPC밖에 있는 클러스터에만 적용이 가능하다.
- 조직에 새로운 어카운트가 추가 될때 새로운 vpc를 만들고 트랜짓 게이트웨이를 자동으로 붙일 방법은?
- 관리 계정에서, AWS Resource Access Manager를 통해 트랜짓 게이트웨이를 맴버들과 나눠 쓴다.
- CloudFormation stack에서 관리계정으로부터 자동으로 vpc를 만들고 트랜짓 게이트웨이를 맴버에 붙이게 한다.
- 오토스케일링은 다른 리전에 배포는 불가능하다.
- call recording transcribe 서비스: Amazon Transcribe
- 보안을 강화할 방법
- OS를 패치를 최근걸로 유지
- 패스워드 없애고 각자의 키로 접근
- 더이상 안사용하는 ec2에 접근 못하게 막기
- RTO, RPO=15M, 채팅 기록은 최소 7년 이중화된 스토리지에 보관이 되어야 한다. 그리고 채팅은 암호화 되어야 하며, 데이터 접근 키는 항상 로테이션이 되어서 데이터 보호 팀이 보관한다. 이 것을 충족하는 경우는?
- 채팅 어플리케이션 로그는 클라우드 워치 로그가 수집한다. 클라우드 워치 로그는 Amazon Glacier vault에서 7년동안 보관된다. Clacier cross region 복제를 사용하여 데이터는 벡업된다 다른 리전에. KMS 키는 클라우드 워치 그룹과 Amazon Glacier vault용이 따로 따로 있다.
- 마이크로 서비스를 CloudFormation 과 AWS CodePipeline을 사용해서 배포하려고 한다. 애플리케이션은 복잡해졌고, 각각의 서비스는 에러가 났다. 솔루션 아키텍트는 애플리케이션의 가용성을 높이는게 가장 중요한 책임이 있었다. 최대한 운영적 부담을 줄이고 그런 상황을 충족시킬 방법은?
- 코드 파이프 라인에 단계를 추가해서 서비스가 배포전에 테스트 환경에서 돌려보고 각각의 배포가 에러가 없는지 확인 하는것.
- 도커이미지가 업데이트 되어서 컨테이너 코드가 바뀌었을때, 이미 배포된 애플리케이션이 그대로 잘 동작할 수 있게 업데이트된 컨테이너 코드 정보를 주는 방법?
- ECR레파지토리의 설정을 이용한다. ECR에 배포된 코드로 AWS CodeCommit 레파지토리의 컨테이너 코드를 바꾼다.
- Code Build 프로젝트에 설정정보를 가장 최신에 ECR에 배포된 이미지로 바꾼다. 그리고 컨테이너 코드는 AWS Code Commit 레파지토리로 부터 업데이트 해서 가져오고, 업데이트 된 이미지를 푸쉬한다.
- AWS Code Pipeline에서 코드 커밋 으로부터 코드를 가져오고 코드 빌드로 빌드 한다.
- AWS로 전환을 하려고 한다. 조직은 온프레미스의 AD를 계속해서 마스터 어카운트에서 사용하려고 한다. 각각의 부서는 AWS 어카운트를 만들수 있어야 한다. 어카운트 관리자 권한은 부서들에게는 주어지지 않는다. 이러한 보안적 방법을 충족시키는 방법은?
- AWS Control Tower landing zone을 배포한다. AD커넥터를 온프래미스의 Active Directory와 연결한다,. Single-sign-on을 사용해서만 AD를 접근하게 바꾼다. 부서 관리자들은 새로운 맴버 어카운트와 네트워크를 Account Factory에서 만들수 있다. 만들어진 어카운트에 대해서는 파워 유저 퍼미션이 부서에 부여된다.
- 개발자는 Amazon SWF를 사용하여 병렬 또는 순차 단계가 있는 백그라운드 작업을 구축하고 실행하고 확장할 수 있습니다. Amazon SWF는 클라우드에서 완전하게 관리되는 상태 추적기 및 작업 조정자 역할을 합니다.앱 단계가 완료되기까지 500밀리초 이상이 걸릴 경우 처리 상태를 추적해야 하며 작업이 실패하는 경우 복구하거나 재시도해야 합니다. 이러한 일련의 작업을 Amazon SWF가 지원합니다.
- Cognito는 퍼블릭으로 두가지의 인증 방식이 있다. 하나는 enhanced 이고 다른 하나는 basic이다.
- 아마존 EC2는 응용프로그램을 동작하기 위해서 사용된다. 조직은 오토스케일링 그룹을 사용해서 인스턴스를 관리중이였다. 솔루션 아키텍트는 클라우드 워치 로그가 모든 새로운 인스턴스로부터 오토스케일링 중에 모아지는걸 보장해야한다. 새로운 오토스케일링 그룹은 아마존 리눅스2로 키페어 없이 생성될 것이다. 이것들을 만족하는 것은?
- 아마존 클라우드 워치 에이전트를 모든 인스턴스에 깐다. 그리고 클라우드 워치 에이전트가 설정 정보들을 S3에 저장한다. S3로 부터 설정 정보 파일을 가져오기 위헤서 EC2 사용자 데이터 스크립트를 쓴다. 클라우드 워치 에이전트는 처음 EC2가 생성될때 깔린다.
- ENI는 public ip에는 여러개 붙일 수 없다. 하지만, Elastic ip에는 두개까지 가능
- IAM 정책에서 NULL이 아닌 곳에만 ifexists 를 붙일 수 있다.
- 오토스케일링 시작 설정에서 클라우드 워치가 모니터링 고도화를 해주는 옵션을 다시 키기 위해서는 컨피그를 새로 만드는 방법만 존재!
- Datasync는 데이터를 전송할때 암호화를 해줌
- 인스턴스의 메타데이터로부터 맥주소를 가져오는 부트 스트레핑 스크립트를 만들고 스크립트를 사용해서 응용프로그램을 등록한다.
- DataPipeline은 robust data management를 제공한다. 만약 실패하면 재시도의 최대치에 도달 할때까지 재시도를 한다. 그리고 다양한 시도나, 결과 실패한 이유를 팔로업 한다.
- 오직 하나의 역할만 EC2에 할당될수 있다. 그리고 모든 응용 프로그램은 같은 롤과 퍼미션을 나눈다.
- AWS Application Discovery 서비스를 사용하여 데이터 콜랙션 에이젼트를 각각의 VM에 설치하여 가장 비용 효율적으로 서버의 네트워크 커넥션, 디스크 사용률, CPU, 메모리 등의 정보를 얻을 수 있다.
- HTTPS 리스너에만 ssl 인증서를 저장 할 수 있다.
- 비즈니스가 Direct Connect connection이 애플리케이션의 한 장애 포인트와 연결이 되어 있는 상황이다. 이 문제를 어떻게 즉시 해결 할 수 있을까?
- AWS Site-to-Site 커넥션을 인터넷을 통해 만들고, 2번째 리전에서 virtual private gateway의 VPN 커넥션을 끊는다.
- AWS Certificate은 지역 서비스 이다. 즉, 이 서비스를 이용해서 하나 이상의 지역에 보낼꺼라면 각각의 지역에 요청을 보내야 한다.
- Provisioned IOPS(SSD) 볼륨의 크기 범위는 4GB 부터 16TB이다.
- 모바일 디바이스에 Amazon SNS와 ADM를 이용해서 알람을 보내기 위해서는 Registration ID, Client secret, client id.
- Amazon RDS Proxy를 사용하면 애플리케이션이 데이터베이스 연결을 풀링하고 공유하도록 허용하여 확장 기능을 사용할 수 있다. RDS Proxy는 애플리케이션 연결을 유지하면서 예비 DB 인스턴스에 자동으로 연결하여 데이터베이스 장애에 대한 애플리케이션의 복원력을 높인다.
- 20pb이상의 한곳에 위치한 데이터를 옴기기 위해서는 snowmobile, 10pb미만의 여러 지역에 퍼져 있는 데이터를 옴기기 위해서는 snowball을 사용한다.
- 오토스케일링 하면 테그도 자동으로 복사됨
- EFA(Elastic Fabric Adapter)는 Amazon EC2 인스턴스를 위한 네트워크 인터페이스로, 고객이 전산 유체 역학, 기후 모델링, 저수지 시뮬레이션과 같이 높은 수준의 인스턴스 간 통신이 필요한 HPC 애플리케이션을 AWS에서 대규모로 실행할 수 있도록 지원합니다
- 개발자가 Cloud Formation 으로 전환을 위해서 새로운 언어를 배워야 하고 루프같은 언어의 특징을 없애고 수정해야해서 전환을 꺼린다면 해결할 방법은?
- AWS리소스를 파이썬이나 타입스크립트로 전의한다. AWS Cloud Developement Kit를 이용해서 개발자의 원 코드를 CloudFormation 템플릿으로 만든다. AWS CDK를 사용해서 CloudFormation stack을 만든다. CDK에 코드 파이프라인에 코드빌드 역할을 포함 한다.
- 메모리 누수 확인은 코드의 퍼포먼스를 올리는 일이지 보안과 관련이 없다.
- hardening test를 통해서 필요한 포트가 오픈 되어 있는지 확을 하고 penetration testing을 통해서 공격에 취약한지 확인을 한다. 그리고 SQL injection을 통해서 DB 보안에 문제가 있는지 확인 한다.
- HPC클러스터의 성능 개성 방법 3가지
- EFA 이용, 한 AZ에서 실행, FSx for Luster 사용
- 보안을 이용해서 사이트에 접근하는 방법
- Amazon Route 53을 이용해서 도메인을 등록하고, DNS 서비스를 이용한다. DNSSEC을 모든 Route53의 요청에 허용한다. AWS Certificate Manager를 이용해서 TLS/SSL 인증을 등록한다. ABL을 이용해서 TLS/SSL을 설정한다. 사이트에 들어오는 모든 클라이언트 요청은 Server Name Identification extension을 이용한다.
- 기본 설정상, 회사는 Active Directory를 위한 두개의 컨트롤러가 VPC에 있다. VPC DHCP 옵션은 두개의 컨트롤러의 IP를 사용하게 설정이 되어 있다. 비록 VPC 인터페이스 엔드포인트가 만들어져 있었지만, 인스턴스는 private endpoint address를 해석하지 못한다. 이 상황을 해결 할 수 있는 방법은?
- 모든 허용되지 않는 쿼리는 VPC Resolver로 향하게 Active Directory의 DNS 서비스를 업데이트 한다.
- Amazon Route 53 Resolver는 아웃 바운드를 정의 한다. Active Directory 도메인은 Active Directory로 향하게 포워딩 룰을 수정한다. VPC DHCP 옵션을 AmazonProvidedDNS로 업데이트 한다.
- 다이나모 DB에 트랜잭션 데이터를 모아뒀다. 이상한 사용이 감지되어, 30분 안에 다이나모 DB에 있던 변화를 리포트 해야 한다. 이렇게 할 수 있는 방법은?
- Amazon Dynamo DB 스트림을 사용해서 캡쳐하고 AWS Lambda를 이용해서 업데이트 한내용을 보낸다. 람다는 Kinesis Data Stream으로 데이터를 보낸다. Amazon Kinesis Data Analytics를 이용해서 비정상을 감지한다. 비정상적인 행동이 감지 되었을때, SNS로 알람을 보낸다.
- Cognito Sync는 유져 프로파일 데이터의 동시성을 내부 백엔트 없이 모바일 디바이스들 끼리 맞춰준다. 인터넷을 이용해서 데이터 동시성을 설정해뒀다. push sync를 사용할때 동작 방식은?
- 즉각적으로 업데이트가 필요할때 다른 디바이스들한테 알람을 보낸다.
- **Amazon S3 Glacier Deep Archive 스토리지 클래스는 12시간 뒤에 데이터를 검색 할 수 있다.**
- 내부적으로 사용하는 소프트웨어 프레임 워크를 사용해서 응용프로그램을 개발하는 회사가 있다. 프레임워크를 설치하는데 30분이 걸리고 데이터 스크립트를 사용해서 설치가 수행된다. 개발자들은 주기적으로 프로그램에 업데이트를 하고 배포를 할때 프레임워크를 설치하는게 병목이 걸리는 부분이다. 이 과정을 간단하게 하는 방법은?
- 설치 과정을 병렬적으로 할 수 있는 파이프라인을 만들고 그 파이프라인을 데이터 스크립트로 이용한다.
- AWS Pipeline을 온프레미스 서버에서 이용하기 위해서는 Task Runner pakage를 온프레미스 서버에 설치하여 사용해야 한다.
- 백업하는 동안 데이터에 접근하기 위해서는 Storage gateway의 Stored volume을 사용하면 된다.
- Internal ELB는 각각의 AZ에 하나의 서브넷에서만 사용 가능하다.
- Direct Connect 를 하는 과정
- 1) AWS에 접속
- 2) Direct Connect를 제출. 필요한 포트 스피드 정의가 됨.
- 3) Complete the Cross Connect
- 4) Redundant Connection 설정
- 5) Virtual Interface 생성
- 6) Router Configuration 을 다운 받기
- 7) Virtual Interface 확인
- 아마존 AppStream 2.0은 사용자가 어디서나 데스크톱 애플리케이션에 즉시 액세스할 수 있도록 하는 완전 관리형 애플리케이션 스트리밍 서비스입니다.
- 10GB AWS Direct Connect Connection이 EC2가 호스팅 되어있는 AWS와 연결되어 있다. 프로그램은 온프레미스 데이터베이스에 의종하고 있다. 프로그램은 많은 수의 쓰기를 DB에 잘 못한다. 어떻게 비용 효율적으로 오프레미스 데이터 샌터의 리소스를 이용할 수 있을가?
- Amazon Elastic Map Reduce (EMR) S3DistCp를 사용하여 AWS 하둡 클러스터와 온프레미스 데이터 센타 사이를 동기화 시킨다.
- 아파치 DistCp 는 대량의 데이터를 복사하는 데 사용할 수 있는 오픈 소스 도구입니다.
- 낮은 latency와 random access가 100GB의 데이터에 가능해야한다. 프로그램은 반드시 3000 IOPS의 속도로 데이터를 접근 할 수 있어야 한다. 개발팀은 ec2 템플릿에 100GB Provisioned Amazon EBS를 Provisioned IOPS 3000으로 정의해서 만들었다. 솔루션 아키텍트는 가장 중요하게 퍼포먼스 저하 없이 비용을 낮춰야 한다. 이렇게 할 방법은?
- EFS file system을 MAX I/O로 만든다. EC2 를 EFS 마운트 하여 붙인다.
- AWS X-Ray는 애플리케이션이 처리하는 요청에 대한 데이터를 수집하는 서비스이며, 해당 데이터를 보고, 필터링하고, 통찰을 얻어 문제와 최적화 기회를 식별할 수 있는 도구를 제공합니다. 애플리케이션에 대한 모든 트레이스된 요청에서, 요청 및 응답뿐 아니라 애플리케이션이 다운스트림에 대해 하는 호출에 대해서도 상세한 정보를 확인할 수 있습니다. AWS리소스, 마이크로서비스, 데이터베이스 및 웹 API
- 모든 기능 – 이 기능 집합은 AWS Organizations에서 작업하기 위한 기본 방식이며 통합 결제 기능을 포함하고 있습니다. 조직을 생성할 때 모든 기능 활성화가 기본값입니다. 모든 기능을 활성화하면 지원되는 AWS 서비스 및 조직 관리 정책과의 통합과 같이 AWS Organizations에서 제공하는 고급 계정 관리 기능을 사용할 수 있습니다.
- 통합 결제 기능 – 모든 조직은 조직 내 계정을 중앙에서 관리하는 기본 관리 도구를 제공하는 이 기능 하위 집합을 지원합니다.
- 클라우드 워치는 모니터링 툴이며 아마존 elastic cache에 접근하는 권한은 없다.