사전 AWS
구현체

AWS

gabury1

AWS 는 아마존이 빌려주는 컴퓨터입니다. 계정을 만들고 필요한 만큼 빌려 쓴 뒤 쓴 만큼 요금을 냅니다. 서버를 미리 사 두지 않아도 몇 분 안에 수백 대를 띄울 수 있습니다. 지금은 이렇게 빌려 쓰는 서비스가 200가지를 넘습니다.

상세

AWS(Amazon Web Services)는 2006년에 IT 기반 시설을 웹 서비스 형태로 기업에 팔기 시작했습니다. 백서 「Overview of Amazon Web Services」는 계산·저장·데이터베이스·분석·네트워킹· 모바일·개발자 도구·관리 도구·사물인터넷·보안·기업용 애플리케이션에 걸친 제품을 온디맨드로, 초 단위로, 쓴 만큼 내는 과금으로 제공한다고 적습니다. 데이터 웨어하우징부터 배포 도구, 디렉터리, 콘텐츠 전송까지 200가지가 넘는 서비스가 있습니다. 백서는 선행 고정 비용 없이 새 서비스를 곧바로 프로비저닝할 수 있다고 적습니다. 클라우드 컴퓨팅의 핵심 이점 중 하나로는 선행 자본 지출을 사업 규모에 따라 움직이는 낮은 변동 비용으로 바꾸는 것을 듭니다.

리전과 가용 영역

Amazon EC2(Elastic Compute Cloud) 사용자 안내서는 EC2 가 전 세계 여러 위치에서 호스팅된다고 적습니다. 그 위치는 AWS 리전, 가용 영역, 로컬 존, AWS Outposts, 웨이브렝스 존으로 이루어집니다. 리전은 서로 떨어진 지리적 구역입니다. 가용 영역은 각 리전 안에 있는 여러 개의 격리된 위치입니다. 가용 영역의 코드는 리전 코드 뒤에 글자 하나를 붙인 꼴입니다. us-east-1a 가 그런 예입니다.

각 리전은 다른 리전으로부터 격리되도록 설계되어 있습니다. 안내서는 이 격리가 가능한 한 큰 결함 감내와 안정성을 얻는다고 적습니다. 자원을 조회하면 지정한 리전에 묶인 자원만 보입니다. 리전이 서로 격리되어 있고 자원을 리전 사이로 자동 복제하지 않기 때문입니다.

flowchart TD
    A["AWS 계정"] --> B["리전 us-east-1"]
    A --> C["리전 us-east-2"]
    B --> D["가용 영역 us-east-1a"]
    B --> E["같은 리전의 다른 가용 영역"]
    B -. 자원 자동 복제 없음 .-> C

인스턴스를 띄울 때 리전을 고릅니다. 특정 고객 가까이 두려고 고르기도 하고, 법적 요구나 다른 요구를 맞추려고 고르기도 합니다. 여러 리전에 나눠 띄울 수도 있습니다.

자원 이름과 접근

IAM(Identity and Access Management) 사용자 안내서는 ARN(Amazon Resource Name, 아마존 리소스 이름)이 AWS 자원을 유일하게 식별한다고 적습니다. AWS 전체에서 자원 하나를 모호함 없이 가리켜야 할 때 ARN 이 필요합니다. IAM 정책, Amazon RDS(Relational Database Service) 태그, API(Application Programming Interface, 응용 프로그램 인터페이스) 호출이 그런 자리입니다. 안내서는 ARN 이 다른 식별 정보처럼 조심해서 쓰고 공유해야 하지만 비밀·민감·기밀 정보로 취급되지는 않는다고 덧붙입니다.

일반적인 형식은 이렇습니다.

arn:partition:service:region:account-id:resource-id

service 는 AWS 제품을 식별하는 서비스 네임스페이스입니다. account-id 는 그 자원을 소유한 AWS 계정의 번호이고 하이픈 없이 적습니다. 리전과 계정 번호가 이름 안에 박혀 있는 셈입니다. 자원에 따라서는 리전이나 계정 번호를, 또는 둘 다를 빼기도 합니다. 형식은 자원마다 달라집니다.

포기한 것

리전을 넘는 자동 복제

리전을 격리하기로 하면서 자원이 리전 사이로 자동 복제되지 않게 됐습니다. EC2 안내서는 자원을 조회하면 지정한 리전에 묶인 것만 보인다고 적습니다. 리전이 서로 격리되어 있고 자원을 리전 사이로 자동 복제하지 않기 때문이라고 덧붙입니다. 다른 리전에도 사본을 두려면 사용자가 그 일을 따로 해야 합니다.

그 대신 얻은 것이 결함 감내와 안정성입니다. 안내서는 드물게 같은 위치에 있는 인스턴스의 가용성에 영향을 주는 장애가 일어날 수 있다고 적습니다. 인스턴스를 전부 한 위치에 두었다가 그 위치가 장애를 겪으면 인스턴스를 하나도 쓸 수 없습니다.

클라우드 "안"의 보안

공동 책임 모델 문서는 보안과 규정 준수를 AWS 와 고객이 나눠 진다고 적습니다. AWS 는 호스트 운영체제와 가상화 계층부터 서비스가 도는 시설의 물리 보안까지를 운영·관리·통제합니다. 고객은 게스트 운영체제를 맡습니다. 업데이트와 보안 패치가 여기 들어갑니다. 그 위에 얹은 응용 소프트웨어와 AWS 가 제공하는 보안 그룹 방화벽 설정도 고객 몫입니다. 문서는 이 구분을 클라우드 "의" 보안 대 클라우드 "안"의 보안이라고 부릅니다.

책임의 경계는 고른 서비스마다 달라집니다. Amazon EC2 는 IaaS(Infrastructure as a Service, 서비스로서의 인프라)로 분류되고, 그래서 필요한 보안 구성과 관리 작업을 고객이 전부 수행해야 합니다. Amazon S3(Simple Storage Service)나 Amazon DynamoDB 같은 추상화된 서비스에서는 AWS 가 인프라 계층을 운영합니다. 문서는 이렇게 책임을 나눈 성격이 배포를 허용하는 유연성과 고객 통제를 제공한다고 적습니다.

예시

Snowflake — 계정을 어디에 올리나

Snowflake 공식 문서는 Snowflake 계정을 AWS, Google Cloud, Microsoft Azure 중 한 곳에 호스팅할 수 있다고 적습니다. 각 플랫폼에서 계정이 프로비저닝되는 리전을 하나 이상 제공합니다. 문서는 조직의 다른 클라우드 서비스가 이미 그 플랫폼 중 하나에 올라가 있으면 Snowflake 계정도 같은 플랫폼에 두고 싶을 수 있다고 적습니다. 고르는 이유가 그렇게 문서에 적혀 있습니다.

IAM 정책 한 덩이

IAM 사용자 안내서의 예제 정책입니다. 특정 리전 안에서만 EC2 전체 권한을 주는 신원 기반 정책입니다.

JSON
{
    "Version":"2012-10-17",
    "Statement": [
        {
            "Action": "ec2:*",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ec2:Region": "us-east-2"
                }
            }
        }
    ]
}

Action 이 ec2:* 라서 EC2 의 모든 동작을 가리킵니다. Resource 가 * 라서 자원을 가리지 않습니다. 대신 Condition 이 ec2:Region 을 us-east-2 로 못 박습니다. 안내서는 이 정책이 프로그램 접근과 콘솔 접근 양쪽의 권한을 정의한다고 적습니다. 리전이 정책 조건의 값으로 들어간다는 것이 여기서 보입니다.

aws s3 ls 한 줄

AWS CLI(Command Line Interface, 명령줄 인터페이스) 레퍼런스의 예제입니다. 사용자가 가진 버킷을 전부 나열합니다.

aws s3 ls

출력은 이렇습니다.

2013-07-11 17:08:50 amzn-s3-demo-bucket
2013-07-24 14:55:44 amzn-s3-demo-bucket2

앞의 값은 버킷이 만들어진 날짜이고 내 컴퓨터의 시간대로 보여줍니다. 버킷 안을 보려면 접두사를 붙입니다. aws s3 ls s3://amzn-s3-demo-bucket 은 그 버킷 아래의 객체와 공통 접두사를 나열합니다.

운영

서비스 할당량

Service Quotas 사용자 안내서는 할당량을 AWS 계정 안의 자원·동작·항목에 적용되는 최댓값이라고 적습니다. AWS 서비스 안에서는 리밋이라고도 부릅니다. 서비스마다 자기 할당량을 정의하고 기본값을 세웁니다. 계정 단위인 것도 있고 리전 단위인 것도 있습니다. 계정당 IAM 역할 수는 계정 기반 할당량의 예이고, 리전당 VPC(Virtual Private Cloud) 수는 리전 기반 할당량의 예입니다. 리전에 묶이는지는 각 할당량의 설명을 봐야 알 수 있습니다.

콘솔에서 서비스를 고르면 그 서비스의 할당량과, 그 값이 계정 수준에서 조정 가능한지가 같이 보입니다. 조정 가능 여부는 할당량마다 다릅니다. 증액을 요청하면 Support 가 승인하거나 거부하거나 일부만 승인합니다. 증액이 반영된 뒤의 할당량 값을 적용 할당량이라고 부릅니다.

요청 스로틀링

EC2 문서는 Amazon EC2 API 요청이 서비스 성능을 유지하는 데 도움이 되도록 스로틀링된다고 적습니다. 요청이 스로틀링되면 Client.RequestLimitExceeded 오류를 받습니다. 오류 표의 설명은 계정에 허용된 Amazon EC2 API 최대 요청률을 넘었다는 뜻이라고 적습니다. 문서가 권하는 대처는 요청 사이에 점점 늘어나거나 변하는 대기 간격을 두는 것입니다.

기본은 거부

IAM 평가 논리 문서는 기본적으로 모든 요청이 암묵적으로 거부된다고 적습니다. 예외는 계정 루트 사용자뿐이고 루트는 전체 접근 권한을 가집니다. 요청이 허용되려면 정책이 명시적으로 허용해야 합니다. 그리고 명시적 거부가 명시적 허용을 이깁니다.

flowchart TD
    A["요청 도착"] --> B{"적용되는 명시적 Deny 가 있나"}
    B -->|있다| C["최종 Deny"]
    B -->|없다| D{"신원 기반 정책이 허용하나"}
    D -->|아니다| C
    D -->|그렇다| E["평가를 계속한다"]

평가는 거부부터 봅니다. 계정 안에서 요청에 적용되는 모든 정책을 훑습니다. AWS Organizations 의 정책, 자원 기반 정책, 신원 기반 정책, IAM 권한 경계, 세션 정책이 그 대상입니다. 그중 하나라도 적용되는 Deny 문이 있으면 최종 결정은 Deny 입니다. 명시적 거부가 없으면 신원 기반 정책을 봅니다. IAM 사용자라면 사용자 정책과 그 사용자가 속한 그룹의 정책이 여기 들어갑니다. 요청한 동작을 허용하는 문장이 하나도 없으면 암묵적 거부로 최종 Deny 입니다.

가용 영역을 넘는 데이터 전송

EC2 온디맨드 요금 문서는 같은 리전 안이라도 가용 영역을 넘는 데이터 전송에 값이 붙는다고 적습니다. Amazon EC2, Amazon RDS, Amazon Redshift, Amazon DynamoDB Accelerator(DAX), Amazon ElastiCache 인스턴스와 Elastic Network Interface 사이에서 같은 리전의 가용 영역을 넘어 오간 데이터는 방향마다 GB 당 0.01달러입니다.

인터넷으로 나가는 데이터는 매달 100GB 까지 무료입니다. 이 무료 한도는 모든 AWS 서비스와 리전을 합쳐서 전 세계 단위로 주어집니다. 리전마다 따로 주어지지 않습니다. 중국과 GovCloud 는 빠집니다. 요금 값은 이 문서를 2026-08-20 에 확인한 값입니다.

관련 항목

컴퓨팅과 저장을 이루는 서비스

Amazon EC2 · Amazon S3 · Amazon EBS · 인스턴스 스토어 · Amazon EFS · AWS Lambda · Amazon RDS · Amazon DynamoDB · Amazon ElastiCache · Amazon Redshift · DAX

네트워크와 전송을 이루는 서비스

Amazon VPC · VPC · Elastic Load Balancing · Amazon CloudFront · Amazon Route 53 · Elastic Network Interface · 보안 그룹

자원이 놓이는 위치 단위

리전 · 가용 영역 · 로컬 존 · AWS Outposts · 웨이브렝스 존 · AWS GovCloud

리전과 가용 영역이 좌우하는 자원 관리

자원 · 인스턴스 · 복제

AWS가 지키는 성질

가용성 · 결함 감내 · 안정성

권한을 판정하는 정책과 개념

IAM · 신원 기반 정책 · 자원 기반 정책 · 권한 경계 · 세션 정책 · AWS Organizations · 권한 · 세션

자원을 유일하게 가리키는 이름

ARN

AWS가 속하거나 따르는 분류·모델

클라우드 컴퓨팅 · 온디맨드 · 공동 책임 모델 · IaaS

공동 책임 모델이 나누는 계층

운영체제

AWS 자원을 부르고 지켜보는 도구

AWS CLI · Amazon CloudWatch · Amazon SNS · API

사용량을 제한하고 처리하는 장치·주체

서비스 할당량 · 요청 스로틀링 · Client.RequestLimitExceeded · AWS Support · 성능

AWS가 제공하는 서비스 분야

데이터베이스 · 개발 · 배포

자리를 두고 겨루는 클라우드 사업자

Microsoft · Azure · Google Cloud

AWS 위에 얹히는 서비스

Snowflake

다른 이름: Amazon Web Services · 아마존 웹 서비스 · aws