::AWS:: Cloud Practitioner(모듈1-5) #1

MinJeongKim·2024년 8월 7일
0

1. Intro

  • 클라우드 컴퓨팅 배포 모델
    - 클라우드 기반 배포
    : 애플리케이션의 모든 부분을 클라우드에서 실행
    : 기존 애플리케이션을 클라우드로 마이그레이션
    : 클라우드에서 새 애플리케이션을 설계 및 빌드

    - 온프레미스 배포
    : 가상화 및 리소스 관리 도구를 사용하여 리소스를 배포
    : 애플리케이션 관리 및 가상화 기술을 사용하여 리소스 활용도를 높임

    - 하이브리드 배포
    : 클라우드 기반 리소스를 온프레미스 인프라에 연결
    : 클라우드 기반 리소스를 레거시 IT 애플리케이션과 통합
    ex) 온프레미스에서 더 잘 유지 관리되는 레거시 애플리케이션이 있거나 정부 규정에 따라 비즈니스에서 특정 레코드를 온프레미스에 보관해야 하는 경우

  • 클라우드 컴퓨팅의 이점
    - 선행 비용을 가변 비용으로 대체
    - 데이터 센터 운영 및 유지 관리에 비용 투자 불필요
    - 용량 추정 불필요
    - 규모의 경제로 얻게 되는 이점
    - 속도 및 민첩성 향상
    - 몇 분 만에 전 세계에 배포

2. 클라우드 컴퓨팅

  • Amazon EC2 인스턴스 유형
    - 범용 인스턴스
    : 컴퓨팅, 메모리, 네트워킹 리소스를 균형 있게 제공
    : 애플리케이션 서버, 게임 서버, 엔터프라이즈 애플리케이션용 백엔드 서버, 중소 규모 데이터베이스

    - 컴퓨팅 최적화 인스턴스
    : 고성능 프로세서를 활용하는 컴퓨팅 집약적인 애플리케이션에 적합
    : 컴퓨팅 최적화 인스턴스는 웹 서버, 애플리케이션 서버, 게임 서버와 같은 워크로드에 사용할 수 있지만 고성능 웹 서버, 컴퓨팅 집약적 애플리케이션 서버 및 게임 전용 서버에 적합하다는 점이 다름
    : 단일 그룹에서 많은 트랜잭션을 처리해야 하는 일괄 처리 워크로드에 사용

    - 메모리 최적화 인스턴스
    : 메모리에서 대규모 데이터 세트를 처리하는 워크로드를 위한 빠른 성능을 제공하기 위해 설계됨

    - 액셀러레이티드 컴퓨팅 인스턴스
    : 하드웨어 액셀러레이터 또는 코프로세서를 사용하여 일부 기능을 CPU에서 실행되는 소프트웨어에서보다 더 효율적으로 수행
    : 기능의 예로 부동 소수점 수 계산, 그래픽 처리, 데이터 패턴 일치가 있음
    : 그래픽 애플리케이션, 게임 스트리밍, 애플리케이션 스트리밍과 같은 워크로드에 적합

    - 스토리지 최적화 인스턴스
    : 로컬 스토리지의 대규모 데이터 세트에 대한 순차적 읽기 및 쓰기 액세스가 많이 필요한 워크로드를 위해 설계
    : 적합한 예로는 분산 파일 시스템, 데이터 웨어하우징 애플리케이션, 고빈도 온라인 트랜잭션 처리(OLTP) 시스템 등이 있음
    : 스토리지 최적화 인스턴스는 지연 시간이 짧은 임의 IOPS를 애플리케이션에 제공하도록 설계되었음
    * IOPS(초당 입출력 작업 수): 스토리지 디바이스의 성능을 측정하는 지표

  • Amazon EC2 요금
    - 온디맨드
    : 중단할 수 없는 불규칙한 단기 워크로드가 있는 애플리케이션에 매우 적합
    : 선결제 비용이나 최소 약정은 적용되지 않으며 인스턴스는 중지될 때까지 계속 실행됨(사용한 컴퓨팅 시간에 대해서만 비용을 지불)
    : 온디맨드 인스턴스는 1년 이상 지속되는 워크로드에는 권장하지 않음, 예약 인스턴스를 사용하면 비용 절감 효과가 더 크기 때문

    - Amazon EC2 Savings Plans
    : 1년 또는 3년 기간 동안 일정한 컴퓨팅 사용량을 약정하여 컴퓨팅 비용을 절감할 수 있음
    : 약정 사용량까지는 할인된 Savings Plan 요금이 청구되며 약정을 초과한 사용량에 대해서는 일반 온디맨드 요금이 부과되는 방식

    - 예약 인스턴스
    : 계정에서 온디맨드 인스턴스를 사용할 때 적용되는 결제 할인 옵션
    : 표준 예약 및 컨버터블 예약 인스턴스는 1년 또는 3년 약정으로, 정기 예약 인스턴스는 1년 약정으로 구입할 수 있음(3년 약정 옵션을 통해 더 큰 비용 절감 혜택을 받을 수 있다.)
    : 약정 기간이 끝나면 중단 없이 Amazon EC2 인스턴스를 계속 사용할 수 있으나 인스턴스 종료, 인스턴스 속성과 일치하는 새 예약 인스턴스를 구입 중 하나를 수행할 때까지는 온디맨드 요금이 부과됨.

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

    - 전용 호스트
    : 사용자 전용의 Amazon EC2 인스턴스 용량을 갖춘 물리적 서버
    : 기존 소켓당, 코어당 또는 VM당 소프트웨어 라이선스를 사용하여 라이선스 규정 준수를 유지할 수 있고 Amazon EC2 옵션 중에서 전용 호스트가 가장 비용이 많이 든다.

  • Amazon EC2 Auto Scaling
    - 변화하는 애플리케이션 수요에 따라 Amazon EC2 인스턴스를 자동으로 추가하거나 제거할 수 있고, 필요에 따라 인스턴스를 자동으로 조정하여 애플리케이션 가용성을 효과적으로 유지할 수 있음.
    - 동적 조정(수요 변화에 대응), 예측 조정(예측된 수요에 따라 적절한 수의 Amazon EC2 인스턴스를 자동으로 예약)이라는 두 가지 접근 방식을 사용
    - Auto Scaling 그룹의 크기를 구성할 때 최소 Amazon EC2 인스턴스 수를 1로 설정할 수 있음.
    - Auto Scaling 그룹에서 희망 Amazon EC2 인스턴스 수를 지정하지 않으면 희망 용량은 기본적으로 최소 용량으로 설정된다.

  • Elastic Load Balancing
    - 들어오는 애플리케이션 트래픽을 Amazon EC2 인스턴스와 같은 여러 리소스에 자동으로 분산하는 AWS 서비스
    - Elastic Load Balancing과 Amazon EC2 Auto Scaling은 별도의 서비스이지만 서로 연동하여 Amazon EC2에서 실행되는 애플리케이션이 뛰어난 성능과 가용성을 제공한다.

  • Amazon Simple Notification Service(Amazon SNS)
    - 게시/구독 서비스로 게시자는 Amazon SNS 주제를 사용하여 구독자에게 메시지를 게시한다.
    - 구독자는 웹 서버, 이메일 주소, AWS Lambda 함수 또는 그 밖의 여러 옵션이 될 수 있음

  • Amazon Simple Queue Service(Amazon SQS)
    - 메시지 대기열 서비스로 메시지 손실이나 다른 서비스 사용 없이 소프트웨어 구성 요소 간에 메시지를 전송, 저장, 수신할 수 있다.
    - Amazon SQS에서는 애플리케이션이 메시지를 대기열로 전송하고 사용자 또는 서비스는 대기열에서 메시지를 검색하여 처리한 후 대기열에서 삭제한다.

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

  • AWS 컨테이너 서비스
    : 컨테이너는 애플리케이션의 코드와 종속성을 하나의 객체로 패키징하는 표준 방식을 제공하며 보안성, 안정성, 확장성 요구 사항이 매우 중요한 프로세스 및 워크플로에도 컨테이너를 적용한다.

    - Amazon Elastic Container Service(Amazon ECS)
    : AWS에서 컨테이너식 애플리케이션을 실행하고 확장할 수 있는 확장성이 뛰어난 고성능 컨테이너 관리 시스템
    : Docker 컨테이너를 지원하며 오픈 소스 Docker Community Edition 및 구독 기반 Docker Enterprise Edition의 사용을 지원
    : Amazon ECS에서는 API 호출을 사용하여 Docker 지원 애플리케이션을 시작 및 중지할 수 있음

    - Amazon Elastic Kubernetes Service(Amazon EKS)
    : Kubernetes를 실행하는 데 사용할 수 있는 완전 관리형 서비스
    : 자원자로 구성된 대규모 커뮤니티에서 Kubernetes를 유지 관리하며, AWS는 Kubernetes 커뮤니티와 적극적으로 협력한다.

    - AWS Fargate
    : 컨테이너용 서버리스 컴퓨팅 엔진으로, Amazon ECS와 Amazon EKS에서 작동한다.
    : AWS Fargate를 사용하는 경우 서버를 프로비저닝하거나 관리할 필요가 없으며 자동으로 서버 인프라를 관리한다.

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

  • AWS 글로벌 인프라
    - 리전: AWS가 전 세계에서 데이터 센터를 클러스터링하는 물리적 위치를 말함
    - 리전 선택
    : 데이터 거버넌스 및 법적 요구 사항 준수
    : 고객과의 근접성
    : 리전 내에서 사용 가능한 서비스
    : 요금(서비스 비용이 리전마다 다를 수 있음)

    - 가용영역
    : 리전 내의 단일 데이터 센터 또는 데이터 센터 그룹
    : 가용 영역은 서로 수십 마일 떨어져 있으나 이 간격은 가용 영역 간의 지연 시간(콘텐츠가 요청된 시점과 수신된 시점 간의 차이)이 짧을 정도로 충분히 가까움. 그러나 리전의 한 부분에서 재해가 발생할 경우 여러 가용 영역이 영향을 받을 가능성을 줄일 만큼 멀리 떨어져 있음

    - 엣지 로케이션
    : Amazon CloudFront가 더 빠른 콘텐츠 전송을 위해 고객과 가까운 위치에 콘텐츠 사본을 캐시하는 데 사용하는 사이트
    : Amazon CloudFront는 엣지 로케이션의 캐시에서 해당 파일을 검색하여 고객에게 보다 빠르게 파일을 전달할 수 있음

4. 네트워킹

  • Amazon Virtual Private Cloud(Amazon VPC)
    - VPC를 사용하여 AWS 클라우드의 격리된 섹션을 프로비저닝 할 수 있음
    - 한 Virtual Private Cloud(VPC) 내에서 여러 서브넷으로 리소스를 구성할 수 있다.
    - 서브넷: 리소스(예: Amazon EC2 인스턴스)를 포함할 수 있는 VPC 섹션
    - 인터넷의 퍼블릭 트래픽이 VPC에 액세스하도록 허용하려면 인터넷 게이트웨이를 VPC에 연결한다.

  • 가상 프라이빗 게이트웨이
    - VPC 내의 비공개 리소스에 액세스할 때 사용
    - 가상 프라이빗 게이트웨이를 사용하면 VPC와 프라이빗 네트워크(예: 온프레미스 데이터 센터 또는 회사 내부 네트워크) 간에 가상 프라이빗 네트워크(VPN) 연결을 설정할 수 있음
    - 승인된 네트워크에서 나오는 트래픽만 VPC로 들어가도록 허용

  • AWS Direct Connect
    - 데이터 센터와 VPC 간에 비공개 전용 연결을 설정하는 서비스
    - AWS Direct Connect가 제공하는 비공개 연결은 네트워크 비용을 절감하고 네트워크를 통과할 수 있는 대역폭을 늘리는 데 도움이 됨

  • 서브넷
    - 퍼블릭 서브넷: 누구나 액세스할 수 있어야 하는 리소스가 포함
    - 프라이빗 서브넷: 고객의 개인 정보 및 주문 내역이 포함된 데이터베이스와 같이 프라이빗 네트워크를 통해서만 액세스할 수 있는 리소스가 포함
    - VPC 내에서 서브넷은 서로 통신할 수 있음

  • 네트워크 ACL(액세스 제어 목록)
    - 네트워크 ACL(액세스 제어 목록)은 서브넷 수준에서 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽
    - 각 AWS 계정에는 기본 네트워크 ACL이 포함되며 VPC를 구성할 때 계정의 기본 네트워크 ACL을 사용하거나 사용자 지정 네트워크 ACL을 생성할 수 있음
    - 계정의 기본 네트워크 ACL: 기본적으로 모든 인바운드 및 아웃바운드 트래픽을 허용하지만 사용자가 자체 규칙을 추가하여 수정할 수 있다.
    - 사용자 지정 네트워크 ACL: 사용자가 허용할 트래픽을 지정하는 규칙을 추가할 때까지 모든 인바운드 및 아웃바운드 트래픽을 거부한다.
    - 모든 네트워크 ACL에는 명시적 거부 규칙이 있으며 이 규칙은 패킷이 목록의 다른 모든 규칙과 일치하지 않으면 해당 패킷이 거부되도록 함
    - 상태 비저장 패킷 필터링 수행 즉, 아무것도 기억하지 않고 각 방향(인바운드 및 아웃바운드)으로 서브넷 경계를 통과하는 패킷만 확인 함

  • 보안 그룹
    - 패킷에서 Amazon EC2 인스턴스에 대한 권한을 확인하는 VPC 구성 요소
    - Amazon EC2 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽
    - 기본적으로 보안 그룹은 모든 인바운드 트래픽을 거부하고 모든 아웃바운드 트래픽을 허용함.
    - 사용자 지정 규칙을 추가하여 허용 또는 거부할 트래픽을 구성 할 수 있음
    - 서브넷 내에 여러 Amazon EC2 인스턴스가 있는 경우 동일한 보안 그룹에 연결하거나 각 인스턴스마다 서로 다른 보안 그룹을 사용할 수 있다.
    - 보안 그룹은 상태 저장 패킷 필터링을 수행 즉, 들어오는 패킷에 대한 이전 결정을 기억하고 허용된 패킷은 인바운드 보안 그룹 규칙에 관계없이 응답이 진행하도록 함

  • Amazon Route 53
    - DNS 웹 서비스로 개발자와 비즈니스가 최종 사용자를 AWS에서 호스팅되는 인터넷 애플리케이션으로 라우팅할 수 있는 안정적인 방법을 제공한다.
    - 사용자 요청을 AWS에서 실행되는 인프라(예: Amazon EC2 인스턴스 및 로드 밸런서)에 연결하며 사용자를 AWS 외부의 인프라로 라우팅할 수 있음
    - 도메인 이름의 DNS 레코드를 관리하는 기능이 있으며 직접 새 도메인 이름을 등록할 수 있음
    - 다른 도메인 등록 대행자가 관리하는 기존 도메인 이름의 DNS 레코드를 전송할 수도 있으며 그러면 단일 위치에서 모든 도메인 이름을 관리할 수 있다.

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

  • Amazon Elastic Block Store(Amazon EBS)
    - Amazon EC2 인스턴스에서 사용할 수 있는 블록 수준 스토리지 볼륨을 제공하는 서비스로 Amazon EC2 인스턴스를 중지 또는 종료하더라도 연결된 EBS 볼륨의 모든 데이터를 사용할 수 있음
    - EBS 볼륨을 생성하려면 구성(예: 볼륨 크기 및 유형)을 정의하고 볼륨을 프로비저닝, 볼륨 생성 후 Amazon EC2 인스턴스에 연결할 수 있다.
    - EBS 볼륨은 보존해야 하는 데이터를 위한 것이므로 데이터 백업이 중요하며 스냅샷을 생성하여 EBS 볼륨을 증분 백업할 수 있다.
    - 증분 백업? 처음 볼륨을 백업하면 모든 데이터가 복사되고 이후의 백업에서는 가장 최근의 스냅샷 이후 변경된 데이터 블록만 저장된다.

  • Amazon Simple Storage Service(Amazon S3)
    - 객체 수준 스토리지를 제공하는 서비스로 데이터를 버킷에 객체로 저장
    - 이미지, 동영상, 텍스트 파일 등 모든 유형의 파일을 업로드할 수 있음
    - Amazon S3는 저장 공간을 무제한으로 제공하며 저장할 수 있는 객체의 최대 파일 크기는 5TB

  • Amazon S3 스토리지 클래스
    - Amazon S3에서는 사용한 만큼만 비용을 지불하며 비즈니스 및 비용 요구 사항에 맞춰 다양한 스토리지 클래스 중 (데이터를 검색할 빈도, 필요한 데이터 가용성) 고려하여 선택
    - S3 Standard
    : 객체에 대한 고가용성을 제공하고, 웹 사이트, 콘텐츠 배포, 데이터 분석 등 광범위한 사용 사례에 적합하다.
    : 자주 액세스하는 데이터용으로 설계
    : 최소 3개의 가용 영역에 데이터를 저장

    - S3 Standard-Infrequent Access(S3 Standard-IA)
    : 자주 액세스하지 않지만 고가용성을 요구하는 데이터에 이상적
    : S3 Standard와 비슷하지만 스토리지 가격은 더 저렴하고 검색 가격은 더 높음

    - S3 One Zone-Infrequent Access(S3 One Zone-IA)
    : 단일 가용 영역에 데이터를 저장
    : S3 Standard-IA보다 낮은 스토리지 가격
    : 스토리지 비용을 절감하려는 경우 또는 가용 영역 장애가 발생할 경우 데이터를 손쉽게 재현할 수 있는 경우 이상적

    - S3 Intelligent-Tiering
    : 액세스 패턴을 알 수 없거나 자주 변화하는 데이터에 이상적
    : 객체당 소량의 월별 모니터링 및 자동화 요금을 부과
    : 사용자가 30일 연속 객체에 액세스하지 않으면 Amazon S3는 자동으로 S3 Standard-IA로 이동, 사용자가 자주 사용하지 않는 액세스 계층에 저장된 객체에 액세스하면 Amazon S3는 자동으로 해당 객체를 S3 Standard로 이동 시킨다.
    - S3 Glacier
    : 데이터 보관용으로 설계된 저비용 스토리지
    : 객체를 몇 분에서 몇 시간 이내에 검색

    - S3 Glacier Deep Archive
    : 보관에 이상적인 가장 저렴한 객체 스토리지 클래스
    : 객체를 12시간 이내에 검색

  • Amazon Elastic File System(Amazon EFS)
    - AWS 클라우드 서비스 및 온프레미스 리소스와 함께 사용되는 확장 가능한 파일 시스템
    - 파일을 추가 또는 제거하면 Amazon EFS가 자동으로 확장하거나 축소되고, 애플리케이션을 중단하지 않고 온디맨드로 페타바이트 규모로 확장할 수 있다.

  • EBS VS EFS 차이

    • EBS
      : Amazon EBS 볼륨은 단일 가용 영역에 데이터를 저장합니다.
      : Amazon EC2 인스턴스를 EBS 볼륨에 연결하려면 Amazon EC2 인스턴스와 EBS 볼륨 모두 동일한 가용 영역에 상주해야 합니다.

    • EFS
      : Amazon EFS는 리전별 서비스입니다. 이 서비스는 여러 가용 영역에 걸쳐 데이터를 저장합니다.
      : 중복 스토리지를 사용하면 파일 시스템이 위치한 리전의 모든 가용 영역에서 동시에 데이터에 액세스할 수 있습니다. 또한 온프레미스 서버는 AWS Direct Connect를 사용하여 Amazon EFS에 액세스할 수 있습니다.

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

    - Amazon RDS 데이터베이스 엔진
    : Amazon Aurora
    : PostgreSQL
    : MySQL
    : MariaDB
    : Oracle Database
    : Microsoft SQL Server

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

  • Amazon DynamoDB
    - 키-값 구성된 비관계형 데이터베이스
    - 모든 규모에서 한 자릿수 밀리초의 성능을 제공한다.

    - 서버리스
    : DynamoDB는 서버를 사용하지 않으므로 서버를 프로비저닝, 패치 적용 또는 관리할 필요가 없음
    : 소프트웨어를 설치, 유지 관리, 운영할 필요도 없다.

    - 자동조정
    : 데이터베이스 크기가 축소 또는 확장되면 DynamoDB는 용량 변화에 맞춰 자동으로 크기를 조정하면서도 일관된 성능을 유지한다.
    : 크기를 조정하는 동안에도 고성능이 필요한 사용 사례에 적합한 선택

  • Amazon Redshift
    - 데이터 분석에 사용할 수 있는 데이터 웨어하우징 서비스
    - 여러 원본에서 데이터를 수집하여 데이터 간의 관계 및 추세를 파악하는 데 도움이 되는 기능을 제공

  • AWS Database Migration Service(AWS DMS)
    - 관계형 데이터베이스, 비관계형 데이터베이스 및 기타 유형의 데이터 저장소를 마이그레이션할 수 있는 서비스
    - 원본 데이터베이스와 대상 데이터베이스 간에 데이터를 이동할 수 있다.
    - 마이그레이션하는 동안 원본 데이터베이스가 계속 작동하므로 데이터베이스를 사용하는 애플리케이션의 가동 중지 시간을 줄일 수 있음

  • 추가 데이터베이스 서비스
    - Amazon DocumentDB: MongoDB 워크로드를 지원하는 문서 데이터베이스 서비스
    - Amazon Neptune: 그래프 데이터베이스 서비스, 추천 엔진, 사기 탐지, 지식 그래프와 같이 고도로 연결된 데이터 세트로 작동하는 애플리케이션을 빌드하고 실행
    - Amazon Quantum Ledger Database(Amazon QLDB): 원장 데이터베이스 서비스로 애플리케이션 데이터에 발생한 모든 변경 사항의 전체 기록을 검토할 수 있음
    - Amazon Managed Blockchain: 오픈 소스 프레임워크를 사용하여 블록체인 네트워크를 생성하고 관리하는 데 사용할 수 있는 서비스
    - Amazon ElastiCache: 자주 사용되는 요청의 읽기 시간을 향상시키기 위해 데이터베이스 위에 캐싱 계층을 추가하는 서비스, 두 가지 데이터 저장소 Redis 및 Memcached를 지원
    - Amazon DynamoDB Accelerator: (=) DAX는 DynamoDB용 인 메모리 캐시, 응답 시간을 한 자릿수 밀리초에서 마이크로초까지 향상시킬 수 있음

출처 : https://explore.skillbuilder.aws/learn/course/1928/play/6248/aws-cloud-practitioner-essentials-korean "AWS Cloud Practitioner Essentials"

profile
웹 개발자 & DA

0개의 댓글

관련 채용 정보