AWS
1. 서비스를 이해하고 사용방법을 연습
Learn AWS by Doing 과정
2. 서비스 운영이 쉬워지는 AWS 인프라 구축 ⇒ EC2 기반의 서비스 인프라 구축
3. 서버리스 아키텍처
AWS 기반 서버리스 아키텍처
node.js ⇐ JavaScript에 대한 이해가 필요
확장성 → Auto Scaling 서비스
탄력성 → 수요가 떨어졌을 때 용량을 자동으로 줄이는 개념 ⇒ 비용 효율적
비용 관리 → 자본지출(CAPEX)에서 운영비용(OPEX)으로 IT 지출 내용을 변경 ⇒ 장기적 수요를 예측 → 위험을 감수
AWS 클라우드 서비스 범위
컴퓨팅 - 물리 서버가 하는 역할을 복제한 클라우드 서비스
- EC2(Elastic Compute Cloud)
- Lambda
- Auto Scaling
- Elastic Load Balancing
- Elastic Beanstalk
네트워킹 - 어플리케이션 연결, 접근 제어, 원접 연결, …
- VPC(Virtual Private Cloud)
- Direct Connect
- Route 53
- CloudFront
스토리지 - 빠른 액세스, 장기 백업과 같은 요구를 충족하는 스토리지 플랫폼
- S3(Simple Storage Service)
- Glacier
- EBS(Elastic Block Store)
- Storage Gateway
데이터베이스 - 관계형, NoSQL, 캐싱 등
- RDS(Relational Database Service)
- DynamoDB
어플리케이션 관리
- CloudWatch
- CloudFormation
- CloudTrail
- Config
보안과 자격 증명
- IAM(Identity and Access Management)
- KMS(Key Management Service)
- Directory Service
어플리케이션 통합
- SNS(Simple Notification Service)
- Simple WorkFlow(SWF)
- SQS(Simple Queue Service)
- API Gateway
Introduction to AWS Identity and Access Management (IAM)
AWS IAM
-
자격을 인증하고 권한을 부여
-
AWS 고객이 AWS 계정 및 AWS 내에서 사용 가능한 API 및 서비스에 대한 사용자의 액세스 및 권한을 관리할 수 있도록 하는 서비스
-
사용자, 보안 자격 증명(예: API Access Key)을 관리하고 사용자가 AWS 리소스에 액세스할 수 있도록 허용할 수 있음
IAM 정책
{
"Version": "2012-10-17",
"Statement": [ ⇐ 정책 문서
{
"Resource": "*", ⇐ 자원
"Action": "*", ⇐ 작업
"Effect": "Allow" ⇐ 효과 = 리소스에 대한 작업의 허용 여부를 명시
}
]
}
S3-Support Group에 적용되어 있는 정책
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": "*" } ] } |
EC2-Support Group에 적용되어 있는 정책
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:Describe*", "Resource": "*" }, { "Effect": "Allow", "Action": "elasticloadbalancing:Describe*", "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "cloudwatch:Describe*" ], "Resource": "*" }, { "Effect": "Allow", "Action": "autoscaling:Describe*", "Resource": "*" } ] } |
EC2-Admin Group에 적용되어 있는 정책
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:Describe*", "ec2:StartInstances", "ec2:StopInstances" ], "Resource": "*", "Effect": "Allow" }, { "Action": "elasticloadbalancing:Describe*", "Resource": "*", "Effect": "Allow" }, { "Action": [ "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "cloudwatch:Describe*" ], "Resource": "*", "Effect": "Allow" }, { "Action": "autoscaling:Describe*", "Resource": "*", "Effect": "Allow" } ] } |
EC2-Support Group에 EC2 인스턴스를 실행하고, 중지할 수 있도록 권한을 추가
추가 LAB
- S3-Support Group에 EC2 인스턴스를 실행하고, 중지할 수 있도록 권한을 추가
#1 EC-Admin 그룹의 ec2-admin (인라인 정책) 내용을 복사
#2 S3-Support 그룹에 인라인 정책으로 추가
2. user-1 사용자가 EC2 인스턴스를 조회할 수 있도록 권한을 추가
3. EC2 인스턴스를 실행하고 중지할 수 있는 관리형 정책 ec2-manager 생성 후 기존 ec2-admin 인라인 정책 대신에 적용
4. ec2-manager 정책에서 중지 권한 삭제 후 user-1(S3-Support 그룹), user-3(EC2-Admin 그룹) 계정으로 EC2 인스턴스 중지 가능 여부 확인
관리형 정책 : 일괄적으로 모든 사용자나 그룹에 유지
인라인 정책 : 개별적으로 적용해야 하는 정책
Creating a Basic Amazon S3 Lifecycle Policy
개인, 어플리케이션, AWS 서비스의 데이터(=파일)를 보관
-
백업, 로그 파일, 재해 복구 이미지 유지 관리
-
분석을 위한 빅데이터 저장
-
정적 웹 사이트 호스팅 ⇐
99.999999999%의 내구성을 제공 → AWS 리전 내에서 최소 3개의 물리적 가용영역에 분산해서 저장
99.5% ~ 99.99%의 가용성을 제공
퍼블릭 액세스를 차단한 경우, 객체 URL로는 접근할 수 없다.
퍼블릭 액세스를 허용하면 객체 URL로 접근이 가능
버전 관리가 설정되어 있으면 동일한 파일을 업로드하면 이전 파일을 삭제하지 않고 보존
이전 버전의 파일을 객체 URL을 통해서 접근도 가능
'CLOUD > AWS' 카테고리의 다른 글
3/5 - A Cloud Guru를 이용한 AWS 6차시 (0) | 2021.03.05 |
---|---|
3/4 - A Cloud Guru를 이용한 AWS 5차시 (0) | 2021.03.04 |
3/3 - A Cloud Guru를 이용한 AWS 4차시 (0) | 2021.03.03 |
3/2 - A Cloud Guru를 이용한 AWS 3차시 (0) | 2021.03.02 |
2/26 - A Cloud Guru를 이용한 AWS 2차시 (0) | 2021.02.26 |