본문 바로가기
AWS/AWS Cloud School

[AWS] Cloud Practitioner Essentials - 1

by parkkingcar 2023. 11. 6.

 

김형근님이 진행하는 Cloud Practitioner Essentials 과정을 기반으로 작성한 글 입니다. AWS 클라우드에 전반적인 기초내용을 다루고 있습니다. 클라우드 개념, AWS 서비스, 보안, 아키텍쳐, 요금 및 지원에 대한 상세한 개요를 제공합니다.

 

 

 

과정소개

 

• 1: Amazon Web Services 소개 

• 2: 클라우드컴퓨팅 

• 3: 글로벌인프라및안정성 

• 4: 네트워킹 

• 5: 스토리지및데이터베이스 

• 6: 보안

• 7: 모니터링및분석

• 8: 요금및지원

• 9: 마이그레이션및혁신

 

 

 

1. Amazon Web Services 소개 

클라우드 컴퓨팅이란 인터넷을 통해 IT 리소스와 애플리케이션을 온디맨드로 제공하는 서비스를 말합니다. 

 

이러한 클라우드 서비스를 제공하는 것을 퍼블릭 클라우드, 회사에서 직접 운영하는 서버를 온프레미스(프라이빗 클라우드)라고 합니다. 이러한 클라우드 컴퓨팅을 사용하는 이유는 어플리케이션 구축 초기비용을 가변비용으로 바꿀 수 있습니다. 데이터센터, 물리적 서버 등 미리 투자를 해야 사용할 수 있는 리소스를 말합니다. 어떻게 사용할 지 결정하기도 전에 데이터센터와 서버에 대규모로 투자하는 대신, 사용하는 컴퓨팅리소스에 대해서만 비용을 지불하는것을 뜻합니다. 기업은 가변비용의 이점을 제공하는 클라우드컴퓨팅 접근방식을 통해 비용을 절감하면서 혁신적 솔루션을 구현할 수 있습니다. 또한 이러한 인프라 관리 작업에 신경을 덜쓰고 애플리케이션과 고객에 더 집중할 수 있습니다. 

 

 

 

2. 클라우드 컴퓨팅

AWS의 핵심 서비스에 대해 알아보겠습니다. 

 

 

EC2

AWS에서는Amazon EC2 서비스를 사용하여 가상서버를 실행할 수 있습니다.

Amazon EC2는클라우드에서 안전하고 크기조정이 가능한 컴퓨팅용량을 Amazon EC2 인스턴스로 제공합니다.

 

• 몇분 내에 Amazon EC2 인스턴스 프로비저닝 및 시작 

• 워크로드 실행을 마치면 사용중지 

• 인스턴스가 실행중일때 사용한 컴퓨팅 시간에 대해서만 비용을 지불하고, 인스턴스가 중지 또는 종료되었을때는 비용을 지불하지 않음 

• 필요한 서버 용량에 대해서만 비용을 지불하여 비용 절감

 

 

Amazon EC2 인스턴스유형

범용 인스턴스는 컴퓨팅, 메모리, 네트워킹 리소스를 균형있게 제공합니다. 이 인스턴스는 애플리케이션서버, 게임서버, 엔터프라이즈애플리케이션용 백엔드서버, 중소규모 데이터베이스와 같은 다양한 워크로드에 사용할 수 있습니다.

컴퓨팅최적화인스턴스는고성능프로세서를활용하는컴퓨팅집약적인 애플리케이션에적합합니다. 범용인스턴스와마찬가지로컴퓨팅최적화 인스턴스는웹서버, 애플리케이션서버, 게임서버와같은워크로드에사용할수 있습니다.

메모리최적화인스턴스는메모리에서대규모데이터세트를처리하는 워크로드를위한빠른성능을제공하기위해설계되었습니다. 컴퓨팅에서 메모리는임시스토리지영역입니다. 여기에는중앙처리장치(CPU)가작업을 완료하는데필요한모든데이터와명령이들어있습니다.

 

 

 

Amazon EC2 인스턴스 요금

 

온디맨드 인스턴스는 중단되면 안되는 이러한 유형의 불규칙한 단기 워크로드에 사용할 수 있는 탁월한 옵션입니다. 선결제 비용이나 최소 약정은 적용되지 않습니다. 인스턴스는 중지할때까지 계속 실행되며, 사용한 컴퓨팅 시간에 대해서만 비용을 지불합니다.

스팟 인스턴스는시작 및 종료시간이 자유롭거나 중단을 견딜 수 있는 이러한 유형의 워크로드에 적합합니다. 스팟 인스턴스는 미사용 EC2 컴퓨팅용량을 사용하며 온디맨드 요금의 최대 90%까지 비용을 절감할 수 있습니다.

예약 인스턴스는 계정에서 온디맨드 인스턴스를 사용할 때 적용되는 결제할인 옵션입니다. 표준 예약 및 컨버터블 예약 인스턴스 는1년 또는 3년약정으로, 정기 예약인스턴스는 1년 약정으로 구입할 수 있습니다. 3년약정옵션으로 더 큰 비용절감을 실현할 수 있습니다.

AWS는 Amazon EC2를 비롯한 여러 컴퓨팅 서비스에 대한 Savings Plans를 제공합니다. Amazon EC2 Savings Plans로 1년 또는 3년 기간동안 일정한 컴퓨팅 사용량을 약정하면 컴퓨팅비용을 절감하는데 도움이 됩니다. 이로써 온디맨드 비용대비 최대 66%의 비용을 절감할 수 있습니다.

전용 인스턴스는 단일고객전용 하드웨어의 Virtual Private Cloud(VPC)에서 실행되는 EC2 인스턴스입니다.

전용 호스트는 사용자 전용의 EC2 인스턴스 용량을 갖춘 물리적 서버입니다. 

 

 

 

Amazon EC2 Auto Scaling

카페를 예를들면 피크타임에  2명의 바리스타가 필요하고, 한가한 시간에 바리스타가 한명 필요한데, 갑자기 한가한 시간에 사람이 몰리는 경우. 이때 손님은 트래픽으로, 바리스타를 서버 리소스로 볼 때, 손님수에 따라 바리스타를 자동으로 조절하는것이 오토스케일링

• 컴퓨팅 요구사항의 변화에 따라 용량을 조정

• 동적조정 및 예측조정 사용

 

 

 

Elastic Load Balancing

Elastic Load Balancing은 들어오는 애플리케이션 트래픽을 Amazon EC2 인스턴스와 같은 여러 리소스에 자동으로 분산하는 AWS 서비스 입니다.

로드밸런서는 Auto Scaling 그룹으로 들어오는 모든 웹 트래픽의 단일접점 역할을 합니다. 즉, 들어오는 트래픽의 양에 맞춰 EC2 인스턴스가 추가 또는 제거되므로 이러한 요청이 로드밸런서로 먼저 라우팅됩니다. 그런다음 요청을 처리할 여러 리소스로 분산됩니다.

 

 

 

 

AWS 메시징 서비스

 

Amazon Simple Notification Service

Amazon SNS는 게시/구독서비스입니다. 게시자는Amazon SNS 주제를 사용하여 구독자에게 메시지를 전달합니다.

 

 

Amazon Simple Queue Service

Amazon SQS를 사용하면 메시지 손실이나 다른 서비스 사용없이 아무리 많은 양의 메시지도 소프트웨어 구성요소간에 전송, 저장, 수신 할 수 있습니다. Amazon SQS에서는 애플리케이션이 메시지를 대기열로 전송합니다. 사용자 또는 서비스는 대기열에서 메시지를 검색하여 처리한 후 대기열에서 삭제합니다.

고객이 계산원에게 주문합니다. 계산원이 주문을 대기열에 넣습니다. 이를 계산원과 바리스타 사이의 버퍼역할을 하는 주문판이라고 생각할 수 있습니다. 바리스타가 쉬는 시간이거나 다른 주문으로 바쁘더라도 계산원은 계속해서 새 주문을 대기열에 넣을 수 있습니다.

 

 

 

서버리스 컴퓨팅 서비스

서버를 따로 유지 관리하지 않고, 제품과 서비스에 집중 할 수 있습니다.

 

 

AWS Lambda

 

AWS Lambda는서버를 프로비저닝하거나 관리할 필요없이 코드를 실행할 수 있는 서비스입니다. AWS Lambda를 사용하는 경우 사용한 컴퓨팅시간에 대해서만 비용을 지불합니다. 코드를 실행하는 동안에만 요금이 부과됩니다.

 

 

 

 

 AWS 컨테이너 오케스트레이션 서비스

Amazon Elastic Container Service(Amazon ECS)는AWS에서컨테이너식 애플리케이션을 실행하고 확장할 수 있는 확장성이 뛰어난 고성능 컨테이너 관리시스템입니다.

Amazon Elastic Kubernetes Service(Amazon EKS)는AWS에서Kubernetes를 실행하는데 사용할 수 있는 완전관리형 서비스입니다

 

 

 

 

AWS Fargate

 

AWS Fargate는 컨테이너용 서버리스 컴퓨팅엔진입니다. AWS Fargate를 사용하는 경우 서버를 프로비저닝하거나 관리할 필요가 없고 자동으로 서버인프라를 관리합니다.

 

 

 

 

 

3. 글로벌 인프라 및 안정성

AWS는 전세계에서 비즈니스 트래픽수요가 있는 곳과 가장 가까운 위치에 리전을 구축합니다. 각 리전에는 애플리케이션을 실행하는데 필요한 모든 구성 요소가있는 여러 데이터센터가 있습니다. 컴퓨팅, 스토리지, 네트워킹, 보안 서비스를 예로 들수있습니다.

 

아래 고려사항을 통해 리전을 선택합니다.

 

• 데이터거버넌스및법적요구사항준수

• 고객과의근접성

• 리전내에서사용할수있는서비스

• 요금

 

 

 

가용영역

 

가용영역은 리전 내의 단일데이터센터 또는 데이터센터그룹입니다. 리전의 한 부분에서 재해가 발생하는 경우 지리적거리를 통해 모든 가용영역이 영향을 받지않도록 할 수 있습니다.

 

 

 

글로벌 콘텐츠 전송 

 

전 세계에 엣지 로케이션 형태로 컨텐츠를 캐싱하여 빠르게 전달합니다. 이러한 CDN 서비스로 AWS Cloudfront가 있습니다.

 

 

 

AWS Outposts

 

AWS Outposts는 데이터센터, 사무실 및 소매점을 비롯한 자체 온프레미스 위치에서 하이브리드 방식으로 AWS 인프라, 서비스 및 도구를 실행하는데 사용할 수 있는 서비스입니다. 예를들어 회사에 입점한 카페

 

 

 

 

AWS 서비스와 상호작용 

AWS 관리콘솔은 AWS 서비스 액세스 및 관리를 위한 웹 기반 인터페이스입니다. 최근에 사용한 서비스에 빠르게 액세스하고 이름, 키워드 또는 약어로 다른 서비스를 검색할 수 있습니다. 콘솔에는 작업 완료프로세스를 간소화 할 수 있는 마법사와 자동화된 워크플로가포함되어있습니다

API 요청을 할때 시간을 절약하기위해 AWS 명령줄인터페이스(AWS CLI)를 사용할 수 있습니다. AWS CLI는 하나의 도구를 통해 명령줄에서 직접 여러AWS 서비스를 제어하는데 도움이됩니다. AWS CLI는Windows, macOS, Linux 사용자가 사용할 수 있습니다.

AWS 서비스를 액세스 및 관리 할 수 있는 또 다른 옵션은 소프트웨어개발 키트(SDK)입니다. SDK를 사용하면 프로그래밍언어 또는 플랫폼용으로 설계된 API를 통해 AWS 서비스를 보다 간편하게 사용할 수 있습니다.

 

 

 

4. 네크워킹

Amazon Virtual Private Cloud (Amazon VPC)

 

Amazon VPC를 사용하면 AWS 클라우드의 격리된 섹션을 프로비저닝할 수 있습니다. 이 격리된 섹션에서는 사용자가 정의한 가상네트워크에서 리소스를 시작할 수 있습니다. 한 Virtual Private Cloud(VPC) 내에서 여러서브넷으로 리소스를 구성할 수 있습니다. 서브넷은 Amazon EC2 인스턴스와 같은 리소스를 포함할 수 있는VPC 섹션입니다.

 

 

 

서브넷

서브넷은 퍼블릭 또는 프라이빗일 수 있습니다. 퍼블릭 서브넷에는 온라인 상점의 웹 사이트와 같이 누구나 액세스 할 수 있어야 하는리소스가 포함됩니다. 프라이빗 서브넷에는 고객의 개인정보 및 주문내역이 포함된 데이터베이스와 같이 프라이빗 네트워크를 통해서만 액세스할 수 있는 리소스가 포함됩니다.

 

 

 

 

인터넷 게이트웨이

인터넷의 퍼블릭 트래픽이 VPC에 액세스 하도록 허용하려면 인터넷 게이트웨이를 VPC에 연결합니다. 인터넷게이트웨이는 VPC와 인터넷 간의 연결입니다. 

 

 

 

가상 프라이빗 게이트웨이

VPC 내의 프라이빗 리소스에 액세스하려면 가상프라이빗 게이트웨이를 사용할 수 있습니다.

 

 

 

AWS Direct Connect 

AWS Direct Connect는데이터센터와VPC 간에 전용 프라이빗 연결을 설정하는 서비스입니다

 

 

 

구성 예시

 

1. 고객의 개인정보가 포함된 데이터베이스를 격리 ->  프라이빗서브넷

2. VPC와 사내 네트워크간 VPN 연결생성  -> 가상프라이빗게이트웨이 

3. 고객 대응 지원 웹 사이트 -> 퍼블릭서브넷

4. 온프레미스 데이터센터와 VPC 간 전용연결 설정 -> AWS Direct Connect

 

 

 

 

네트워크 액세스 제어 목록 및  보안그룹

네트워크에서 트래픽을 필터링을 하는 방화벽과 같이 VPC에서 네트워크 엑세스를 제어합니다.

 

 

네트워크 액세스 제어 목록(ACL)

네트워크 액세스제어 목록(ACL)은서브넷 수준에서 인바운드 및 아웃바운드 트래픽을 제어하는가상방화벽입니다. 쉽게 말하면 서브넷 경계에서의 방화벽. 네트워크 ACL은 상태비저장 패킷필터링을 수행합니다. 

 

 

보안그룹

보안그룹은 Amazon EC2 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상방화벽입니다. 보안그룹은 차단규칙이 없고 허용규칙만 있습니다. (기본적으로 차단). 보안그룹은 상태저장 패킷필터링을 수행합니다.

 

 

 

Domain Name System(DNS)

DNS를 인터넷의 전화번호부라고 생각할 수 있습니다. DNS 확인은 도메인 이름을 IP 주소로 변환하는 프로세스입니다. DNS는 IP 주소에서 이름을 조회할 수도 있습니다. 이때 Amazon Route 53는DNS 기능을 제공합니다.

 

 

Amazon Route 53

Amazon Route 53는DNS 웹서비스입니다. 이 서비스는 개발자와 비즈니스가 최종사용자를 AWS에서 호스팅되는 인터넷 애플리케이션으로 라우팅할 수 있는 안정적인 방법을 제공합니다. Amazon Route 53는사용자요청을 AWS에서 실행되는 인프라(예: Amazon EC2 인스턴스 및 로드밸런서)에 연결합니다. Route 53는사용자를 AWS 외부의 인프라로 라우팅할 수 있습니다.

 

 

 

 

 

 

5. 스토리지 및 데이터베이스

AWS 스토리지

AWS 스토리지에는 블록스토리지, 개체스토리지, 파일스토리지 등 세가지 유형이 있습니다.

 

 

블록 스토리지

블록수준 스토리지 볼륨은 물리적 하드드라이브처럼 동작합니다. 블록 스토리지에서 파일은 동일한 크기의 데이터조각(블록)으로 구분됩니다. 

 

 

 

인스턴스 스토어

인스턴스 스토어는 Amazon EC2 인스턴스에 임시 블록수준 스토리지를 제공합니다. Amazon EC2 인스턴스를 중지 또는 종료하면 연결된 인스턴스 스토어에 기록된 모든 데이터가 삭제됩니다.

 

 

 

Amazon EBS 볼륨

Amazon Elastic Block Store(Amazon EBS)는Amazon EC2 인스턴스에서 사용할 수 있는 블록수준 스토리지볼륨을 제공하는 서비스입니다. Amazon EC2 인스턴스를 중지 또는 종료하더라도 연결된 EBS볼륨의 모든 데이터를 사용할 수 있습니다. EBS 볼륨은 유지되어야하는 데이터를 위한 것 이므로 데이터를 백업하는 것이 중요합니다. 지정한 용량만큼 비용이 청구됩니다.

 

 

Amazon EBS 스냅샷 

Amazon EBS 스냅샷은 증분 백업입니다. 즉, 처음 볼륨을 백업하면 모든 데이터가 복사됩니다. 이후의 백업에서는 가장 최근의 스냅샷 이후 변경된 데이터블록만 저장됩니다.

 

 

 

 

객체 스토리지

객체 스토리지에서 각 객체는 데이터, 메타데이터, 키로 구성됩니다.

 

Amazon Simple Storage Service (S3)

Amazon Simple Storage Service(Amazon S3)는객체 수준 스토리지를 제공하는 서비스입니다. Amazon S3는 데이터를 버킷 내에 객체단위로 저장합니다. 이미지, 동영상, 텍스트 파일 등 모든 유형의 파일을 Amazon S3에 업로드할 수 있습니다. Amazon S3에서는 사용한만큼만 비용을 지불합니다.

 

Amazon S3 스토리지클래스 

 

S3 Standard 스토리지 클래스는객체에 대한 고가용성을 제공합니다. 따라서 웹 사이트, 콘텐츠 배포, 데이터분석 등 광범위한 사용사례에 적합합니다.  

S3 Standard-IA는 자주 액세스하지않지만 필요에따라 고가용성이 요구되는 데이터에 이상적입니다. S3 Standard 및 S3 Standard-IA는 모두 최소 3개의 가용영역에 데이터를 저장합니다. S3 Standard-IA는S3 Standard와 동일한 수준의 가용성을 제공하지만 스토리지 가격은 더 저렴하고 검색가격은 더 높습니다.

S3 One Zone-IA는 고가용성이 필요하지않은 액세스빈도가 낮은 데이터에 이상적입니다. 최소 3개의 가용영역에 데이터를 저장하는 S3 Standard 및 S3 Standard-IA와 비교하여 S3 One Zone-IA는단일가용영역에 데이터를 저장합니다.

액세스 패턴을 알 수 없거나 유동적인 데이터가 있는 경우 이 데이터를 S3 Intelligent-Tiering 스토리지 클래스에 저장하는 것이 좋습니다. S3 Intelligent-Tiering 스토리지 클래스에서는 Amazon S3가 객체의 액세스패턴을 모니터링합니다.

Amazon S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, S3 Glacier Deep Archive은 데이터 아카이빙에 이상적인저비용 스토리지클래스입니다. 예를들어 이러한 스토리지 클래스를 사용하여 아카이브된 고객 레코드나 이전의 사진 또는 비디오파일을 저장할 수 있습니다.

 

 

 

 파일 스토리지

파일 스토리지에서는 여러 클라이언트(예: 사용자, 애플리케이션, 서버등)가 공유파일폴더에 저장된 데이터에 액세스할 수 있습니다.

 

Amazon Elastic File System(Amazon EFS)

Amazon EFS)은 AWS 클라우드서비스 및 온프레미스 리소스와 함께 사용되는 확장 가능한 파일시스템입니다. 수천개의 Amazon EC2 인스턴스 가동시에 Amazon EFS에 액세스 할 수 있습니다. Amazon EBS와 Amazon EFS의 차이점 중 하나는 두 서비스가 가용영역 내부 및 여러 가용영역간에 작동하는 방식입니다. Amazon EFS는 기본적으로 여러 가용영역내부 및 여러 가용영역간에 데이터를 저장합니다. 그러므로, 파일시스템이 위치한 리전의 모든 가용 영역에서 동시에 데이터에 액세스 할 수 있습니다. 

 

 

 

 

 

AWS 데이터베이스

 

관계형 데이터베이스

관계형 데이터베이스는 구조화 질의언어(SQL)를 사용하여 데이터를 저장하고 쿼리합니다.

 

 

 

Amazon Relational Database Service (RDS)

 

Amazon RDS는 AWS 클라우드에서 관계형 데이터베이스를 실행할 수 있는 서비스입니다.  Amazon RDS는하드웨어 프로비저닝, 데이터베이스설정, 패치적용 및 백업과 같은 작업을 자동화하는 관리형서비스입니다.

 

Amazon RDS는메모리, 성능또는입/출력(I/O)에최적화된 6개의데이터베이스 엔진에서사용할수있습니다. 

 

 

 

Amazon Aurora

 

Amazon Aurora는 엔터프라이즈급 관계형 데이터베이스입니다. 이 데이터베이스는 MySQL 및 PostgreSQL 관계형 데이터베이스와 호환됩니다. Amazon Aurora Serverless는 표준MySQL 데이터베이스보다 최대 5배 빠르고 표준 PostgreSQL 데이터베이스보다는 최대 3배 빠릅니다. Amazon Aurora는 데이터베이스 리소스의 안정성 및 가용성을 유지하면서 불필요한 입/출력(I/O) 작업을 줄여 데이터베이스 비용을 절감하는데 도움이 됩니다. 워크로드에 고가용성이 필요한 경우 Amazon Aurora를 고려하십시오. 이 데이터베이스는 6개의 데이터복사본을 3개의 가용영역에 복제하고 지속적으로Amazon S3에 데이터를 백업합니다.

 

 

 

 

비관계형 데이터베이스

비관계형 데이터베이스는 행과 열이 아닌 구조를 사용하여 데이터를 구성하기 때문에 이러한 데이터베이스를 ‘NoSQL 데이터베이스’라고도합니다. 비관계형 데이터베이스의 구조적 접근방식 중 한 유형은 키-값페어입니다.

 

 

 

Amazon DynamoDB

 

서버리스 비관게형 데이터베이스입니다. Amazon DynamoDB는 키-값데이터베이스 서비스입니다. 어떤 규모에서도 10밀리초미만의 성능을 제공합니다. DynamoDB는 서버를 사용하지 않으므로 서버를 프로비저닝, 패치적용 또는 관리할 필요가 없습니다. 또한 소프트웨어를 설치, 유지관리, 운영할 필요도 없습니다. 데이터베이스크기가 축소 또는 확장되면 DynamoDB는 용량변화에 맞춰 자동으로 크기를 조정하면서도 일관된 성능을 유지합니다. 

 

 

 

 

 

AWS Database Migration Service (DMS)

AWS Database Migration Service(AWS DMS)를 사용하면 관계형 데이터베이스, 비관계형 데이터베이스 및 기타유형의 데이터스토어를 마이그레이션할 수 있습니다. AWS DMS를 사용하면 원본 데이터베이스와 대상 데이터베이스 간에 데이터를 이동할 수 있습니다. 원본 데이터베이스와 대상 데이터베이스는 유형이 동일할 필요가 없습니다.

 

 

 

 

추가 데이터베이스 서비스

 

 

 

댓글