[AWS] 클라우드 기초2

sso😊·2022년 7월 4일
0

AWS

목록 보기
2/10
post-thumbnail


Job Roles in the Cloud (30m)  

AWS Well-Architected (1h30m)

AWS Foundations: Securing Your AWS Cloud (50m)

AWS Compute Services Overview (40m)

Getting Started with Amazon Simple Storage Service (Amazon S3) (1h)

Introduction to AWS Auto Scaling (17m)

Introduction to Amazon Elastic Load Balancer - Application (15m)

Introduction to Containers (15m)

: 위 aws skill builder 클라우드 기초 강의 요약 내용입니다.




01.Job Roles in the Cloud

Cloud Roles

  • 클라우드 엔터프라이즈 아키텍트
  • 프로그램 관리자
  • 재무 관리자
  • 클라우드 인프라 아키텍트
  • 클라우드 운영 엔지니어
  • 클라우드 보안 아키텍트
  • 보안 운영 엔지니어
  • 애플리케이션 아키텍트
  • 애플리케이션 개발자
  • DevOps 엔지니어

참고 : 

IaC(Infrastructure as Code)

버전관리 제어나 지속적 통합 및 전달(CI/CD)와 같은 코드 및 소프트웨어 개발 기법을 사용하여 인프라를 제공하고 관리하는 방식

→ 개발과 운영을 함께하는 데브옵스( DevOps) 모델을 사용하여 애플리케이션 개발



02.AWS Well-Architected

Well-Architected의 목적

  • 정보에 근거한 의사 결정을 합니다. 
  • 클라우드 네이티브 방식으로 생각합니다.  
  • 잠재적인 영향을 파악합니다. 

Well-Architected 프레임워크를 통해 워크로드 아키텍처를 평가하는 일관된 접근 방식을 제공

Well-Architected의 원칙

  • 운영 우수성 - 비즈니스 가치를 제공 ,코드로 운영 수행, 다양한 환경 사용, 피드백의 반복 , 런북과 플레이북으로 이벤트 준비 및 대응
  • 보안- 위헙평가 및 완화 전략,
    • 자격 증명 및 액세스 관리(IAM,암호, 최소권한, Cognito),
    • 탐지제어(ex.자산 인벤토리 제어
    • 인프라보호(모든 계층에서 트래픽 제어,관리형 서비스 사용)
    • 데이터 보호(전송데이터 암호화),인시던트 대응(템플릿기반 클린룸)
  • 안정성 -장애복구와 요구 충족 성능 효율성(복원력에 초점 )- 컴퓨팅 리소스를 효율적으로 사용
    • 기본 요소(네트워크 토폴로지 계획, 서비스 할당량 및 제약 조건)
    • 워크로드 아키텍처(분산 시스템- MSA)
    • 장애 관리 (백업 및 재해복구DR전략, 안정성 테스트-플레이북 사용, 카오스 엔지니어링, 장애 격리)
    • 변경 관리(워크로드 모니터링, 수요에 따른 조정)
  • 비용 최적화 - 가장 낮은 가격으로 비즈니스 성과 달성
    • 비용 효율적인 리소스(요금 모델: 온디맨드 인스턴스, 예약인스턴스, 스팟인스턴스 등,관리형 서비스)
    • 수요 및 공급 리소스 관리(공급을 수요에 일치: 필요한 양만 프로비저닝, 오토스케일링 등)
    • 지출 관리(정확한 비용 분담: 리소스에 태그 지정, Cost Explorer사용- 비용 분류 및 추적)
    • 시간에 따른 최적화(기존 아키텍처를 재평가)
  • 성능 효율성 - 리소스의 효율적 사용
    • 선택(워크로드에 따른 최적의 서버구성)
    • 검토 (시간이 지남에 따른 변경된 선택사항을 검토 - 로드 테스트,CloudFormation 사용)
    • 모니터링( 자동화 및 성능 경보-CloudWatch, Kinesis, SQS,Lambda 사용)
    • 절충(근접성에 따른 캐싱,읽기전용 복제본 -CloudFront,ElastiCache, RDS 사용)


Well-Architected Tool은 AWS Well-Architected 프레임워크의 모범 사례와 비교하여 측정된 위험영역을 분석해준다. (보고서 생성 및 대시보드,마일스톤 사용 가능)



03.Securing Your AWS Cloud

보안 설계 원칙

     • AWS 클라우드의 보안 설계 원칙

     • AWS 공동 책임 모델

보안 법칙

  1. 최소 권한의 부여
    • 접근권한 부여 
    • 역할의 세분화(업무 분리)
    • 장기 자격증명을 피함
  2. 추적가능성 활성화
    • 모니터링, 공격적인 로그 분석
  3. 모든 계층에 대한 보안
    • 모든 지점에 다양한 보안 구축
  4. 보안 자동화 
    • 사람에 의한 실수를 방지
    • API, 인프라 코드 사용
  5. 전송/저장 데이터 보호
    • 암호화 옵션 사용
    • 사용자 접근을 제어
    • 태깅을 사용해 데이터 분류
  6. 보안 이벤트에 대비
    • 인시던트를 격리(자동)

  7. 공격영역의 최소화
    • AWS shield(무료) 사용

보안 자세(posture)

     • 인증- IAM, AWS Management Console

     • 권한 부여 - Allow or Deny

     • 모니터링 - 얼마나 일을 하는지?, CloudWatch(events/ alarms) 사용

     • 감사 - 실제로 무슨 일을 하는지?, CloudTrail(log) 사용

     • 암호화 - 데이터의 암호화, 서버측/클라이언트측 암호화, Key Management Service

     • 데이터 경로 보안 -VPC(virtual private cloud) 내부 콘텐츠 격리



04.Amazon Simple Storage Service (Amazon S3)

Amazon S3 기본 사항

S3: 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스

+) 순성 및 견고성에 초점을 두는 최소한의 기능 세트를 사용하여 구축

버킷

객체 스토리지:  객체를 버킷에 저장하는 플랫 스토리지 

버킷:  객체를 버킷에 저장하는 플랫 스토리지 구조

객체에 대한 버전 정보를 보존, 수명 주기 관리 정책을 적용

→ 버전 보존과 버킷 크기 및 비용의 균형을 조정할 수 있는 기능O

S3용어

  • 객체 - 파일 및 파일을 설명하는 선택적 메타데이터
  • 키 - 키 이름은 버킷의 객체를 고유하게 식별(버킷의 객체에 대한 전체 경로)
  • 버전 ID - 버전 관리를 활성화하면 고유한 버전 ID를 자동으로 생성

  • 값(size) - 저장하는 실제 콘텐츠

  • 메타데이터

  • 액세스 제어 정보 -  ACL, 버킷정책

태그 사용

태그: AWS 리소스에 할당되는 레이블(키와 선택 사항인 값으로 구성)

버킷태그: 비용 할당 태그를 사용가능

객체태그: 스토리지를 분류하고 쿼리가능

장점:

  • 권한에대한 세분화된 액세스 제어를 사용 가능(IAM사용자에게 권한부여)
  • 태그 기반 필터 사용 가능
  • CloudWatch 지표로 활용 가능

리전

S3는 전 세계적으로 접근할 수 있는 서비스

리전 선택시 리전은 사용자 또는 소비자에게 로컬이어야함

교차 리전 복제(CRR): 여러 리전에 데이터를 저장해야 하는 경우 교차 리전 복제를 사용

동일 리전 복제(SRR): 동일한 AWS 리전의 대상 버킷으로 비동기식으로 자동 복제하도록 지원(실시간 복제 가능)

정적 웹 사이트

정적 웹페이지 호스팅 가능 

→ 개별 웹 페이지에는 자주 변경되지 않는 정적 콘텐츠만 포함

버킷의 목적이 Amazon S3 정적 웹 사이트를 호스팅하는 것이라면 이름에 점(.)을 사용하고, 그렇지 않으면 버킷 이름에 점(.)을 사용하지 않습니다.

Amazon S3 인터페이스

Amazon S3 관리 옵션

  • AWS Management Console- 웹 인터페이스( <=160GB)
  • AWS CLI(명령행 인터페이스)- 명령줄
  • AWS SDK- 언어별 툴 제공, 코딩의 복잡성 감소

REST API 지원

리소스를 고유하게 식별하는 URL이 존재

→ 경로 스타일 URL(중단예정)과 가상 호스팅 스타일 URL의 두 가지 주소 지정 모델을 지원

DNS 요청

Domain Name System(DNS)을 사용하여 요청을 처리할 수 있는 시설로 요청을 라우팅

→ 임시리디렉션: DNS의 Amazon S3 엔드포인트와 연결된 IP 주소를 업데이트(잘못된 리전으로 라우팅 된경우←  고가용성 위해)


데이터 관리 및 보안

데이터 관리

성능이나 가용성을 변경, 지역적  분리와 추가 비용 없이 모든 애플리케이션에 대해 강력한 일관성 제공

AWS Management Console : AWS Multi-Factor Authentication을 활성화 가능(추가보안)

CLI 사용:

  • 상위수준 명령 - Amazon S3 객체를 간편하게 관리가능
  • 하위 수준 명령 -  s3api 명령 집합을 사용하며 Amazon S3 API에 직접 액세스가능(JSON 모델)

멀티파트 업로드: 단일 객체(~5GB)를 여러 부분의 집합으로 업로드 가능(~5TB)

객체 수명 주기 관리: 불완전한 멀티파트 업로드를 자동으로 정리(저장비용 최소화)

데이터 마이그레이션

온라인 데이터 전송 서비스(To Amazon S3)

  • AWS DataSync - 온프레미스 스토리지와 Amazon S3 사이에서 많은 양의 데이터
  • AWS Transfer Family -파일을 직접 송수신할 수 있는 완전관리형 지원
  • Amazon S3 Transfer Acceleration - 장거리에 걸친 안전한 파일 전송
  • Amazon Kinesis Data Firehose - 완전 관리형 스트리밍 서비스
  • Amazon Kinesis Data Streams - 특수 요구에 맞춰 스트리밍 데이터를 처리 또는 분석
  • Amazon 파트너 네트워크 - 서드 파티 커넥터를 사용

오프라인 데이터 전송 서비스

  • AWS Snowcone - 8TB
  • AWS Snowball- Snowball Edge Storage Optimized / Snowball Edge Compute optimized
  • AWS Snowmobile(엑사바이트 규모의 데이터 전송 서비스- 초대용량)

하이브리드 클라우드 스토리지

  • AWS Direct Connect- 온프레미스 데이터 센터에서 AWS로 연결되는 전용 네트워크 연결(인터넷X)
  • AWS Storage Gateway - NFS(또는 SMB 프로토콜을 사용하여 Amazon S3 버킷을 로컬 캐싱과 연결

비관리형 마이그레이션 도구

  •  rsync와 기타 서드 파티 파일 시스템 도구
  • Amazon S3와 AWS CLI

데이터 액세스 보안

보안은 Amazon S3의 모든 계층에 적용

최소 권한 원칙에 따른 설계 필요

퍼블릭 액세스 차단 기능 : 데이터를 공개적으로 사용할 수 없도록

BPA 옵션

  • 모든 퍼블릭 액세스 차단
  • 새 ACL을 통해 부여된 퍼블릭 액세스 차단
  • ACL을 통해 부여된 퍼블릭 액세스 차단
  • 새로운 퍼블릭 버킷 정책을 통해 허용된 퍼블릭 액세스 차단

  • 퍼블릭 버킷 정책을 통해 부여된 퍼블릭 및 교차 계정 액세스 차단

  • 퍼블릭 버킷 정책을 통해 부여된 퍼블릭 및 교차 계정 액세스 차단

액세스 정책

누가 어떤 리소스에 액세스할 수 있는지(JSON 형식)

  • 버킷 정책, 액세스 제어목록 → 리소스 기반 정책
  • 사용자 정책, IAM정책 → 사용자기반 정책

버킷정책(보안주체 지정)을 사용해야 하는 경우:

  • IAM 정책에 제한이 생긴 경우
  • 다른 계정의 사용자에게 교차 계정 권한을 부여하는 경우

IAM 사용자 정책을 사용해야 하는 경우

  • 중앙집중식 관리가 필요할 때(S3제외 서비스까지)

데이터 암호화

전송 중 데이터 보호 → Amazon S3 안팎으로 이동하는 데이터

저장 시 데이터 보호→ Amazon S3 데이터 센터의 디스크에 데이터가 저장된 동안

서버 측 암호화

  • SSE-S3 - Amazon S3 관리 키를 사용
  • SSE-KMS -  CMK(고객 마스터 키)를 사용
  • SSE_C - 고객 제공 키를 사용

클라이언트 측 암호화

Amazon S3로 보내기 전에 민감한 데이터를 암호화(로컬에서 수행)

S3 서비스 통합

다양한 서비스 및 사용 사례와 광범위하게 통합

  • 데이터 레이크- 모든 정형 및 비정형 데이터를 무제한으로 마이그레이션, 저장 및 관리할 수 있는 중앙 집중식 리포지토리
    • 컴퓨팅에서 스토리지 분리
    • 중앙 집중식 데이터 아키텍처
    • 클러스터리스 및 서버리스 AWS 서비스와의 통합

    • 표준화된 API

  • 고성능 컴퓨팅


05.AWS Auto Scaling

개요

여러 확장 가능한 AWS 리소스를 단일 인터페이스에서 중앙식으로 자동 조정


대상 서비스: EC2, ECS, DynamoDB, EMR, Aurora, AppStream

→  Auto Scaling  group으로 묶어 플릿 관리 기능 및 동적 조정 정책을 사용 가능


단계: CloudFormation에서 스택 선택 → 확장 가능한 서비스 탐색 → 자동조정 계획 및 전략 수립

장점

  • 단일 인터페이스로 사용 가능(EC2, DynamoDB 함께 조정가능)
  • 서로 다른 리소스 그룹에서 규모 저장 계획 수립 가능
  • 워크로드가 변해도 최적의 성능과 가용성을 유지 가능(모니터링)
  • 무료 서비스


주요개요기능


  • 대상 추정 조정 정책 - 축정치의 목표값에 가깝게 유지



06.Amazon Elastic Load Balancer

세 개의 AWS Load Balancer 중 하나 (NLB, CLB, ALB,게이트웨이 로드 밸런서)

개요

CLB의 모든 기능과 향상된 추가 기능을 지원(ex. 지표 추가, 프로토콜 향상 등)

기능: 컨테이너를 사용하여 마이크로 서비스를 호스팅하고 단일 로드 밸런서에서 해당 애플리케이션으로 라우팅(→ 포트마다 경로가 다름)


  • 리스너
  • 타겟(대상)
  • 타겟 그룹 - 타겟(대상)이 등록되는 방식



07.Containers

표준화된 소프트웨어 단위

도커: 경량 컨테이너 가상화 플랫폼(이동식 , 동시에 실행, 효율성)

이미지: 컨테이너용 템플릿

MSA: 마이크로 서비스 아키텍처(분산적, 진화적)






0개의 댓글