풀스택 웹🌐 개발자 지망생 🧑🏽‍💻
➕ 인공지능 관심 🤖


Categories


Recent views

  • 1
  • 2
  • 3
  • 4
  • 5

AWS로 시작하는 클라우드 컴퓨팅 정리

  1. 01 아마존 웹 서비스 Cloud 개요
  2. 02 AWS 주요 서비스 이해하기
  3. 03 AWS 주요 제품 이해하기
  4. 04 AWS 서버 이해하기
  5. 05 AWS 스토리지 활용하기
  6. 06 AWS 데이터베이스 서버 만들기
  7. 07 AWS 고가용성 로드 밸런싱 구축하기
  8. 08 AWS 분석 이해하기
  9. 09 AWS 블록체인 활용하기
  10. 10 AWS 사물인터넷 서비스
  11. 11 AWS 기계학습
  12. 12 AWS 자습서

AWS로 시작하는 클라우드 컴퓨팅

01 아마존 웹 서비스 Cloud 개요

클라우드 컴퓨팅(Cloud Computing)

  • 클라우드 컴퓨팅이란, 인터넷 기반 컴퓨팅의 일종으로 구성 가능한 컴퓨팅 자원에 대해 어디서나 접근이 가능한, 주문형접근을 가능케 하는 모델이며, 최소한의 관리 노력으로 빠르게 예비 및 릴리스를 가능케 함

  • On-premise는 사용자가 직접 인프라, 플랫폼, 애플리케이션을 관리하는 모델이며, 가장 일반적인 유형의 클라우드 서비스이며, 서비스를 제공하는 곳에서 인프라, 소프트웨어까지 모두 제공, 즉 어플리케이션 레벨까지 서비스로 제공되는 것은 Saas(Software as a Service)이다.

  • 이외에도 IaaS, PaaS 등이 존재한다.

  • 클라우드 컴퓨팅과 스토리지 솔루션들은 사용자와 기업들에게 개인 소유나 타사 데이터 센터의 데이터를 저장, 가공하는 다양한 기능을 제공, 전세계로 위치했으며, 전기망 등의 일관성 및 규모의 경제를 달성하기 위해 자원의 공유에 의존

    클라우드 서비스 설명
    On-premise(Traditional IT) 사용자가 직접 인프라, 플랫폼, 애플리케이션을 관리하는 모델, 규모있는 업체라면 직접 IDC를 구축하고, 일반적인 경우 IDC에 공간을 할당 받아 물리서버를 설치하고 하드웨어, 운영체제, 서버 어플리케이션을 모두 관리함
    IaaS(Infrastructure as a Service) AWS EC2, 가상 서버, 데이터 스토리지 및 호스팅 컴퓨터, 네트워크 등 IT 인프라를 지원해주는 서비스로 하드웨어를 서비스로 제공하는 클라우드 모델, OS와 애플리케이션을 관리함
    PaaS(Platform as a Service) AWS Elastic Beanstalk, 기본적인 IaaS는 물론 개발툴과 기능, 애플리케이션 배포까지 제공하며 개발자가 애플리케이션을 개발하고 배포하는데 필요한 모든 것을 제공함, 개발자는 애플리케이션과 서비스로 제공되는 기능을 연결하는 로직을 작성해야 함
    SaaS(Software as a Service) Google Apps, Office365, 가장 일반적인 유형의 클라우드 서비스이며, 서비스를 제공하는 곳에서 인프라와 소프트웨어까지 모두 제공, 즉 애플리케이션 레벨까지 서비스로 제공됨, 개발자보다는 실사용자에게 바로 제공함

    아마존 웹 서비스(Amazon Web Services)

1. AWS를 이용한 클라우드 컴퓨팅

  • 전세계적으로 분포한 데이터 센터에서 165개가 넘는 완벽한 기능의 서비스를 제공하는 세계적으로 가장 포괄적이며, 널리 채택되고 있는 클라우드 플랫폼

  • 빠르게 성장하는 스타트업, 가장 큰 규모의 엔터프라이즈, 주요 정부 기관을 포함해 수백만 고객이 인프라 강화하고 민첩성을 향상시키며, 비용을 절감 중

  • 웹, 모바일, 빅데이터 프로젝트, 소셜 게임, 모바일 앱에 이르기까지 거의 모든 물리적인 컴퓨팅 자원을 클라우드를 통해 실행 가능한 인프라 및 애플리 케이션 서비스 집합을 제공중,

  • 컴퓨팅, 스토리지, 데이터베이스, 네트워킹, 분석, 기계학습, AI, IoT, 보안, 애플리케이션 개발, 배포 및 관리 가능, 포괄적일 뿐만아니라 심층적인 기능 지원,

  • 쉽고 빠른 확장성, 안전성, 보안성 검증됨, 선 비용, 장기 약정 없이 사용하는 만큼만 지불

  • 이를 통해 조직이 더 빠르고 저비용으로 움직이며 성장 가능

    AWS 주요 서비스

    1. 클라우드 제품

  • 분석, 데이터 베이스, 마이그레이션 및 전송, 개발자 도구, 모바일, 로보틱스, 애플리케이션 통합, 최종 사용자 컴퓨팅, 게임 기술, 증강 현실 및 가상 현실, 블록체인, 컴퓨팅, 스토리지, 위성, 기계 학습 등 수많은 세부 카테고리를 확인 가능하다.

    AWS 보안

    1. 보안, 자격 증명 및 규정 준수 제품

  • AWS에서 가장 높은 우선 순위는 클라우드 보안

  • AWS 고객은 위험에 가장 민감한 조직의 요구 사항에 부합하도록 구축된 데이터 센터 및 네트워크 아키텍처의 혜택을 누릴 수 있음

  • AWS 아티팩트 : 규정 준수 보고서

  • AWS Certificate Manager : SSL/TLS 인증서

  • AWS CloudHSM : 키 스토리지 및 관리

  • Amaszon Cognito : 사용자 가입 및 로그인 기능

  • Amazon GuardDuty : 위협 탐지

  • AWS Shield : DDoS 보호

  • 등의 보안 제품 관련이 있다

AWS 아키텍처

1. AWS 산업용 예측 유지 보수 기계 학습 모델

  • AWS IoT SiteWise 및 AWS IoT Analytics를 Amazon SNS 이상 탐지 알림과 함께 사용하여 예측 유지 보수(PdM) 기계 학습(ML)모델을 생성
    2. AWS 산업용 예측 유지 보수 기계 학습 모델과 이상 탐지

  • Amazon SageMaker와 Amazon Kinesis Data Analytics를 활용해 예측 유지 보수 가능

    AWS 참조 아키텍처

  • 유연성이 크기 때문에 원하는 방식으로 설계 가능, AWS 참조 아키텍처 데이터 시트는 AWS 클라우드를 활용하여 애플리케이션을 구축하는데 필요한 아키텍처 지침을 제공한다.

  • ex) 웹 애플리케이션 호스팅 : 확장성과 신뢰성이 매우 높은 웹 또는 모바일 웹 애플리케이션을 구축

  • ex) 콘텐츠 및 미디어 서빙 : 엄청난 양의 콘텐츠와 미디어를 서비스하는 신뢰성 높은 시스템을 구축

  • 이외에도 일괄처리, 내결함성 및 HA, 대고뮤 컴퓨팅, 광고 지원, 로컬 애플리케이션을 위한 DR(w재해복구) 솔루션, 파일 동기화, 전자 상거래 웹 사이트 :프론트엔드, 결제서비스, 마케팅, 추천, 시계열 데이터 처리 등의 아키텍처가 있다.

    02 AWS 주요 서비스 이해하기

    Amazon Elastic Compute Cloud(EC2)

  • 클라우드의 가상 서버, 안전하고 크기 조정이 가능한 컴퓨팅 파워를 클라우드에서 제공

  • 웹 서비스 인터페이스를 통해 간편하게 필요한 용량을 얻고 구성 가능, 컴퓨팅 리소스에 대한 포괄적인 제어권을 제공, 검증된 컴퓨팅 인프라에서 실행 가능

  • 새로운 서버 인스턴스를 획득하고 부팅하는데 필요한 시간을 단 몇 분으로 단축하므로 컴퓨팅 요구 사항의 변화에 따라 신속하게 용량을 확장하거나 축소 가능

  • 개발자가 장애에 대한 복원력이 뛰어나고 일반적인 오류 상황에 영향을 받지않는 애플리케이션을 구축할 수 있도록 하는 도구 제공

    Amazon Simple Storage Service(S3)

  • 클라우드에서의 확장 가능한 스토리지, 어디서나 원하는 양의 데이터를 저장, 검생할 수 있도록 구축된 객체 스토리지

  • 업체 최고의 확장성, 데이터 가용성 및 보안관 성능을 제공, 사용하기 쉬운 관리 기능, 높은 내구성

    Amazon Aurora

  • 관리형 고성능 관계형 데이터베이스, MySQL 및 PostrgreSQL 호환 관계형 데이터베이스

  • 1/10 비용으로 상용 데이터베이스 수준의 성능 및 가용성 제공, 성능, 간편성, 가성비 뛰어남,

  • 표준 오픈소스 데이터베이스 보다 3~5배 가량 빠르며, 보안, 가용성, 안정성이 뛰어남

  • 자가 복구 분산 스토리지 시스템으로 최대 64TB 까지 자동으로 확장, 특정 시점 복구, 백업 가능

    Amazon DynamoDB

  • 관리형 NoSQL 데이터베이스, 어떤 규모에서든 빠르고 유연한 NoSQL 데이터 베이스 서비스

  • 완전 관리형의 다중 리전, 다중 마스터 데이터베이스, 보안, 백업, 복원, 인 메모리 캐싱 기능 제공

  • 10밀리초 미만의 성능을 제공하는 키-값 및 문서 데이터 베이스, 하루 10조개 요청 처리, 초당 2000만개 피크 요청 지원

    Amazon RDS(Amazon Relational Database Service)

  • 관리형의 관계형 데이터 베이스 서비스, 클릭 몇 번으로 클라우드에서 관계형 데이터베이스를 설정, 운영 및 확장 가능

  • 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같은 시간 소모적인 관리 작업을 자동화하면서 비용 효율적이고 크기 조정 가능한 용량을 제공

  • 사용자가 애플리케이션에 집중하여 애플리케이션에 필요한 빠른 성능, 고가용성, 보안 및 호환성을 제공할 수 있도록 지원

  • 여러 데이터베이스 인스턴스 유형으로 제공,

  • AWS Database Migration Service로 기존 데이터베이스에서 RDS로 손쉽게 마이그레이션, 복제 가능

    AWS Lambda

  • 서버 걱정없이 코드 실행, 사용한 컴퓨팅 시간에 대해서만 비용 지불

  • 코드 실행되지 않으면 요금 부과 안됨, 모든 유형의 애플리케이션이나 백엔드 서비스에 대한 코드를 별도의 관리 없이 실행, 다른 AWS 서비스에서 자동으로 코드가 트리거 되도록 설정하거나 외부 웹 등에서 호출 가능

    Amazon VPC

  • 격리된 클라우드 리소스, 고객이 정의하는 AWS 계정 전용 가상 네트워크으로, AWS 리소스(EC2 같은)를 구동할 수 있는 AWS 클라우드 상에 논리적으로 격리된 공간을 프로비저닝

  • Amazon Virtual Private Cloud는 AWS 클라우드에서 논리적으로 격리된 공간을 프로비저닝하여 고객이 정의하는 가상 네트워크에서 AWS 리소스를 시작 가능

  • IP 주소 범위 선택, 서브넷 생성, 라우팅 테이블 및 네트워크 게이트웨이 구성 등 가상 네트워킹 환경을 완벽하게 제어 가능

  • VPC에서 IPv4와 IPv6를 모두 사용하여 리소스와 애플리케이션에 안전하고 쉽게 액세스 가능

    Amazon Lightsail

  • 가상 프라이빗 서버 시작 및 관리, 저렴하고 예측가능한 요금으로 가상 서버, 스토리지, 데이터베이스 및 네트워킹을 사용

  • 애플리케이션 또는 웹사이트를 구축하는 데 필요한 모든 것을 제공하는 사용하기 쉬운 클라우드 플랫폼

  • 경제적이며 사용하기 쉬움, 처음 시작할 때, 간단한 웹 애플리케이션 일 때 사용하면 좋음

  • 미리 구성된 애플리케이션(WordPress, Magento, plesk 등을 사용해 블로그, 전자 상거래 또는 개인 웹사이트를 만들기 가능)

  • 비즈니스용 오픈 소스 및 상용 소프트웨어를 간편하게 실행 가능

  • 상용 환경과 분리하여 몇 초 만에 개발자 또는 테스트 환경을 시작 가능

    Amazon SageMaker

  • 기계 학습 모델을 대규모로 신속하게 구출, 교육 및 배포, 머신러닝 서비스

  • 전체 기계 학습 워크플로를 포괄하여 데이터를 분류 및 준비하고, 알고리즘을 선택하며, 모델을 학습하고 배포를 위해 조정 및 최적화하고, 예측을 수행하며, 작업을 수행하는 완전관리형 서비스,

  • 훨씬 적은 노력과 비용으로 더 빨리 모델을 실행 가능

    구축 학습 배포
    학습 데이터 수집 및 준비 학습 데이터 수집 및 준비 프로덕션 환경에 모델 배포
    데이터 레이블 지정 및 일반적인 문제에 대한 기본 제공 노트북 초고 성능의 인프라에서 원클릭 학습 클릭 한 번으로 배포
    ML 알고리즘 선택 및 최적화 모델 학습 및 튜닝 프로덕션 환경 조정 및 관리
    AWS Marketplace의 기본 제공 고성능 알고리즘 및 즉시 사용 가능한 수백 가지 알고리즘 한 번의 학습, 모든 위치에서 실행 및 모델 최적화 Auto Scailing 기능이 포함된 완전관리형 서비스로 75%의 비용 절감

03 AWS 주요 제품 이해하기

주요 제품 이해하기

1. 주요 제품 개요

2. 분석

  • Athena(SQL을 사용해 S3의 데이터 쿼리)
  • CloudSearch(관리형 검색 서비스)
  • EMR(호스팅된 하둡 프레임워크)
  • Kinesis(실시간 비디오 및 데이터 스트림 분석)
  • 등이 있다.
    3. AWS 기반 데이터 레이크 및 분석
  • 데이터 레이크 및 분석 솔루션 구축을 위한 가장 포괄적이고, 안전하고 확장 가능하며 비용 효율적인 서비스 포트폴리오
  • 데이터 레이크는 기존의 데이터 사일로(고정적인 저장소, 표준화 안됨) 및 데이터 웨어하우스가 수행할 수 없는 방식으로 다양한 유형의 데이터와 분석 기법을 결합하여 보다 심층적인 통찰력을 얻기위해 필요한 규모, 민첩성 및 유연성을 제공
  • 데이터(원천 데이터, 로우 데이터)는 가공 이전의 데이터를 의미,
  • 보안 또는 거버넌스를 저하하지 않으면서 모든 관련 데이터에 쉽게 액세스 할 수 있는 가장 광범위한 분석 및 기계 학습 서비스를 고객에게 제공

  • 데이터 이동 : 온 프레미스에서 실시간으로 데이터 수집

  • 데이터레이크 : 기가바이트에서 엑사바이트까지 모든 유형의 데이터를 안전하게 저장

  • 분석 : 가장 광범위한 분석 서비스를 사용하여 데이터 분석

  • Machine Learning : 미래의 결과 예측 및 신속한 대응 안내
    4. 어플리케이션 통합

  • Step Function(분산 애플리케이션을 위한 조정)

  • MQ(ActiveMQ용 관리형 메시지 브로커)

  • SimpleNotificationService(SNS) 게시/구독용 관리형 메시지 주제

  • AppSync(여러 원본의 적절한 데이터로 앱을 대규모로 구동)

  • 등이 있다
    5. AWS에서의 애플리케이션 통합

  • 마이크로 서비스, 분산 시스템 및 서버리스 애플리케이션 통합

  • 최신 애플리케이션은 좀 더 쉽게 개발, 배포 및 유지 관리할 수 있는 작고 독립적인 빌딩 블록으로 구성됨

  • 애플리케이션 통합서비스로 마이크로 서비스, 분산 시스템 및 서버리스 애플리케이션 내에 결합되지 않은 구성 요소 간 커뮤니케이션을 활성화하여 사용자가 확장 가능하고 복원력이 더욱 뛰어난 솔루션을 손쉽게 구축 가능
    6. 증강현실 및 가상현실

  • Amazon Sumerian(증강현실 및 가상현실 애플리케이션을 구축 및 실행)

  • 특수 프로그래밍 또는 3D 그래프 전문 지식 없이도 가상현실, 증강현실 3D 애플리케이션을 신속하고 손쉽게 생성 및 실행 가능

  • 모바일에서도 몰입도 높은 대화형 장면 구축 가능, 가상 강의실, 원격 건물 구축 등,
    7. AWS 비용 관리

  • AWS 비용 및 사용량에 액세스하고 이를 이해, 제어 및 최적화하는데 도움이 되는 도구를 줌

  • 월별 청구서

  • AWS 비용 관리 대시보드를 사용해 지출의 상태를 볼 수 있음

제품별 서비스 이해하기

1. 블록체인

  • 조정 가능한 블록 체인 및 원장 솔루션을 손쉽게 구축 가능한 단순한 방법 제공
  • 주로 두가지 유형의 고객 요구사항 해결 가능
    • 여러 당사자가 중앙의 신뢰할 수 있는 기관과 협력하여 완전하고 검증 가능한 트랜잭션 레코드를 유지하는데, 제품의 공급망 이동에 관한 투명하고 검증 가능한 정보의 레코드를 유지하는 중앙 집중식 원장에 공급업체를 연결하고자 하는 소매 고객
    • 중앙의 신뢰할 수 있는 기관에 대한 필요 없이 여러 당사자가 분산된 방식으로 거래하는데, 중앙 집중식 기관을 연락 담당자로 사용하지 않고 자산의 교차 경계 이전을 수행하려는 은행 및 수출관 연합

1) 블록체인 제품
가. Amazon Quantum Ledger Database( 완전관리형 원장 데이터베이스, QLDB)

  • 완전관리형 원장 데이터베이스
  • 중앙의 신뢰할 수 있는 기관이 소유하는 투명하고, 변경 불가능하며, 암호화 방식으로 검증 가능한 트랙잭션 로그 제공
  • 모든 애플리케이션 데이터 변경 내용을 추적하며 완전하고 검증 가능한 시간대별 변경 기록을 유지 관리
    나. Amazon Managed Blockchain (확장 가능한 블록체인 네트워크를 생성 및 관리)
  • 널리 사용되는 오픈 소스 프레임 워크인 Hyperledger Fabric 및 Ethereum을 사용해 조정 가능한 블록체인 네트워크를 생성하고 관리할 수 있도록 지원하는 완전관리형 서비스
  • 네트워크를 생성하는 데 필요한 오버헤드를 제거하며 수백만 건의 트랜잭션을 실행하는 수천 개 애플리케이션의 수요를 충족하도록 자동 조정됨
    다. AWS Blockchaing Templates
  • 자체 블록체인 네트워크를 직접 관리하면서 간편하게 설정 및 시작할 수 있는 방법을 찾는 고객을 위함
  • ECS 클러스터에 컨테이너로 배포하거나 Docker를 실행하는 EC2인스턴스에 직접 배포
  • 이외에 Blockchaing Partners 등이 있음
    2. 비즈니스 애플리케이션
    1) Alexa for Business( 알렉사로 조직의 영량 강화)
  • Alexa를 지능형 비서로 사용하여 생산성 향상
  • AWS Chime(화상 회의 ) 등이 있음
    3. 컴퓨팅
  • EC2(클라우드의 가상 서버) : 크기 조정 가능 컴퓨팅 제공
  • EC2 Auto Scaling(수요에 맞춰 컴퓨팅 파워 조정)
  • EC2 Container Registry(Docker 이미지 저장 및 검색)
  • Elastic Container Service(Docker 컨테이너 실행 및 관리) : 확장성이 뛰어난 고성능 컨테이너 오케스트레이션 서비스, 컨테이너 기반 어플리케이션 실행,
  • Elastic Kubernetes Service(AWS에서 관리형 Kubernetes 실행
  • Lambda(서버에 대한 걱정없이 코드 실행) : 서버 프로비저닝, 관리할 필요없이 코드 실행 가능
  • Outposts(AWS 인프라를 온프레미스에서 실행)
  • VMware Cloud on AWS (사용자 지정 하드웨어 없이 하이브리드 클라우드 구축)
  • 등이 있다.
    4. AWS 클라우드 컴퓨팅
  • 가상 서버 호스팅, 컨테이너 관리 및 서버리스 컴퓨팅
  • 모바일 앱 구축 부터 인간 게놈 분석까지 컴퓨팅을 정하고 시작함
    5. 고객 인게이지 먼트
  • Amazon Connect(클라우드 기반 콜 센터 서비스)

  • 6. 데이터 베이스
  • Amazon Aurora(고성능 관리형의 관계형 데이터베이스)
  • Amazon ElastiCache(인 메모리 캐싱 서비스)
  • Amazon RDS
  • Amazon Redshift( 빠르고 간단하며 비용 효율적인 데이터 웨어하우징)
  • 등이 있다.
  • 모든 애플리케이션 유구에 맞춰 특별히 구축된 데이터베이스
    7. AWS 데이터베이스
  • 모든 어플리케이션 요구에 맞춰 특별히 구축된 데이터베이스
  • 성능이 좋고 관계형, 비관계형 상관 안함
    8. 개발자 도구
  • AWS CodeStar 등
    9. 최종 사용자 컴퓨팅
  • Workspace 등
    10. 게임 기술
  • gamelfit(멀티플레이 게임 서버), lumberyard(게임 엔진) 등
    11. 사물 인터넷
  • 1-Click: 클릭 한번으로 AWS Lambda 트리거를 생성
  • IoT Core : 디바이스를 클라우드에 연결
  • IoT Analytics: IoT 디바이스에 대한 분석
  • IoT Button : 클라우드 프로그래밍 가능한 대시 버튼
  • IoT Device Defender: IoT 보안
    12. 기계 학습
  • SageMaker : 기계 학습 모델을 대규모로 구축, 훈련 및 배포
  • Comprehend : 텍스트에서 통찰력 확보 및 관계 파악
  • Lex : 음성 및 텍스트 챗봇 구축
  • Polly: 텍스트를 생생한 음성으로 변환
  • Rekognition : 이미지 및 비디오 분석
  • Forecast : 기계학습을 사용하여 예측 정확도 개선
  • Transcribe : 자응 음성 인식
  • DeepLens : 딥러닝이 지원되는 비디오 카메라
  • TenseorFlow : 오픈소스 인공지능 라이브러리
    13. 관리 및 거버넌스
  • Auto Scailing: 수요에 맞춰 여러 리소스의 규모 조정
  • Config : 리소스 인벤토리 및 변경 추적
  • Service Catalog : 표준화된 제품을 생성 및 사용
  • Advisor : 성능 및 보안 최적화
    14. 미디어 서비스
  • MediConnect : 안정적이고 안전한 라이브 비디오 전송
  • 등이 있다..
    15. 마이그레이션 및 전송
  • Migration Hub : 한곳에서 마이그레이션을 추적
  • DataSync : 간단하고 빠른 온라인 데이터 전송
    등이 있다.
    16. 모바일
  • Pinpoint : 채널 전체에서 사용자 참여
  • 등이 있다.
    17. 네트워킹 및 콘텐츠 전송
  • VPC (격리된 클라우드 리소스)
  • Roiute 53( 확장 가능한 DNS)
  • VPN
  • ELB (수신 트래픽을 여러대상에 걸쳐 분산)
    등이 있다.
    18. 보안, 자격 증명 및 규정 준수
  • IAM (사용자 액세스 및 암호화 키 관리)
  • Cognito (앱을 위한 자격 증명관리)
  • CloudHSM(규제 준수를 위한 하드웨어 기반 키 스토리지)
    등이 있다.
    19. 스토리지
  • S3(클라우드에서의 확장 가능한 스토리지)
  • Elastic Block Store(EC2 블록 스토리지 볼륨)
  • S3 Glacier(클라우드상의 저렴한 아카이브 스토리지)
  • AWS Backup(AWS 서비스 전체에 걸쳐 중앙집중식 백업)

04 AWS 서버 이해하기

서버아키텍처

1. 웹 서버 아키텍처

AWS 서버 서비스

1. Availablity Zone(AZ)

  • AWS의 데이터 센터는 가용 영역(AZ) 내에 편성

  • 각 가용 영역은 하나 이상의 데이터 센터로 구성

  • 하나의 데이터 센터가 2개의 가용 영역에 포함될 수 는 없음

  • 각 가용 영역은 독립된 장애 영역으로 설계

  • 가용 영역은 일반적인 대도시 리전 내에서 물리적으로 격리, 주로 서로 다른 그리드를 통해 전력을 공급받음

  • 사용자는 시스템이 상주할 가용 영역을 선택해야하며,

  • 여러 가용영역에 걸쳐 확장 가능하므로 재해가 발생 시 극복할 수 있도록 설계 필요

  • 여러 개의 가용 영역에 애플리케이션을 분산하면 자연 재해나 시스템 장애 등 대부분의 장애 상황에서도 복원력을 유지 가능
    2. Region (리전)

  • 가용 영역은 다시 리전으로 그룹화

  • 각 AWS 리전은 2개 이상의 가용 영역을 포함

  • 특정 리전에 데이터를 저장하는 경우, 해당 리전 내에서만 데이터가 복제됨

  • AWS는 사용자가 데이를 저장한 리전 외부로 데이터를 이동하지 않음

  • 비즈니스에서 필요시 여러 리전에 걸쳐 데이터 복제하는 작업은 사용자 책임

  • 각 리전이 위치한 국가 및 지역에 대한 정보를 제공하고 규정, 네트워크 지연 시간 등에 따라 사용자가 선택해야함

  • 리전간 통신은 퍼블릭 인터넷 인프라로 이루어지므로 암호화 해야한다.

  • 리전에 따라 사용가능한 AWS 제품과 서비스가 달라지므로 주의해야한다.
    3. Virtual Private Cloud(VPC)

  • 사용자의 AWS 계정 전용 가상 네트워크

  • AWS 클라우드에서 다른 가상 네트워크와 논리적으로 분리

  • Amazon EC2 인스턴스와 같은 AWS 리소스를 VPC에서 실행할 수 있는 클라우드의 네트워크 환경이며, 다양한 리소스를 시작하고, 환경민 리소스 상호격리에 대한 탁원한 제어 기능을 제공

  • 리전 내에 존재하며, 해당 리전 외부에는 리소스가 없음, 단, 같은 리전 내 다른 가용 영역에 있는 리소스는 같은 VPC에 존재할 수 있음

  • 인터넷 게이트웨이, NAT 또는 방화벽 프로시를 사용하지 않고 VPC 엔드포인트를 통해 AWS 서비스에 비공개료 연결 가능
    4. Subnet(서브넷)

  • VPC의 IP 주소 범위를 의미

  • 지정된 서브넷으로 AWS 리소스 시작 가능

  • 인터넷 연결이 필요하면 퍼블릭 서브넷, 아니면 프라이빗 서브넷을 이용
    ex) Network Address Translation(NAT)을 사용하여 인터넷에서 주소로 직접 액세스하지 못하게 할 인스턴스에 대해서는 프라이빗 서브넷을 사용, 이 경우 퍼블릭 서브넷의 NAT 게이트웨이를 통해 트래픽을 라우팅하여 프라이빗 IP 주소를 노출하지 않고 인터넷에 액세스 가능

    Amazon EC2(Elastic Compute Cloud)

  • AWS 클라우드에서 확장 가능한 컴퓨팅 제공

  • 이를 통해 하드웨어에 선투자없이 빠르게 애플리케이션 개발, 배포 가능

  • EC2를 통해 원하는 만큼 가상 서버를 구축하고 보안 및 네트워크 구성과 스토리지 관리 가능

  • 요건이나 갑작스러운 접속 증가 등 변동 사항에 따라 확장하거나 축소 가능하여 트래픽 예측 필요성 감소
    1. EC2의 기능

  • 가상 컴퓨팅 환경 : 컴퓨팅 및 메모리 기능에 따라 목적에 맞는 인스턴스 생성

  • Amazon Machine Image(AMI) : 서버에 필요한 운영체제와 여러 소프트웨어들이 적절히 구성된 상태로 제공되는 템플릿으로 인스턴스 생성 가능하며 인스턴스를 위한 CPU, 메모리, 스토리지, 네트워킹 용량의 여러 가지 구성을 제공

  • 인스턴스 스토어 볼륨 : 임시 데이터를 저장하는 스토리지 볼륨으로 인스턴스 종료 시 삭제됨

  • Amazon Elastic Block Store(Amazon EBS) : EBS 볼륨을 사용해 영구 스토리지 볼륨에 데이터를 저장 가능

  • Security Group (보안 그룹)을 사용해 인스턴스에 연결할 수 있는 프로토콜, 포트, 소스 IP 범위를 지정하는 방화벽 기능이 제공

  • Elastic IP(EIP) : 동적 클라우드 컴퓨팅을 위한 고정 IPv4 주소

  • 태그 : 사용자가 생성하여 Amazon EC2 리소스에 할당할 수 있는 메타데이터

  • 새로 서버 인스턴스를 획득하고 부팅하는데 단 몇분만에 만듦, 장애에 대한 복원력 뛰어남, 비용 절감 가능

  • 기능 예시 : 인스턴스(CPU, 메모리, 스토리지 등), AMI(아마존 머신 이미지, 일종의 인스턴스 템플릿), 인스턴스 스토어 볼륨, 영구 스토리지 볼륨 (EBS), 인스턴스와 볼륨들을 다른 물리적 장소에서 액세스 할 수 있는 리전 및 가용 영역, 방화벽 기능, VPC(논리적으로 격리, 하지만 원할때마다 다른 네트워크와 연결 가능)

  • S3 스토리지는 주로 웹 규모의 컴퓨팅 작업을 위한 저장 고안

    1) 스토리지의 추가

    • AMI에서 인스턴스를 실행할 때마다 해당 인스턴스에 대한 루트 스토리지 디바이스가 생성됨
    • 루트 스토리지 디바이스에는 인스턴스를 부팅하기 위해 필요한 모든 정보가 포함
    • 블록 디바이스 매핑을 사용하면 AMI를 생성하거나 인스턴스를 실행할 때 루트 디바이스 볼륨과 스토리지 볼륨을 지정 가능
      2. Relational Database Service(RDS)
  • 클라우드에서 관계형 데이터베이스를 더욱 쉽게 설정, 운영 및 확장할 수 있도록 지원하는 웹 서비스이며 이 서비스는 산업 표준을 위해 경제적이고 크기조절 가능한 용량을 제공하며 공통 DB 관리 작업을 관리

  • CPU, 메모리, 스토리지 및 IOPS(Input/Output Operations per sec)가 따로 분할되므로 독립적으로 확장 가능

  • 백업, 소프트웨어 패치, 자동 장애 감지 및 복구를 관리하며, 필요할 때 자동 백업을 수행하거나 고유한 백업 스냅샷을 수동으로 생성 가능하며 이러한 백업을 사용하여 데이터베이스를 복원 가능
    3. Elastic Load Balancing(ELB)

  • 들어오는 애플리케이션 트래픽을 Amazon EC2 인스턴스, 컨테이너, IP 주소와 같은 여러 대상에 자동으로 분산

  • 단일 AZ 또는 여러 AZ에서 다양한 애플리케이션 부할르 처리하므로 내결함성과 가용성이 향상됨

  • 세가지 로드 밸런서가 존재하며 모두 애플리케이션의 내 결함성에 필요한 고가용성, 자동 확장/축소, 강력한 보안 기능 제공

Application Load Balancer Network Load Balancer Classic Load Balancer
애플리케이션 레이어7(layer7)에서 작동하는 Application Load Balancer는 요청 콘텐츠를 기반으로 VPC 내의 대상으로 트래픽 라우팅, Layer 7 HTTP/HTTPS 애플리케이션을 로드 밸런싱하고 SSL/TLS 암호 및 프로토콜이 사용되도록 하여 애플리케이션의 보안을 개선 Layer 4에서 작동하는 Network Load Balancer는 IP 프로토콜 데이터를 기반으로 VPC 내의 대상으로 연결 라우팅, TCP 트래픽의 로드 밸런싱에 적합하며 AZ 당 하나의 정적 IP 주소를 사용하면서 갑작스럽고 변동이 심한 트래픽 패턴 처리 여러 Amazon EC2 인스턴스에서 기본적인 로드 밸런싱을 제공하며, Layer4 및 Layer 7에서 작동, Classic Load Balancer는 Application Load Balancer나 Network Load Balancer보다 이전에 나온 서비스이며 EC2-Classic 네트워크 내에 구축된 애플리케이션용이지만, VPC에서도 사용 가능하고 비교적 설정이 간단하므로 해당 메뉴얼에서는 Classic Load Balancer를 사용

05 AWS 스토리지 활용하기

스토리지(Storage)

  • 데이터를 저장하는 안정적이고 확장 가능하며, 안전한 장소 클라우드 컴퓨팅의 매우 중요한 구성 요소로서, 애플리케이션에서 사용하는 정보를 보관
  • 기존 온프레미스 스토리지 시스템보다 안정성, 확장성, 보안성 뛰어남
  • 모든 범위의 클라우드 스토리지 서비스를 제공하여 애플리케이션과 아카이브 규정 준수 요구사항을 모두 지원함
  • 클라우드 데이터 마이그레이션 옵션으로 클라우드 IT 환경의 기초 설계 시작 가능
    1. 스토리지 제품
    1) EBS(Elastic Block Store): EC2, DB, 데이터 웨어하우징, 기업의 앱, 빅데이터 처리 또는 백업 및 복구를 위한 영구 로컬 스토리지
    2) EFS(Elastic File System): Linux 기반의 워크로드를 AWS 클라우드 서비스와 온프레미스 리소스에서 사용할 수 있도록 지원하는 간단하고 확장가능하며 탄력적인 파일 시스템, 앱 중단 없이 페타바이트 규모까지 자동 확장 축소 가능,
    3) FSx for Lustre : 고성능 컴퓨팅, 기계 학습 및 미디어 데이터 처리 워크플로우 같은 집약적 워크로드에 최적화된 완전 관리형 파일 시스템, S3에 완벽하게 통합
    4) FSx for Windows File Server : Windows Server를 기반으로 구축도니 완전관리형 네이티브 파일 ms Window 시스템, NTFS, AD(Active Directory) 통합, DFS에 대한 지원
    5) S3(simple Storage Service)
    6) Glacier : 아카이브 및 규제 준수를 위한 장기 스토리지
    7) Storage Gateway : 버스팅, 계층화, 마이그레이션을 위한 하이브리드 스토리지 클라우드
    8) 클라우드 데이터 마이그레이션 서비스
    9) Backup
    등이 있다
    2. AWS의 클라우드 스토리지 제품
  • EC2 인스턴스의 영구 볼륨에서 블록 데이터를 저장 처리 , EBS는 EC2에 비해 가용성이 뛰어나고 일관되며 지연 시간이 짧은 블록 스토리지 제공, 용량, 성능 ,비용이 뛰어남

  • 단일 EC2 인스턴스에서 영구 스토리지에 액세스 해야하는 워크로드에 적합함

  • DB, 빅데이터 분석엔진, 스트림 및 로그 처리 애플리케이션 및 데이터 웨어하우징 등에 사용
    3. Amazon Elastic File System(EFS)

  • Linux를 위한 확장 가능하고 탄력적이며 클라우드 네이티브 파일 시스템, AWS 클라우드 서비스와 온프레미스 리소스에서 사용할 수 있는 간단하고 확장 가능하며 탄력적인 Linux 기반 워크로드용 파일 시스템

  • 앱 중단 없이 페타바이트 규모까지 자동으로 확장 축소 가능,

  • 수천 개의 EC2 인스턴스에 대한 병렬 공유 액세스를 대량으로 제공, 일관적으로 낮은 지연 시간을 유지하면서 높은 수준의 집계 처리량과 IOPS를 달성함
    **4. Amazon S3(simple Storage Service) **

  • 모든 유형의 데이터를 저장하고 액세스할 수 있도록 설계된 객체 스토리지

  • 안전하고 99.99999%의 내구성제공, 수십조 객체로 확장 가능

  • 빅데이터 분석 웨어하우스 플랫폼, 데이터 레이크, 서버리스 컴퓨팅 설계의 기반

  • S3 Select는 데이터 읽기 및 검색 응답 시간이 최대 400%까지 단축됨, 강력한 보안과 규정 준수
    5. FSx for Lustre

  • 컴퓨팅 집약적 워크로드를 위한 완전관리형 Lustre 파일 시스템

  • 고성능 컴퓨팅, 기계학습 등같은 집약적 워크로드에 최적화된 완전 관리형 파일 시스템

  • 초당 최대 수백 기가바이트 처리량, 수백만 IOPS 및 1 밀리초 미만의 지연시간,

  • S3와 완벽하게 통합되어 있음
    6. FSx for Windows File Server

  • 완전관리형 네이티브 Windows 파일 시스템

  • 파일 스토리지가 필요한 Windows 기반 애플리케이션을 손쉽게 AWS로 이전 가능

  • SMB 프로토콜 및 NTFS, AD(Active Directory) 통합, DFS(분산 파일 시스템)에 대한 전체 지원을 비롯하여, Windows 기반 애플리케이션이 사용할 수 있는 기능과 호환성을 갖춘 공유 파일 스토리지 제공

  • SSD 스토리 사용으로 빠른 성능 및 처리량, 낮은 지연시간
    7. S3 Glacier

  • 저렴한 스토리지에 데이터 아카이브

  • 데이터 유형과 관계없이 장기 백업 및 자주 액세스 하지 않는 데이터에 사용
    8. AWS Backup

  • AWS 서비스 전체에 걸쳐 중앙에서 백업 관리 및 자동화

  • AWS 리소스들에 대한 백업 활동을 모니터링, 백업 정책 구성 가능
    9. AWS Storage Gateway

  • 완벽한 통합과 최적화된 데이터 전송을 지원하는 하이브리드 클라우드 스토리지

  • 연결 기능이 고도로 최적화된 로컬 스토리지 제공, 온프레미스 환경을 AWS에 완벽 연결
    10. AWS 데이터 전송 서비스

  • AWS 클라우드에서 데이터 송신 및 수신

  • 이를 통해 안전하고 빠르게 데이터 마이그레이션 가능

    데이터 백업(Data Backup)

    1. AWS Backup
    1) AWS Backup

  • AMI, EBS, Snapshot 등의 기능을 이용해 백업이 용이하며 인스턴스를 종료해도 데이터를 쉽게 보존 가능

  • EC2 인스턴스를 사용하지 않더라도 켜놓은 과금되므로 중지하거나 제거해야함

  • 언제 사용할지 모르면 백업을 해야함
    2) AMI, EBS

  • AMI(Amazone Machine Image) : 인스턴스를 시작할 때 필요한 정보를 포함함, ex) OS 정보, AMI 접근 권한, EBS 볼륨 매핑 정보 등을 포함

  • EBS(Elastic Block Store) : 컴퓨터의 디스크 드라이브, 즉 데이터를 담고 있음, 하나의 인스턴스를 정상적으로 백업 및 복원을 하귀 위해서는 1개의 AMI와 그에 딸린 n개의 EBS 볼륨이 필요함
    3) Create Image

  • EC2 콘솔창에서 스냅샷을 뜨고 싶은 인스턴스를 우클릭해 Image->Create Image를 클릭하여 인스턴스와 EBS 전체를 한번에 스냅샷을 떠서 저장 가능

2. AWS Backup 개요
1) 백업을 중앙에서 관리

  • 중앙 백업 콘솔에서 백업 정책을 구성하여 백업 관리를 간소화하고 AWS 서비스 전체에서 애플리케이션 데이터를 백업하고 보호 가능
  • Backup의 중앙 콘솔, API 또는 명령줄 인터페이스를 사용하여 AWS Storage Gateway를 통해 온프레미스와 클라우드의 AWS 서비스 전체에 걸쳐 백업하고 복원하고 백업 보존 정책을 설정 가능
    2) 백업 프로세스 자동화
  • 완전관리형, 정책 기반솔루션을 이용해 시간과 비용 절약
  • 자동화된 백업 일정, 보존 관리 및 수명 주기 관리 제공함
  • 리소스에 태그를 지정해 간단하게 백업 정책 적용 가능
    3) 백업 규정 준수 개선
  • 중앙집중식콘솔에서 백업 정책을 적용하고 백업을 암호화하고 백업 활동을 감사하여 규정 준수 요구사항 충족 가능
  • 전송 데이터 및 저장 데이터를 암호화하여 백업함
    3. AWS Backup 작동 방식

  • AWS 서비스 전체를 아우르는 클라우드 네이티브 백업, 클라우드와 온프레미스 모두에서 애플리케이션 데이터를 모두 백업하는 하이브리드 백업, 온프레미스 백업 등이 가능함

    스냅샷(Snapshot)

  • 지정 시간 스냅샷을 만들어 S3에 EBS 볼륨의 데이터를 백업 가능
  • 스냅샷은 증분식 백업이어서 마지막 스냅샷 이후 변경된 디바이스의 블록만이 저장됨
  • 스냅샷을 만드는데 필요한 시간이 최소화되며 데이터를 복제하지 않으므로 스토리지 비용이 절약됨
  • 스냅샷 삭제시 해당 스냅샷에 고유한 데이터만 제거됨
  • 데이터를 새 EBS 볼륨에 복원하는 데 필욯나 모든 정보가 있음
  • 다중 볼륨 스냅샷 : 여러 EBS 볼륨에 걸쳐있는 파일 시스템 또는 대규모 DB 등의 중요한 워크로드 백업을 생성 가능

    S3 Glacier

  • 데이터 아카이빙을 위한 안전하고 안정적인 장기 객체 스토리지
  • 저렴하고 안전하며 안정적인 클라우드 스토리지 서비스, 엄격한 규제 요구 사항도 총족하는 종합적인 보안 및 규정 준수 기능 제공
  • 현 위치에서 쿼리하는 기능 제공, 직접 강력한 분석 실행 가능, 온프레미스 솔루션과 비교해 상당힌 비용절감
  • 아카이브에 액세스하는 3가지 옵션 (몇분 ~몇시간) 제공, 주로 자주 액세스하지 않는 정보에 사용
  • 동영상, 뉴스 같은 미디어 자산 워크플로, 의료 정보 아카이빙, 과학 데이터 등에 사용

    AMI와 Market Place

    1. AMI(Amazon Machine Image)

  • 인스턴스 시작시 필요한 정보를 제공함
  • 동일한 구성의 인스턴스가 여러개 필요시 한 AMI에서 여러 인스턴스를 시작 가능
  • 서로 다른 구성일 경우 여러 AMI로 여러 인스턴스 가능
  • 주로 1개 이상의 EBS 스냅샷 또는, 인스턴스 저장 지원 AMI의 경우 인스턴스의 루트 볼륨에 대한 템플릿 (ex: 운영 체제, 애플리케이션 서버, 애플리케이션), AMI를 사용하여 인스턴스를 시작할 수 있는 AWS 계정을 제어하는 시작 권한, 시작될 때 인스턴스에 연결할 볼륨을 지정하는 블록 디바이스 매핑을 포함함
    2. AWS Marketplace
  • 고객이 구매한 소프트웨어 및 서비스를 쉽게 찾아 구매, 배포 및 관리 할 수 있또록 큐레이션 프로세스를 거친 디지털 카탈로그
  • 수많은 소프트웨어 제품이 포함되어있으며, 유연한 요금 옵션과 다양한 배포 방법을 통해 소프트웨어 라이센스 취득 및 구매의 간소화 가능
  • 클릭 몇번 만으로 사전 구성된 소프트웨어 시작, AMI 및 Saas 형식으로 선택 가능
  • 소비자와 공급자 어느쪽으로 여러 요금체계로 등록 가능, AWS 청구서에 요금이 표시됨
  • Saas, AMI 제품 등을 공급 가능

    06 AWS 데이터베이스 서버 만들기

    데이터베이스(DB)

    1. AWS 데이터베이스

  • 모든 어플리케이션 요구에 맞춰 특별히 구축된 데이터베이스
  • 클라우드 덕분에 스토리지 및 컴퓨팅 비용이 하락하여 새로운 세대의 애플리케이션이 등장함
  • DB에 새로운 요구사항이 제기되며 이를 위해 특별히 구축된 관계형, 비관계형 DB가 필요함
  • AWS 완전관리형 DB 서비스
  • 트랜잭션 어플리케이션을 위한 관계형 데이터베이스
  • 인터넷 규모의 애플리케이션을 위한 비관계형 데이터베이스
  • 분석을 위한 데이터 웨어 하우스
  • 캐싱 및 실시간 워크로드를 위한 인 메모리 데이터 스토어
  • 상호 연결성이 높은 데이터가 있는 애플리케이션 구축을 위한 그래프 데이터베이스
    등이 있다.
  • 기존 DB를 AWS로 마이그레이션 하려면 AWS DB Migration Service로 쉽게 가능하다.
  • 관계형 DB는 미리 정의된 스키마와 데이터 간의 관계로 데이터를 저장하며, ACID 트랜잭션 지원, 참조 무결성 유지, 데이터 일관성을 위해 설계 됨, 전자 상거래, ERP, CRM, 기존 앱등에 사용됨
  • 키-값 DB는 키-값 페어를 대량으로 밀리초 단위로 저장 및 검색하는 데 최적화 되어있어 규모 제한 및 성능 오버헤드가 없음, 실시간 입찰, 장바구니 , 고객 선호도, 큰 규모의 애플리케이션 등에 사용됨
  • 문서 DB는 반구조화된 데이터를 개발자가 직관적으로 사용할 수 있는 문서로 저장하도록 설계됨, 가독 가능한 문서로 표시됨, 콘텐츠 관리, 개인화, 모바일 어플리케이션 등에 사용됨
  • 인메모리 DB는 데이터에 실시간으로 액세스해야하는 애플리케이션에 사용됨, 이러한 DB는 메모리에 직접 저장하여 밀리초 지연시간으로 충분하지 않은 경우 마이크로초 까지 제공, 캐싱, 게임 순위표, 실시간 분석 등에 사용 됨
  • 그래프 DB는 수백만명의 사용자가 밀리초 지연시간으로 상호 연결성이 높은 그래프 데이터 세트 간의 관계를 쿼리 및 탐색할 수 있어야 하는 애플리케이션에 사용됨, 부정 탐지, 소셜 네트워킹 및 추천 엔진 등에 사용됨
  • 시계열 DB는 시간에 따라 변화하는 엄청난 양의 데이터(시계열 데이터)를 수집 및 종합하고 통찰력을 도출하는데 사용, IOT, Devops 등에 사용됨
  • 원장 DB는 확장 가능하고 완전하며 암호로 검증 가능한 트랙잭션 레코드를 유지 관리하기 위해 신뢰할 수 있는 중앙기관이 필요한 경우에 사용됩니다. 레코드 시스템, 공급망, 등록, 은행 거래 등에 사용됨

    RDS(Relational Database Services)

    1. Amazon RDS

  • 클릭 몇 번으로 클라우드에서 관계형 데이터베이스를 설정, 운영 및 확장
  • 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같은 시간 소모적인 관리 작업을 자동화하면서 비용 효율적이고 크기 조정 가능한 용량을 제공함
  • 빠른 성능, 고가용성, 보안 및 호환성을 제공할 수 있도록 지원함
  • 메모리, 성능 또는 I/O 최적화에 여러 데이터베이스 인스턴스 유형으로 제공됨,
  • AWS Database Migration Service를 이용해 AWS RDS로 기존의 DB를 쉽게 옮길수 있음
    2. Amazon RDS 데이터베이스 엔진
    1) Amazon Aurora
  • 고성능 상용 데이터베이스의 속도와 가용성에 오픈 소스 데이터베이스의 간편성과 비용 효율성을 결합한 MySQL 및 PostgreSQL 호환 관계형 데이터베이스 엔진
  • MySQL보다 5배 뛰어난 성능과 상용 데이터베이스의 보안성, 가용성 및 안정성을 1/10의 비용으로 제공함
    2) ORACLE
  • 가성비좋고 크기조정 가능한 여러 버전의 Oracle DB를 몇 분 만에 배포할 수 있음
  • 기존의 Oracle 라이선스를 가져오거나 1시간 단위로 라이선스 사용료 지불 가능
  • RDS를 사용하면 프로비저닝, 백업, 패치 적용, 모니터링, 하드웨어 확장 등 복잡한 DB 관리 작업을 관리함으로써 앱 개발에 집중 가능
    3) MS SQL Server
  • SQL Server용 RDS를 활용해 쉽게 설치, 운영, 확장 여러 버전으로 가능
  • 기본 기능에 직접 액세스 권할을 제공하므로 아무런 변경없이 작동 함
    4) MySQL
  • 매우 많은 웹 기반 애플리케이션에서 사용하는 오픈소스 관계형 DB (RDBMS)
  • MySQL용 Amazon RDS는 익숙한 MySQL 데이터베이스 엔진 기능에 액세스를 지원
  • 기존 코드, 도구를 아무런 변경없이 사용 가능
    5) PostgreSQL
  • 확장성 및 표준 준수에 중점을 둔 강력한 엔터프라이즈급 오픈소스 객체 관계형 DB
  • 여러 정교한 기능과 여러 언어로 저장된 프로시저로 실행함
    6) MariaDB
  • MySQL의 한갈래로 MySQL을 호환하며(거의 유사), 클라우드에서 손쉽게 설정, 운영, 확장 가능

    RDS 사례

  • airbnb(15분만에 DB 마이그레이션 끝), BandaiNamco(서버 리소수 추가, 변경, 제거 자유로움),

    Amazon RDS for MySQL

    1. Amazon RDS for MySQL

  • 클릭 몇 번으로 클라우드에서 관계형 데이터베이스를 설정, 운영 및 확장
  • MySQL은 전 세계에서 가장 널리 사용되는 오픈 소스 관계형 데이터베이스이며 Amazon RDS를 사용하면 클라우드에서 MySQL 배포를 손쉽게 설정, 운영 및 확장할 수 있음
  • 비용 효율적이고 크기 조정 가능한 하드웨어 용량을 갖춘 확장가능한 MySQL 서버를 몇분만에 배포 가능
  • 백업, 소프트웨어 패치, 모니터링, 확장 및 축소, 복제 같은 시간 소모적 DB 관리 업무를 관리하므로 고객은 앱개발에 집중 가능
  • 다수의 산업 표준 준수 (HIPAA 준수, 비즈니스 제휴 계약(BAA) 보호 대상 건강 정보(PHI)를 비롯한 의로 관련 정보 저장 가능), FedRAMP 보안 요건 충족, HIGH Baseline 수준의 P-ATO 취득(리전별 조사 필요)
  • 여러 버전의 DB 인스턴스 지원, DB 인스턴스 크기 조정, 연결 인증, 백업, 스냅샷 생성, 복원, 다중 AZ 보조 생성, 읽기 전용 복제본 생성 및 DB 인스턴스의 성능 모니터링 가능

    07 AWS 고가용성 로드 밸런싱 구축하기

    Amazon Elastic Load Balancing

    1. Amazon Elastic Load Balancing 개요

  • 확장성, 성능 및 보안을 보장하여 애플리케이션의 내결함성 확보
  • 들어오는 애플리케이션 트래픽을 EC2 인스턴스, 컨테이너 IP 주소, Lambda 함수와 같은 여러대상에 자동으로 분산 시킴
  • 단일 가용영역 또는, 여러 가용영역에서 다양한 애플리케이션 부하를 처리 가능
  • 높은 내결함성, 자동 증가축소, 보안성을 가지고 있음
    2. 사례
  • 애플리케이션 내결함성 향상
  • 컨테이너식 애플리케이션의 자동 로드 밸런싱
  • 고객의 지연시간에 맞추어 auto scaling 하는 애플리케이션 자동 조정
  • Amazon VPC에서의 ELB 사용(연결 진입점 생성, 요청 트래픽 티어간 라우팅, 보안 그룹 할당)
  • AWS와 온프레미스 리소스 전체에서 로드 밸런싱 가능한 하이브리드 로드 밸런싱
  • HTTP(S)를 통해 Lambda 함수 호출 (사용자는 웹 브라우저를 포함해 HTTP 클라이언트에서 서버리스 애플리케이션에 액세스 가능)
    3. ELB의 기능
    1) 고가용성
  • 수신 트래픽을 단일 가용 영역 또는 여러 가용 영역에 있는 여러 대상(EC2 인스턴스, 컨테이너, IP주소)에 자동 분산
    2) 상태 확인
  • 비정상 대상을 감지하고, 해당 대상으로 트래픽 전송을 중단한 다음, 나머지 정상 대상으로 로드 분산
    3) 보안 기능
  • VPC 사용하면 로드 밸런서와 연결된 보안 그룹을 생성 및 관리하여 추가 네트워킹 및 보안 옵션을 제공할 수 있으면, 또한, 내부(인터넷 사용 안 함) 로드 밸런서를 생성할 수도 있음

4) TLS 종료

  • 통합 인증서 관리 및 SSL/TLS 복호화를 지원하므로 유연하게 로드 밸런서의 SSL 설정을 중앙에서 관리하고 애플리케이션의 CPU 집약적인 작업을 줄일 수 있음
    5) 계층 4 또는 계층 7 로드 밸런싱

  • 계층 7 전용 기능에 대해 HTTP/HTTPS 애플리케이션을 로드밸런싱하거나 TCP 및 UDP 프로토콜을 활용하는 애플리케이션에 대해 엄격한 계층 4 로드 밸런싱을 사용 가능
    6) 운영 모니터링

  • 성을 실시간 모니터링하도록 CloudWatch 지표 및 요청 추적과 통합을 제공
    4. ELB 제품

  • 어플리케이션 요구 사항에 따라 적절한 로드 밸런서 선택 가능

  • 유연한 어플리케이션 관리가 필요한 경우 Application Load Balancer를 사용하는 것이 좋음

  • 애플리케이션에 탁월한 성능 및 고정 IP가 필요한 경우 Network Load Balancer를 사용하는 것이 좋음

  • 기존 애플리케이션이 EC2-Classic 네트워크 내에 구축되어 있는 경우 Classic Load Balancer를 사용해야 함
    1) Application Load Balancer

  • 요청 수준(계층 7)에서 작동하는 ALB는 요청 콘텐츠에 따라 EC2 인스턴스, 컨테이너, IP 주소, Lambda 함수 등의 대상으로 트래픽을 라우팅함

  • HTTP 및 HTTPS 트래픽의 고급 로드 밸런싱에 적합한 Application Load Balancer는 마이크로서비스와 컨티에너 기반 애플리케이션을 비롯한 최신 애플리케이션 아키텍처 전달을 위한 고급 요청 라우팅 기능을 제공함

  • 항상 최신 SSL/TLS 암호 및 프로토콜이 사용되도록 하여 보안을 간소화하고 개선함
    가. 계층 7 로드 밸런싱

    • HTTP/HTTPS 애플리케이션을 로드 밸런싱하고 X-Forwarded-For 헤더와 같은 계층 7 전용 기능을 사용 가능
      나. HTTPS 지원
    • 클라이언트와 로드 밸런서 간 HTTPS 종료를 지원함
    • AWS IAM 및 AWS Certificate Manager의 사전 정의된 보안 정책을 통해 SSL 인증서 관리도 제공함
      다. SNI(서버 이름 표시)
    • TLS 핸드쉐이크 시작 시 클라이언트가 연결할 호스트 이름을 표시하는 TLS 프로토콜에 대한 확장 프로그램
    • 같은 보안 리스너를 통해 여러 개의 인증서를 제시할 수 있으므로 단일 보안 리스너를 사용하여 여러 개의 보안 웹 사이트를 지원하도록 할 수 있음
    • SNI를 살 사용한 스마트 인증서 선택 알고리즘 지원
    • 클라이언트가 표시하는 호스트 이름이 여러 인증서와 일치할 경우 로드 밸런서가 클라이언트의 기능을 포함한 여러 요소를 기반으로 사용할 최적의 인증서를 결정함
      라. IP 주소를 대상으로 사용
  • 애플리케이션 백엔드의 IP 주소를 대상으로 사용하여 AWS 또는 온프레미스에 호스팅된 애플리케이션을 로드 밸런싱할 수 있음 (인스턴스의 모든 IP 주소 및 인터페이스에 호스팅된 애플리케이션 백엔드로 로드 밸런싱할 수 있음)

  • 같은 인스턴스에 호스팅된 각 애플리케이션은 연결된 보안 그룹을 가질 수 있고 같은 포트를 사용할 수 있음

  • IP 주소를 대상으로 사용하여 온프레미스 위치(직접 연결 또는 VPN 연결로), 피어링된 VPC 및 EC2-Classic(ClassicLink 사용)에 호스팅된 애플리케이션을 로드 밸런싱할 수도 있음

  • AWS와 온프레미스 리소스에 걸쳐 로드 밸런싱할 수 있는 기능은 클라우드로 마이그레이션, 클라우드로 버스팅 또는 클라우드로 자애 조치하는데 도움이 됨
    마. Lambda 함수를 대상으로 사용

  • HTTP 요청을 처리하는 Lambda 함수를 호출해 웹브라우저 포함 모든 HTTP 클라이언트에서 서버리스 애플리케이션에 대한 사용자 액세스를 제공할 수 있음

  • Lambda 함수를 로드 밸런스의 대상으로 등록하고 콘텐츠 기반 라우팅 규칙에 대한 지원을 활용하여 요청을 다른 Lambda 함수로 라우팅할 수 있음

  • 서버 및 서버리스 컴퓨팅을 사용하는 애플리케이션에 대해 ALB를 공통 HTTP 엔드포인트로 사용할 수 있습니다. Lambda 함수를 사용하여 전체 웹사이트를 만들거나, EC@ 인스턴스, 컨테이너, 온프레미스 서버 및 Lambda 함수를 결합하여 앱을 개발 가능
    사. 콘텐츠 기반 라우팅

  • 애플리케이션이 몇 개의 개별 서비스로 구성된 경우 ALB는 요청의 콘텐츠를 기반으로 요청을 서비스로 라우팅 가능
    2) Network Load Balancer

  • 연결 수준(계층 4)에서 작동하는 Network Load Balancer는 IP 프로토콜 데이터를 기반으로 Amazon Virtual Private Cloud(VPC) 내의 대상(EC2 인슨턴스, 마이크로 서비스 및 컨테이너)으로 연결을 라우팅함

  • TCP 및 UDP 트래픽 모두의 로드 밸런싱에 적합한 NLB는 매우 짧은 지연 시간을 유지하며 초당 수백만개 요청 처리

  • NLB는 가용 영역당 하나의 정적 IP 주소를 사용하면서 갑작스럽고 변동이 심한 트래픽 패턴을 처리하는데 최적화

  • Auto Scaling, EC2 Container Service, CloudFormation 및 Certificate Manager와 같은 서비스와 통합
    가 . 연결 기반 로드 밸런싱

  • TCP 및 UDP 트래픽을 모두 로드 밸런싱하여 연결을 대상(EC2 인스턴스, 마이크로 서비스 및 컨테이너)로 라우팅할 수 있음
    나. 고가용성

  • 가용성이 매우 뛰어남

  • 클라이언트로부터 수신되는 트래픽을 수락하고 동일한 가용 영역 내 대상 전체에 이트래픽을 분산함

  • 등록된 대상의 상태를 모니터링하고 정상 대상으로만 트래픽을 라우팅함

  • 비정상 대상을 감지하면, 해당 대상으로 트래픽 라우팅을 중단하고 나머지 정상 대상으로 트래픽을 다시 라우팅함

  • 한 가용 영역의 모든 대상이 비정상이고 다른 가용 영역에 대상을 설정해둔 경우 자동으로 장애 조치하여 다른 가용 영역에 있는 정상 대상으로 트래픽을 라우팅함
    다. 높은 처리량
    라. 짧은 지연시간
    마. 소스 IP 주소 유지

  • 클라이언트 측 소스 IP를 유지하므로 백엔드가 클라이언트 IP 주소를 확인 가능

  • 그런 다음 추가 처리를 위해 앱에서 사용 가능
    바. 정적 IP 지원

  • 애플리케이션이 로드 밸런서의 프런트엔드 IP로 사용할 수 있는 가용 영역(서브넷)별로 정적 IP를 자동으로 제공함
    사. 탄력적 IP 지원

  • 가용 영역(서브넷)별로 탄력적 IP를 지정하여 자체 고정 IP를 제공할 수 있는 옵션이 제공됨
    아. TLS 오프로드

  • 클라이언트와 로드 밸런서간 TLS 종료를 지원, IAM 및 AWS Certificate Manager를 통해 SSL 인증서 관리를 지원, 클라우드와 로드 밸런서 간의 TLS 핸드셰이크를 완료시 기본적으로 사용할 암호와 프로토콜을 유연하게 설정할 수 있는 사전 정의된 보안 정책도 제공함

  • TLS가 종료되더라도 원본 IP는 계속 백엔드에 보존됨
    자. 상태 확인

  • 대상의 전반적인 트래픽에 대한 응답에 기반하여 조사함
    차. DNS 장애 조치

  • 정상이 대상이 없거나영역의 노드가 비정상인 경우, Route 53이 다른 가용 영역의 로드 밸런서 노드로 트래픽을 보냄
    카. Amazon Route 53과의 통합

  • 응답하지 않는 경우 서비스에서 사용할 수 없는 로브 밸런서 IP 주소를 제거하고 트래픽을 다른 리전에 있는 대체 Network Load Balancer로 보냄
    파. AWS 서비스와의 통합
    하. 수명이 긴 TCP 연결
    -WebSocket 유형의 애플리케이션에 적합한 수명이 긴 TCP 연결을 지원함
    3) Classic Load Balancer

  • 기본적인 로드 밸런싱 제공, 요청 수준 및 연결 수준에서 작동하여 트래픽 조정

  • EC2-Classic 네트워크 내에 구축된 애플리케이션용, 인스턴스의 상태를 감시 가능

  • VPC를 사용할 때는 계층 7에는 ALB 그리고 계층 4에는 NLB를 사용하는 것이 좋음
    가 . 고가용성
    나. 상태확인
    다. 보안 기능

  • 퍼블릭 주소 없이 CLB를 생성하여 인터넷에 연결되지 않은 내부 로드 밸런서 사용
    라. SSL 오프로드

  • app 인스턴스의 SSL 복호화 오프로드, 중앙 집중식 SSL 인증서 관리, 퍼블릭 키 인증을 사용한 백엔드 인스턴스 암호화 등 SSL 종료를 지원, 암호, 프로토콜 제어도 가능
    마. 고정 세션

  • 쿠키를 사용하여 사용자 세션을 특정 EC 인스턴스에 고정시키는 기능 지원, 사용자가 액세스하는 동안 트래픽은 동일한 인스턴스로 라우팅됨
    바 . IPv6 지원

  • EC2-Classic 네트워크에서 인터넷 프로토콜 버전 4 및 6(IPv4 및 IPv6)을 모두 사용할 수 있도록 지원함
    사. 계층 4 또는 계층 7 로드 밸런싱

  • HTTP/HTTPS 애플리케이션을 로드 밸런싱하고 X-Forwarded-For 헤더와 같은 계층 7 전용 기능을 사용 가능

  • TCP 프로토콜만 사용하는 애플리케이션에 대해 엄격한 계층 4 로드 밸런싱을 사용할 수 있음
    아. 운영 모니터링
    자. 로깅

  • 액세스 로그 기능을 사용하여 로드 밸런서로 전송된 요청을 모두 기록, S3에 로그 저장, 이후 장애 진단 및 웹 트래픽 분서에 사용 가능

  • CloudTrail을 사용해 계정의 API 호출을 기록, 전달 가능, 보안 분석, 리소스 변경 사항 추적, 규정 준수 감사를 수행
    5. ELB 서비스

  • 여러 관련 서비스를 통해 가용성 및 확장성을 개선함

  • EC2 : 애플리케이션 실행 가상 서버, 로브랜서 구성으로 인스턴스에 트래픽 라우팅 가능

  • EC2 Auto Scaling : 인스턴스 수요에 따라 수를 인스턴스 수를 늘리거나 줄일 수 있음

  • Certificate Manager: HTTPS 리스너를 생성할 때 ACM에서 제공한 인증서를 지정 가능, 인증서를 사용하여 연결을 종료하고 클라이언트의 요청을 암호화 해제함

  • 이외에도 CloudWatch, ECS, Route 53, AWS WAF 등을 사용할 수 있다.

    Amazon Auto Scaling

    1. 개요

  • 애플리케이션의 로드를 처리할 수 있는 정확한 수의 EC2 인스턴스를 보유하도록 보장

  • EC2 인스턴스 모음을 생성함, 최소, 최대 인스턴스 수를 지정 가능, 조정 정책을 지정 가능
    2. 핵심 구성 요소
    가. 그룹

  • EC2 인스턴스는 그룹에 정리되어 조정 및 관리 목적의 논리적 단위로 처리 가능

  • 그룹 생성 시 EC2 최소, 최대 인스턴스 수와 원하는 수를 지정 가능
    나. 구성 템플릿

  • 시작 템플릿 또는 시작 구성을 EC2 인스턴스에 대한 구성 템플릿으로 사용함

  • AMI ID, 인스턴스 유형, 키 페어, 보안 그룹, 블록 디바이스 매핑 등의 정보를 지정 할 수 있음
    다. 조정 옵션

  • EC2 Auto Scaling은 Auto Scaling 그룹을 조정하는 다양한 방법을 제공함

ELB 및 Auto Scaling 구축하기

08 AWS 분석 이해하기

AWS 분석 서비스 개요

1. AWS 기반 데이터 레이크 및 분석

  • 데이터 레이크 및 분석 솔루션 구축을 위한 가장 포괄적이고 안전하고 확장 가능하며 비용 효율적이 서비스 포트폴리오

  • 보안 또는 거버넌스를 저하지 않으면서 모든 관련 데이터에 쉽게 액세스할 수 있는 가장 광범위한 분석 및 기계 학습 서비스를 고객에게 제공

  • AWS는 데이터 레이크와 분석을 갖춘 조직을 많이 보유 중


2. 데이터 레이크

  • 데이터 레이크기존의 데이터 사일로 및 데이터 웨어하우스가 수행할 수 없는 방식으로 다양한 유형의 데이터와 분석 기법을 결합하여 보다 심층적인 통찰력을 얻기 위해 필요한 규모, 민첩성 및 유연성을 처리가능(주로 정제되지 않은 로우 데이터를 의미하며 분석 후, 놓치기 쉬운 가치를 다시 분석하여 좀더 확장 가능함)
  • Amazon S3, Glacier를 사용해 안전하게 그리고 방대한 규모로 쉽게 저장 가능,
  • AWS Glue는 사용자가 검색하고 쿼리할 수 있는 단일 카탈로그를 자동으로 생성
    • AWS Glue : 데이터 레이크에서의 검색, 분석, 추출 변환, 로드(ETL)을 수행할 수 있게 카탈로그 생성하는 완전관리형
    • 간편하고 유연하며 비용 효율적인 ETL tjqltm
    • 모든 데이터 자산에 대한 영구 메타데이터 스토리지로 자동 생성되므로 검색 및 쿼리 가능
    • 데이터 원본과 데이터 대상을 선택하고 ETL 코드를 생성하여 원본으로부터 데이터룰 추출하고 스키마에 맞춰 변환, 이를 대상으로 로드함, 코드를 편집 디버깅 및 테스트 가능
  • S3, Glacier에 대한 설명의 위 참조
    3. Amazon Athena(SQL을 이용해 S3의 데이터 쿼리)
  • 표준 SQL 쿼리를 이용해 S3와 Glacier의 데이터를 직접 간편하게 분석하게 해줌
  • 서버리스이며, 데이터를 즉시 쿼리, 몇초 내에 결과를 얻고 실행한 쿼리에 대해서만 비용 지불
  • S3에 스키마 정의 후 쿼리 시작하기만 하면 됨
    4. Amazon CloudSearch(관리형 검색 서비스)
  • 웹사이트, 애플리케이션을 위한 검색 솔루션을 간단하게 설정, 관리, 조정 가능
  • 강조 표시, 자동 완성, 지형 정보 검색 등 인기있는 검색 기능과 34개 언어 지원

    AWS 분석 서비스

    1. Amazon EMR(호스팅된 하둡 프레임워크)
    1) 빅데이터 처리

  • Spark 및 Hadoop 프레임워크를 사용한 빅 데이터 처리의 경우, Amazon EMR은 관리형 서비스로서 대량의 데이터를 쉽고 빠르며 비용 효율적으로 처리 가능
  • EMR은 데이터 엔지니어링, 데이터 과학 개발 및 협업을 위한 관리형 EMR Notebooks로 Hadoop, Spark, HBase 및 Presto를 비롯하여 19가지 오픈소스 프로젝트를 지원
    2. Amazon Elasticsearch Service(Elasticsearch 클러스터를 실행 및 확장)
    1) 운영분석
  • 애플리케이션 모니터링, 로그 분석 및 클릭스트림 분석과 같은 운영 분석의 경우, Amazon Elasticsearch Service를 사용하면 실시간으로 데이터를 검색, 탐색, 필터링, 집계 및 시각화 가능
  • Amazon Elasticsearch Service는 Elasticsearch의 간편한 API 및 실시간 분석 기능과 더불어 프로덕션 워크로드에 필요한 가용성, 확장성, 보안성을 제공함
    2) 실시간 분석
  • Amazon Kinesis를 이용해 IoT 텔레메트리데이터, 애플리케이션 로그 웹 사이트 클릭스트림과 같은 스트리밍 데이터를 간편하게 수집 처리 분석 가능
  • 모든 데이터가 수집된 후에야 처리를 시작할 수 있는 것이 아니라 데이터 레이크에 데이터가 수신되는 대로 처리 및 분석하여 실시간으로 대응 가능
    3. Amazon Managed Streaming for Apache Kafka(MSK, 완전관리형 Apache Kafka 서비스)
  • Apache Kafka를 사용하여 스트리밍 데이터를 처리하는 애플리케이션의 구축 및 실행을 간소화하는 완전관리형 서비스임
  • Apache Kafka는 실시간 스트리밍 데이터 파이프라인 및 애플리케이션 빌드를 위한 오픈 소스 플랫폼임
  • Amazon MSK를 통해 Apache Kafka API를 사용해 데이터 레이크를 채우고, 데이터베이스와 변경 사항을 스트리밍 방식으로 주고 받으며, 기계 학습 및 분석 애플리케이션을 강화 가능
  • 프로덕션에서 설정, 크기 조정 및 관리는 힘든 작업임,
  • 서버 프로비저닝, Kafka 수동 구성, 서버 교체, 서버 패치 및 업그레이드 오케스트레이션, 설계, 데이터 확인, 모니터링, 경보설정, 부하 변경을 위한 크기 조정 이벤트 등을 직접 해야함
  • MSK를 이용하면 전문적인 지식이 없어도 구축 가능, 인프라 관리 시간을 줄이고 더 많은 시간을 애플리케이션 개발에 활용 가능
  • 데이터 스토어에 스트리밍 데이터를 생성하는 생상자(앱)을 데이터 스토어에 스트리밍 데이터를 소비하는 소비자(앱)에서 분리하는 스트리밍 데이터 스토어
  • 이 스트리밍 데이터를 지속적으로 분석해 관련 대응 조치를 쥐하는 데이터 소스로 Kafka 사용
    4. Amazon Redshift(빠르고 단단하며 비용 효율적인 데이터 웨어하우징)
    1) 데이터 웨어하우징
  • 페타바이트의 정형 데이터에 대해 복잡한 분석 커리를 실행할 수 있는 기능을 제공하며 불필요한 데이터 이동 없이 S3의 정형 또는 비정형 데이터에 대해 직접 SQL 쿼리를 실행하는 Redshift Spectrum을 포함함, 매우 경제적임
    5. Amazon QuickSight(빠른 비즈니스 분석 서비스)
  • 대시보드 및 시각화의 경우, 빠르고 강력한 클라우드 기반 비즈니스 분석 서비스를 제공하므로 모든 브라우저 또는 모바일 장치에서 액세스할 수 있는 멋진 시각화 및 풍부한 대시보드를 간편하게 작성할 수 있음
    6. AWS Data Pipeline(데이터 중심의 주기적인 워크플로를 위한 오케스트레이션 서비스)
  • 온프레미스 데이터 소스뿐 아니라 여러 AWS 컴퓨팅 및 스토리지 서비스 간에 데이터를 안정적으로 처리하고 지정된 간격으로 이동할 수 있게 해주는 웹 서비스
  • 저장되어 있는 데이터에 정기적으로 액세스하고, 대규모로 데이터를 변환 및 처리하며, 다른 AWS 서비스에 효율적으로 전송 가능
  • 내결함성과 반복 가능, 가용성, 간편함, 안정성 증가, 작업 재시도, 알림, 종속성 관리 기능 포함
  • 이전에는 온프레미스 데이터 사일로에서 묶여 있던 데이터를 이동하고 처리 가능

7. AWS Lake Formation(며칠 만에 안전한 데이터 레이크 구축)

  • 데이터 레이크큐레이션된 안전한 중앙 집중식 리포지토리로 모든 데이터를 원래 형식 및 분석에 필요한 형식으로 저장
  • 데이터 사일로를 대체하고 다양한 유형의 분석을 조합하여 좀더 나은 통찰력과 비즈니스 결정 가능
  • 다양한 소스로부터 데이터 로딩, 데이터 흐름 모니터링, 파티션 설정, 암호화, 키관리, 변환 작업 정의 및 운영 모니터링, 열 기반 형식으로 데이터 재구성, 액세스 제어 설정 구성, 중복 데이터 제거, 링크도니 레코드 매칭, 데이터 세트에 대한 액세스 권한 부여, 추후 액세스 감사 등이 포함됨
  • 데이터 레이크 생성 과정

09 AWS 블록체인 활용하기

블록체인 서비스

1. AWS에서의 블록체인

  • 조정 가능한 블록체인 및 원장 솔루션을 손쉽게 구축

  • 2가지 유형의 고객 요구사항을 해결 가능

    1) 여러 당사자가 중앙의 신뢰할 수 있는 기관과 협력하여 완전하고 검증 가능한 트랜잭션 레코드를 유지

    • 제품의 공급망 이동에 관한 투명하고 검증 가능한 정보의 레코드를 유지하는 중앙 집중식 원장에 공급업체를 연결하고자 하는 소매고객이 예시
      2) 중앙의 신뢰할 수 있는 기관 필요 없이 여러 당사자가 분산된 방식으로 거래
    • 중앙 집중식 기관을 연락 담당자로 사용하지 않고 자산의 교차 경계 이전(신용장)을 수행하려는 은행 및 수출관 연합
  • 모든 애플리케이션 데이터의 변경 내용을 기록하고 이러한 변경 내용의 변경 불가능한 레코드를 유지하는 중앙 집중식 원장이 필요시 AWS 원장 DB를 사용 가능

  • 변경 불가능하며, 암호화로 검증 가능하여 복잡한 감사 테이블, 블록체인 네트워크 설정 필요 없음

  • 만약 원장의 변경 불가능하며 검증 가능한 기능이 필요한 동시에 여러 당사자가 신뢰할 수 있는 중앙 기관 없이 거래할 수 있도록 하려면 AWS가 제공하는 완전 관리형의 조정 가능한 블록쳉니 서비스 사용 하면됨
    2. AWS에서의 블록체인 사례

  • 중앙 집중식 소유권으로 트랜잭션 추적 및 확인해야 문제를 예방하고 추적할 수 있음

  • 급여 시스템, 제조업체 생산 유통 계통 등을 중앙 집중식 원장으로 구현하곤 함

  • 보험, 분산된 소유권으로 트랜잭션 및 계약 실행

소유권이 중앙 집중된 원장 DB 소유권이 분산된 블록체인 네트워크
중앙 집중식, 중앙의 신뢰할 수 있는 기관이 원장을 소유 및 관리하고 함께 일하는 모든 수의 당사자와 공유합니다. 분산화, 여러 당사자가 서로을 알거나 신뢰할 필요 없이 서로 거래할 수 있습니다. 각 당사자는 멤버라고 하며 네트워크의 피어 노드를 소유합니다.
변경 불가능, 모든 트랜잭션을 블록 으로 저장하는 추가 전용 저널을 사용합니다. 블록은 암호화 방식의 시퀀스로 연결되며 중앙의 소유자 또는 다른 엔티티에 의해 삭제되거나 수정 불가 변경 불가능, 커밋된 트랜잭션은 블록에 저장되고, 암호화 방식으로 함께 연결되며, 수정할 수 없습니다. 트랜잭션이 커밋되면 모든 멤버에 복제되어 변경 또는 삭제가 불가능해집니다.
검증 가능, 암호화를 사용하여 변경 기록의 간결한 요약을 생성합니다. 이 안전한 요약을 다이제스트라고 하며 원장 데이터의 계통을 암호화 방식으로 확인하는데 사용 가능 검증 가능, 각 멤버에는 원장의 로컬 복사본이 저장되며 각 멤버는 독립적으로 원장의 콘텐츠를 검증하고 원장의 콘텐츠가 정확한지 확인할 수 있습니다. 변경을 수행하려면 네트워크의 멤버가 새 트랜잭션을 검증해야 하므로 모든 피어 조직의 데이터가 일관적으로 유지됩니다.
투명성, 전체 데이터 기록을 쉽게 쿼리할 수 있으므로 완전하고 투명한 정보로그가 유지됩니다. 투명성 커밋된 모든 트랜잭션은 하나 이상의 엔티티에 귀속될 수 있으며 모든 멤버에게 투명하게 공개됩니다. Hyperledger Fabric과 같은 승인된 블록체인 프레임워크에서는 선별된 피어 그룹만 정보에 액세스할 수 있도록 투명성을 구성할 수 있습니다.
신속함, 중앙 집중식 신뢰가 구축된 원장의 경우 분산된 합의를 도출할 필요 없으므로 일반적인 블록체인 프레임워크의 원장보다 빠른속도로 손쉽게 트랜잭션을 확장하고 실행 가능 중개자 불필요, 각 피어 조직은 인코딩된 애플리케이션 논리를 사용해 새로운 트랜잭션을 시작할 수 있습니다. 트랜잭션이 시작되면 네트워크의 모든 피어에 복제되므로 여러 당사자가 정보에 액세스하여 검증할 수 있습니다. 멤버 간의 연락을 담당할 중개자가 필요하지 않기 때문에 복잡한 트랜잭션의 효율성이 개선되고 비용이 절감됩니다.

Amazon Managed Blockchain

**1. 확장 가능한 블록체인 네트워크를 생성 및 관리 **

  • 널리 사용되는 오픈 소스 프레임워크인 Hyperledger Fabric 및 Ethereum을 사용하여 조정 가능한 블록체인 네트워크를 생성하고 관리할 수 있도록 지원하는 완전관리형 서비스
  • 네트워크 생성에 필요한 오버헤드를 제거하며 수백만 건의 트랜잭션을 실행하는 수천 개 애플리케이션의 수요를 충족하도록 자동 조정됨
  • 네트워크를 설정하고 실행하기만 하면 Managed Blockchain을 통해 블록체인 네트워크를 손쉽게 관리하고 유지할 수 있음
  • 인증서를 관리하고 네트워크에 조인할 새 멤버를 초대하고, 컴퓨팅, 메모리 및 스토리지 리소스 사용량 같은 운영 지표를 추적하는 기능 제공
  • 신뢰할 수 있는 중앙기관이 없어도 여러 당사자가 트랜잭션을 실행할 수 있는 애플리케이션 구축 가능
  • 블록체인 네트워크에 필요한 노력 (수동 하드웨어 프로비저닝, 소프트웨어 설치, 액세스 제어용 인증서 관리, 지속적 인프라 모니터링 및 변경사항에 맞게 조정)을 손쉽게 해줌
  • 블록체인의 네트워크 활동의 변경 불가능한 사본을 완전관리형 원장 데이터베이스인 QLDB로 복제할 수 있어 이를 통해 외부에서 손쉽게 네트워크를 활동하고 추세에 대한 통찰력 얻을 수 있음

    Amazon Quantum Ledger Database(QLDB)

    1. 완전관리형 원장 데이터베이스

  • 투명하고 변경 불가능하며 암호화 방식으로 검증 가능한 트랜잭션 로그를 제공하는 완전관리형 원장 데이터베이스로, 신뢰할 수 있는 중앙기관에서 이러한 로그를 소유함
  • 모든 애프리케이션 데이터 변경내용을 추적하며 시간이 지나도 완전하고 검증 가능한 변경 내역을 유지 관리함
  • 원장은 일반적으로 조직의 경제 및 금융 활동 내역을 기록하는데 사용됨
  • 종종 관계형 데이터베이스에서 만든 사용자 지정 감사 테이블 또는 감사 추적을 사용하여 구현되지만, 시간이 많이 소요되며, 실수, 데이터 변조가 발생할 수 있음
  • 이를 방지하기 위해 블록체인 프레임워크를 원장으로 쓸 수 있지만 이러면 복잡성과 관리가 힘들어짐
  • 이를 위해 QLDB를 이용해 복잡한 개발 노력을 줄이고 변경 불가능하고 암호화를 사용하여 의도치 않은 수정을 막고 추적 가능
  • 저널이라고 하는 변경 불가능한 트랜잭션 로그를 사용하여 각 애플리케이션 데이터 변경 사항을 추적하고 시간이 지나도 검증 가능한 모든 변경내역을 유지 가능
  • 개발자가 익숙한 SQL형 API 유연한 문서 데이터 모델, 서버리스 등을 지원,
  • 읽기 쓰기 제한을 구성할 필요 없고, 사용한 만큼만 비용 지불
    2. QLDB 작동 방식

AWS Blockchain Templates

  • 자체 블록체인 내트워크를 직접 관리하면서 설정 및 시작할 수 있음

  • 인기 오픈 소스 프레임워크를 사용해 안전한 블록체인 네트워크를 ECS 클러스터에 컨테이너로 배포하거나 Docker를 실행하는 EC2 인스턴스에 직접 배포 가능

    AWS Blockchain Partners

  • 완벽한 블록체인 플랫폼을 경제적인 방식으로 대규모로 구축 가능한 포괄적이고 심층적인 기능과 최대 규모의 글로벌 인프라를 제공, 다양한 프로토콜과 분산 원장 솔루션 제공

    10 AWS 사물인터넷 서비스

    AWS IoT

    1. 산업, 소비자 및 상업 솔루션용 IoT 서비스

  • 디바이스를 서로 연결 후 데이터를 수집하고 저장하고 분석할 수 있는 솔루션의 필요성이 증가

  • AWS IoT는 엣지 영역부터 클라우드에 이르기까지 광범위하고 심층적인 기능을 제공하므로 다양한 디바이스에서 거의 모든 사라예 적합한 IoT 솔루션 개발 가능

  • 인터넷이 연결되지 않을때도 디바이스가 스마트해짐, 포괄적인 보안 기능을 제공
    2. AWS IoT 솔루션
    1) 산업용

  • AWS IoT 고객은 예방적 품질 관리 및 유지 관리를 지원하고 운영 상태를 원격으로 모니터링하기 위해 산업용 IoT 애플리케이션을 구축 중
    2) 커넥티드 홈

  • AWS IoT 고객은 홈 자동화, 홈 보안 및 모니터링, 홈 네트워킹을 위한 커넥티드 홈 애플리케이션을 구축 하고 있음
    3) 상업용

  • 교통 모니터링, 공공 치안 및 건강 모니터링을 위한 상업용 애플리케이션을 구축하고 있음
    3. AWS IoT 제공 서비스

  • AWS IoT는 디바이스 소프트웨어, 제어 서비스 및 데이터 서비스를 제공함

  • 디바이스 소프트웨어는 디바이스를 안전하게 연결하고, 데이터를 수집할 뿐만 아니라 인터넷 연결이 불가능할 때에도 로컬에서 지능적인 조치를 취할 수 있도록 지원함

  • 제어 서비스를 사용하면 크고 다양한 디바이스 플릿을 제어하고 관리하며 보호 가능

  • 데이터 서비스는 IoT 데이터를 통한 가치 창출을 지원함

    AWS IoT 서비스

    1. Amazon FreeRTOS(마이크로 컨트롤러용 IoT 운영체제)

  • 소형 저출력 엣지 디바이스를 쉽게 프로그래밍, 배포, 보호, 연결 및 관리할 수 있는 오픈 소스 마이크로 컨트롤러용 운영 체제

  • 소형 저출력 디바이스를 AWS IoT Core와 같은 AWS 클라우드 서비스 또는 AWS IoT Greengrass를 실행하는 좀더 강력한 엣지 디바이스로 안전하게 연결할 수 있게 해주는 소프트웨어 라이브러리를 통해 인기 있는 마이크로컨트롤러용 오픈 소스 운영 체제인 FreeRTOS 커널을 확장함

  • 마이크로컨트롤러(MCU)는** 가전제품, 센서, 피트니스 트래커, 산업 자동화 및 자동화를 비롯한 많은 디바이스에서 발견되는 간단한 프로세스가 탑재된 단일 칩**임

  • 소형 디바이스 대부분이 클라우드에 연결하거나 로컬로 다른 디바이스에 연결시 이점 활용

  • MCU의 컴퓨팅 파워와 메모리 용량이 제한적이며 간단하고 기능적 작업 수행

  • 마이크로 컨트롤러는 로컬 네트워크 또는 클라우드에 연결하는 기능이 내장되지 않은 운영 체제에서 주로 실행, IoT 어플리케이션은 어려운 과제임
    1) 작동방식
    가. Amazon FreeRTOS는 손쉽게 커넥티드 마이크로컨트롤러 기반 디바이스를 프로그래밍하고 해당 디바이스로부터 IoT 애플리케이션을 위한 데이터를 수집하는 데 필요한 모든 것을 제공함
    나. 시작하려면 AWS Partner Device Catalog 에서 Amazon FreeRTOS 지원 마이크로컨트롤러를 선택할 수 있음
    다. Amazon FreeRTOS 콘솔 또는 GitHub에서 디바이스에 사용할 관련 소프트웨어 라이브러리를 선택하고, 디바이스 및 애플리케이션별 라이브러리를 비롯하여 전체 Amazon FreeRTOS 운영체제 다운로드
    2. AWS IoT 1-Click(클릭 한 번으로 AWS Lambda 트리거를 생성)

  • 간단한 디바이스에서 AWS Lambda 함수를 트리거하여 작업을 실행할 수 있도록 지원하는 서비스

  • 관련 디바이스 사용시 기술 지원에 알림, 자산 추적, 상품 또는 서비스 보충과 같은 작업을 손쉽게 가능

  • 별도의 설정 없이 바로 사용할 수 있으며, 자체 펌웨어를 작성하거나 안전한 연결을 위해 구성할 필요가 없고 손쉽게 관리 가능

  • 손쉽게 디바이스 그룹을 생성하고 이를 Lambda 함수와 연결해 함수가 트리거 되면 원하는 작업이 실행되게 가능, 디바이스 상태, 활동 추적 가능
    3. AWS IoT Analytics(IoT 디바이스에 대한 분석)

  • 자체 IoT 분석 플랫폼을 구축하는데 일반적으로 필요한 비용과 복잡성에 대해 전혀 걱정할 필요 없이 대규모 IoT 데이터에 대한 정교한 분석을 손쉽게 실행 및 운용할 수 있게 해주는 완전관리형 서비스

  • IoT 데이터에 대한 분석을 실행하고 IoT 애플리케이션 및 기계 학습 사용 사례에 대해 더욱 유용하고 정확한 결정을 내리는 데 도움이 되는 통찰력을 얻는 가장 쉬운 방법

  • IoT 데이터는 대부분 비정형 데이터이므로 정형 데이터를 처리하도록 설계된 기존 분석 및 비즈니스 인텔리전스 도구로 분석하기 어려움

  • IoT 데이터는 잡음 처리를 기록하는 디바이스로부터 오는 경우가 많습니다.

    • 이러한 디바이스의 데이터는 큰폭의 차이, 손상된 메시지, 틀린 판독값을 함유하므로 주기적으로 정리해야함
  • IoT 데이터는 타사 데이터 입력의 추가 컨텍스트에서만 의미가 있는 경우가 많음

  • IoT 디바이스의 데이터를 분석하는 데 필요한 까다로운 각 단계를 자동화함

  • 필터링, 변환 및 보강 한 뒤 분석을 위해 시계열 데이터 스토어에 저장

  • 디바이스에서 필요한 데이터만 수집하도록 서비스를 설정하고, 데이터를 처리하는 데 수학적 변환을 적용하고, 처리된 데이터를 저장하기 전에 디바이스 유형 및 위치와 같은 디바이스별 메타데이터로 데이터를 보강 가능

  • 내장된 SQL 쿼리 엔진으로 임시 또는 예정된 쿼리를 실행하여 데이터를 분석하거나, 좀더 복잡한 분석 및 기계 학습 추론을 수행 가능

  • 일반 IoT 사용 사례를 위한 사전 빌드 모델이 포함 되므로 쉽게 시작 가능

  • 컨테이너 패키징 된 사용자 지정 분석을 사용해 실행 가능
    4. AWS IoT Button(클라우드 프로그래밍 가능한 대시 버튼)

  • Amazon Dash Button 하드웨어를 기반으로 한 프로그램이 가능한 버튼

  • wifi로 작동하며 손쉽게 사용할 수 있고, AWS service와 연동 가능

  • 버튼의 로직을 코딩하여 클릭수 세기, 호출, 경고, 중지, 서비스 주문 등을 할 수 있다
    5. AWS IoT Core(디바이스를 클라우드에 연결)

  • AWS IoT Core는 커넥티드 디바이스가 쉽고 안전하게 클라우드 애플리케이션 및 다른 디바이스와 상호 작용할 수 있게 해주는 관리형 클라우드 서비스임

  • 수십억개의 디바이스, 수조건의 메시지 지원, AWS 엔드포인트 및 다른 디바이스로 라우팅 가능

  • 디바이스가 연결되어 있지 않더라도 언제나 애플리케이션에서 모든 디바이스를 추적하고 디바이스와 통신 가능

  • 인프라 관리 필요없이 AWS 서비스를 사용하여 커넥티드 디바이스에서 생성한 데이터를 수집, 처리 및 분석하고 이를 기반으로 운영하는 IoT 애플리케이션을 손쉽게 구축가능
    6. IoT Device Defender(IoT 디바이스를 위한 보안 관리)

  • 지속적으로 IoT 구성을 모니터링하고 감사하여 보안 모범 사례 준수 확인, 플릿을 보호 할 수 있는 완전 관리형 서비스

  • 디바이스가 서로 통신하고 클라우드와 통신할 때 정보를 안전하게 유지하도록 설정하는 일련의 기술 제어 항목임

  • 디바이스 자격 증명 보장, 디바이스 인증 및 권한 부여, 디바이스 데이터 암호화 같은 IoT 구성을 손쉽게 유지 관리하고 적용 가능

  • 만약 작격 증명 인증서를 여러 디바이스가 공유하거나 자격 증명 인증서가 취소된 디바이스가 연결하려 시도하는 등, IoT 구성에 보안 위험을 초래할 것 같으면 알림을 전송함

  • 다른 서비스와 연계해 보안을 강화거나 알림을 다른 곳에서 받을 수 있음
    7. AWS IoT Device Management(IoT 디바이스를 온보딩, 조직화 및 원격으로 관리)

  • AWS IoT Device Management를 사용하면 손쉽게 대규모의 IoT 디바이스를 안전하게 온보딩, 구성 및 모니터링하고 원격으로 관리할 수 있음

  • 많은 IoT 배포가 수십만 개에서 수백만 개의 디바이스로 구성되므로 연결된 디바이스 플릿을 추적, 모니터링 및 관리하는 것은 필수

  • 배포 이후 디바이스가 올바르고 안전하게 작동하록 보장해야함,

  • 디바이스에 대한 액세스를 보호, 상태를 모니터링, 문제를 탐지 및 원격으로 해결, 소프트웨어, 펌웨어 업데이트 관리

  • 손쉽게 대규모의 IoT 디바이스를 온보딩, 체계화 및 모니터링, 원격 관리 가능

  • 대량 등록, 디바이스 분류, 펌웨어 업데이트가 쉬워짐
    8. AWS IoT Events(IoT 이벤트 감지 및 대응)

  • 수많은 IoT 센서와 애플리케이션에서 이벤트를 손쉽게 감지하여 대응

  • IoT 센서와 애플리케이션에서 이벤트를 쉽게 탐지하고 대응할 수 있는 완전관리형 서비스

  • 이벤트란 예상 보다 더 복잡한 상황을 식별하는 데이터의 패턴을 의미한다.

  • 냉동실 온도, 호흡 장치의 습도 또는 모터의 벨트 속도 같은 원경데이터를 전송하는 수천 개의 IoT 센서에서 간단하게 이벤트 탐지 가능
    9. AWS IoT Greengrass(디바이스를 위한 로컬 컴퓨팅, 메시징 및 동기화)

  • 커넥티드 디바이스에서 로컬 컴퓨팅, 메시징, 데이터 캐싱, 동기화 및 기계 학습추론 기능을 안전한 방식으로 실행할 수 있는 소프트웨어

  • 인터넷에 연결되어 있지 않더라도 커넥티드 디바이스에서 AWS Lambda 함수를 실행, 기계 학습 모델 기반으로 예측을 실행, 데이터를 동기화 상태로 유지, 안전하게 디바이스간 통신

  • 디바이스 데이터를 필터링 ,필요 정보만 클라우드로 전송, 다른 서비스와 연결, 인증 간소화
    **10. AWS IoT SiteWise(IoT 데이터 수집기 및 인터프리터) **

  • 산업 장비에서 손쉽게 데이터 수집 및 구성, 검색, 장비 및 프로세스 성능 분석

  • 데이터가 사유 온프레미스 데이터 스토어에 잠겨있는 경우와 특수한 전문지식이 있어야 하는 경우를 쉽게 해결

  • 시설 내의 게이트웨이에서 실행되는 소프트웨어를 제공하여 프로세스 간소화, 자동화 이후 온프레미스 데이터 서버에 연결하여 데이터를 수집 후 AWS 클라우드로 전송
    11. AWS IoT Things Graph(디바이스 및 웹 서비스를 손쉽게 연결)

  • IoT 애플리케이션을 시각적으로 개발, 다양한 디바이스와 클라우드 서비스를 연결해 IoT 애플리케이션을 쉽게 구축

  • 디바이스와 웹 서비스 간 상호 작용을 연결하고 조율할 수 있는 시각적인 끌어 놓기 인터페이스 제공하여 IoT 애플리케이션을 빠르게 구축 가능,

    11 AWS 기계학습

    AWS 기계학습 개요

    1. AWS에서의 기계 학습

  • 가장 폭넓고 깊이 있는 비즈니스용 기계 학습 및 AI 서비스 세트를 갖추고 있음

  • 모든 개발자가 기계 학습을 손쉽게 활용하는 데 방해가 되는 가장 까다로운 몇 가지 문제를 고객을 대신해 해결함

  • 컴퓨터 비전, 언어, 추천 및 예측을 위해 사전 학습된 AI 서비스를 선택 가능하며, Amazon Sage Maker를 통해 기계 학습 모델을 대규모로 구축, 학습 및 배포하거나 모든 주요 오픈 소스 프레임워크에 대한 지원을 바탕으로 사용자 지정 모델을 구축할 수 있음

  • AWS의 기능은 가장 포괄적인 클라우드 플랫폼을 기반으로 구축되며 고성능 컴퓨팅을 통해 기계 학습에 최적화됨

  • 최고 수준의 보안 및 분석 기능도 제공함
    2. 애플리케이션에 손쉽게 인텔리전스 추가

  • 기계학습 기술과 경험이 없어도 AI 서비스 사용 가능

  • AWS의 사전 학습된 AI 서비스는 애플리케이션 및 워크플로에 바로 사용 가능한 인텔리전스를 제공

  • AI 서비스는 애플리케이션에 쉽게 통합되므로 개인화된 추천, 콜 센터 현대화, 안전 및 보안 개선과 고객 참여 증진 같은 일반적인 사용 사례 해결 가능

  • 아마존 상용 수준과 동일한 딥러닝 기술이 사용되므로 지속적으로 학습하는 API의 품질 및 정확성을 얻을 수 있음

  • 추천 : Personalize,

  • 예측 : Forecast

  • 이미지 및 비디오 분석 : Rekognition

  • 고급 텍스트 분석 : Comprehend

  • 문서 분석 : Textract

  • 음성 : polly

  • 대화 에이전트 : lex

  • 번역 : translate

  • 전사(음성 텍스트 변환) : transcribe

    AWS 기계학습 서비스

    1.Amazon Sage Maker(기계 학습 모델을 대규모로 구축, 훈련 및 배포)

  • 개발자 및 데이터 과학자가 모든 규모의 기계 학습 모델을 쉽고 빠르게 구축, 교육 및 배포할 수 있도록 지원함

    구축 학습 배포
    학습 데이터 수집 및 준비 데이터 레이블 지정 및 일반적인 문제에 대한 기본 제공 노트북 학습 데이터 수집 및 준비 최고 성능의 인프라에서 원클릭 학습 프로덕션 환경에 모델 배포 클릭 한 번으로 배포
    ML 알고리즘 선택 및 최적화 AWS Marketplace의 기본 제공 고성능 알고리즘 및 즉시 사용 가능한 수백가지 알고리즘 모델 학습 및 튜닝 한 번의 학습, 모든 위치에서 실행 및 모델 최적화 프로덕션 환경 조정 및 관리 Auto Scailing 기능이 포함된 완전관리형 서비스로 75%의 비용 절감
    • 구축 : 10배 더 높은 성능을 제공하는 알고리즘, 사전 구축된 Jupyter Notebook(완전 관리형 인스턴스), 알고리즘 마켓플레이스(알고리즘, 모델 등), 70% 비용 절감(Ground Truth를 통한 학습 데이터 세트 구축으로)
    • 학습 : AutoML 기능을 통한 원클릭 학습 및 자동 모델 튜닝으로 모델의 예측의 정확도 최대화, 한 번 학습 후 모든 위치에서 2배 높은 성능으로 실행(Neo), 완전관리형
    • 배포: 원클릭 배포(Auto-scaling 클러스터), 추론 비용 최대 75% 절감(Elastic Inference), 자동 A/B 테스트(최대 5개 모델), Auto Scaling을 통한 완전관리형 호스팅(관리형 프로덕션 인프라에서 상태확인, 보안패치, 유지관리)

1) 학습 데이터 신속 분류(라벨링: Amazon Sage Maker Ground Truth)

  • Amazon Sage Maker Ground Truth를 통해 학습 데이터 세트를 매우 정확하고도 신속하게 구축, 관리
  • Ground Truth는 공공 및 개인 분류자에게 쉽게 이용할 수 있도록 지원하며, 일반적인 라벨링 작업을 위해 미리 작성된 워크플로와 인터페이스를 제공함
  • Ground Truth는 작업자가 지정한 레이블을 통해 학습하여 고품질의 자동 주석을 생성하므로 라벨링 비용을 상당히 낮출 수 있음
    2) 머신러닝 알고리즘 선택 및 최적화
  • 여러 알고리즘 및 오픈소스 프레임워크에서 자동으로 구성하고 최적화함
  • 일반적으로 사용되는 기계학습 알고리즘은 AWS Marketplace에서 제공하는 200개 이상의 사전 학습 모델과 알고리즘을 포함하여 규모, 속도 및 정확도에 따라 내장되고 조정됨
  • Docker 컨테이너에 구축함으로써 다른 알고리즘이나 프레임워크를 가졍로 수도 있음
    3) 한 번의 학습을 통해 어디서나 실행
  • Neo를 사용하면 모델을 한 번 학습하여 어디에나 배포 가능
  • 머신러닝을 통해 Neo는 지정된 하드웨어 플랫폼에 일반적으로 사용되는 프레임워크로 구축되어 학습된 모델을 자동으로 최적화
  • EC2 인스턴스 및 SageMaker 인스턴스 또는 Neo 런타임을 포함하는 엣지의 디바이스(AWS Greengrass 디바이스 등)에 이 모델을 배포할 수 있음
    4) 모델 자동 튜닝
  • 머신러닝을 사용하여 모델을 신속하고도 최대한 정확하게 튜닝함
  • 이 기능을 사용하면 모델 파라미터를 수동으로 튜닝하는 지루한 시행착오 과정을 건너뛸 수 있음
  • 모델 자동 튜닝은 여러 번의 학습 실행에서 데이터로부터 흥미로운 특징을 발견하고 그 특징들이 어떻게 상호 작용하여 정확도에 영향을 주는 지 학습함으로써 하이퍼파라미터 최적화를 수행함
  • 학습된 모델의 품질을 극대화하기 위해 며칠 또는 몇 주까지 시간 절약 가능
    2. Amazon Comprehend(텍스트에서 통찰력 확보 및 관계 파악)
  • 기계 학습을 사용하여 텍스트 안에 있는 통찰력과 관계를 찾아내는 자연어 처리(NLP) 서비스
  • 기계 학습 경험은 필요 없음, 비정형 데이터에서 높은 가치를 찾아냄
    3. Amazon Elastic Inference(딥 러닝 추론 가속화)
  • Amazon EC2 및 Amazon SageMaker 인스턴스에 낮은 비용의 GPU 지원 가속을 연결해 딥 러닝 추론 비용을 최대 75% 절감 가능
  • TensorFlow, Apache MXNet 및 ONNX 모델을 지원하며 더 많은 프레임워크가 곧 추가 예정
  • 코드 변경 없이 매우 적절한 양의 GPU 지원 추론 가속을 EC2 또는 SageMaker 인스턴스 유형에 연결하여 이러한 문제를 해결함
  • 애플리 케이션의 전체 CPU 및 메모리 요구 사항에 가장 적합한 이스턴스 유형을 선택한 후 리소스를 효율적으로 사용하고 추론 실행 비용을 절감하는 데 필요한 양의 추론 가속을 별도로 구성 가능
    4.Amazon Forecast(기계 학습을 사용하여 예측 정확도 개선)
  • 매우 정확한 예측을 위해 기계 학습을 사용하는 완전관리형 서비스
  • Amazon.com에서 사용하는 것과 동일한 기술 기반으로 기계 학습을 통해 시계열 데이터를 추가 변수와 결합해 예측을 만들어냄
  • 기계 학습 경험이 없어도 시작 가능
  • 기록 데이터와 예측에 영향을 줄 수 있는 추가 데이터만 제공하면 됨
  • 완전관리형 서비스이며, 서버를 프로비저닝, 기계 학습 모델 구축, 교육, 배포할 필요가 없으며 사용한 만큼만 비용 지불, 최소 요금, 약정 없음
    5. Amazon Lex(음성 및 텍스트 챗봇 구축)
  • 음성과 텍스트를 사용하는 애플리케이션에 대화형 인터페이스를 구축하는 서비스
  • 음성을 텍스트로 변환하는 자동 음성 인식(ASR)과 텍스트의 의도를 이해하는 자연어 처리(NLU)라는 첨단 딥 러닝 기능을 제공, 상당히 매력적인 사용자 경험과 생생한 대화형 인터페이스를 구축 가능
    6. Amazon Personalize(애플리케이션 실시간 추천 기능)
  • 개발자가 애플리케이션을 사용하는 고객에게 개별화된 추천을 손쉽게 생성할 수 있도록 하는 기계 학습 서비스
  • 맞춤형 제품, 콘텐츠 추천, 맞춤형 검색, 마케팅 프로모션에 사용됨
    7. Amazon Rekognition(이미지 및 비디오 분석)
  • 이미지, 비디오를 Rekognition API에 제공하기만 하면, 서비스에서 객체, 사람, 텍스트, 장면 및 동작을 식별하고 부적절한 콘텐츠 탐지 가능
  • 정확한 얼굴 분석 및 얼굴 인식 제공, 아마존 상용 급, 기계 학습 전문 지식 필요 없음
    8. Amazon SageMaker Ground Truth(정확한 ML 교육 데이터 세트 구축)
  • 기계 학습을 위해 매우 정확한 교육 데이터 세트를 신속하게 구축할 수 있도록 지원함
  • 일반 및 사내 레이블링 작업자에게 간편한 액세스를 제공하며, 일반적인 레이블링 작업에 대한 워크플로와 인터페이스를 기본적으로 제공함
  • 자동레이블링 기능을 사용해 독립적으로 데이터에 레이블을 지정하는 것을 배우도록 사람이 레이블을 지정한 데이터로 GRound Truth를 교육 시키면 최대 비용이 70%까지 낮아짐
  • 이를 통해 품질이 뛰어나고 방대한 교육 데이터로 더욱 성공적인 기계학습 모델 생성 가능
    9. Amazon Textract(문서에서 텍스트와 데이터 추출)
  • 스캔한 문서에서 텍스트 및 데이터를 자동으로 추출하는 서비스
  • 단순한 OCR을 넘어 양식의 필드 콘텐츠와 테이블에 저장된 정보를 식별함
  • 기계 학습을 사용하여 사실상 모든 유형의 문서를 즉시 읽고 수동 작업 또는 사용자 지정 코드 없이 텍스트와 데이터를 정확하게 추출함으로써 이러한 문제를 해결함
  • 추가로 스마트 검색 인덱스 생성, 자동화된 승인 워크플로 구축, 교정이 필요할 수 있는 데이터를 플래그 지정해 문서 아카이브 규칙에 관한 규정 준수를 더욱 원할하게 유지할 수 있음
    10. Amazon Translate(자연스럽고 유창한 언어번역)
  • 합리적인 가격으로 고품질의 언어 번역을 빠르게 제공하는 신경망 기계 번역 서비스
  • 인공신경망 기계 번역은 언어 번역 자동화의 한 형태로, 딥 러닝 모델을 사용하여 기존 통계 및 규칙 기반 번역 알고리즘보다 더 정확하고 자연스러움
  • 어플리케이션 현지화에 사용됨
    11. Amazon Transcribe(자동 음성 인식)
  • 개발자가 음성을 텍스트로 변환하는 기능을 애플리케이션에 쉽게 추가할 수 있게 지원하는 자동 음성 인식(ASR) 서비스
  • API를 통해 S3에 저장된 오디오 파일 분석, 텍스트 파일 변호나 가능, 라이브 자막 등에도 사용
  • 단어마다 타임스탬프를 추가하므로 텍스트 검생으로 원래 소스에서 오디오의 정확한 위치 손쉽게 찾을 수 있음
    12. AWS Deep Learning AMI(Amazon EC2 기반 딥 러닝)
  • 딥 러닝 애플리케이션을 빠르게 구축할 수 있는 사전 구성된 환경
  • 규모 관계없이 딥 러닝 가속화 인프라, 도구 제공, 여러 인기 있는 딥러닝 프레임워크와 인터페이스가 준비됨
    13. AWS Deep Learning Containers(딥 러닝을 위한 Docker 이미지)
  • 최적화되고 사전에 패키징된 컨테이너 이미지로 딥 러닝 환경을 신속하게 설정
  • AWS DL Containers는 딥 러닝 프레임워크가 사전 설치된 Docker 이미지로, 처음부터 환경을 구축하고 최적화하는 복잡한 프로세스를 건너 뛰어 커스텀 ML 환경을 신속하게 배포하도록 지원
  • 여러 인기 딥러닝 프레임워크를 지원하며 다른 AWS 서비스와 연동됨
  • ECR, Marketplace를 통해 무료로 제공되며, 사용된 리소스에 대해서만 요금 지불
    14. AWS DeepLens(딥 러닝이 지원되는 비디오 카메라)
  • 딥 러닝 기술을 확장하도록 설계된 완전히 프로그래밍 가능한 비디오 카메라, 자습서, 코드 및 사전 교육된 모델을 통해 말그대로 개발자의 손에 기계 학습을 쥐어줌
  • 딥러닝 기본사항 교육 가능
  • 카메라에서 로컬로 딥러닝 모델을 실행하여 카메라가 봅는 것을 분석하고 조치를 취할 수 있음
    15. AWS DeepRacer(ML로 움직이는 1/18 크기의 자율줗애 경주용 자동차)
  • 기계 학습을 시작하는 가장 빠른 방법
    **16. AWS Inferential(기계 학습 추론 칩) **
  • 저렴한 비용으로 높은 성능을 제공하도록 설계된 기계 학습 추론칩
  • 여러 인기 딥러닝 프레임워크, ONNX 형식을 사용하는 모델 지원
  • 훈련된 기계학습 모델을 사용해 예측하면 컴퓨팅 비용 90% 증가할 수 있음
  • 일부 추론 워크로드는 전체 GPU가 필요하거나 짧은 지연 시간 요구사항이 매우 낮으므로 저렴한 비용으로 해결하기 위해서는 전용 추론 칩이 필요함
    17. AWS Apache MXnet(확장 가능한 오픈소스 딥 러닝 프레임워크)
  • 빠르고 확장 가능한 교육 및 추론 프레임워크, 기계 학습을 위해 사용이 쉽고 간단한 API가 제공됨
  • MXNet에는 Gluon 인터페이스가 포함되어 모든 기술 수준의 개발자가 딥러닝 시작 가능
    18. AWS 기반 TensorFlow(오픈소스 인공지능 라이브러리)
  • 다양한 산업에서 사용되고 있는 딥러닝 라이브러리를 AWS 서비스와 연동하여 사용 가능

12 AWS 자습서

AWS 자습서

  • 컴퓨팅, 스토리지, 데이터베이스, 개발자 도구, 보안, 자격 증명 및 규정 준수, 암호화 및 PKI, 기계 학습, 관리 및 거버넌스, 로봇 공학, 블록체인, 게임개발 등등 내용이 있음, 한글도 지원

  • 자습서 예시 : ML

  • 1단계 데이터 준비, 2단계 교육 데이터 원본 생성, 3단계 ML 모델 생성, 4단계 ML 모델의 예측 성능 검토 및 점수 임계값 설정, 5단계 ML 모델을 사용하여 에측생성, 6단계 정리

    AWS 기계학습 자습서

    1. Amazon Machine Learning

  • 설명은 위 ML 부분 참조, 복잡한 ML 알고리즘 및 기술을 배우지 않고도 기계 학습 모델을 만드는 과정을 안내하는 시각화 도구 및 마법사 제공

  • 모델이 준비되면 간단한 API를 사용하여 애플리케이션에 대한 예측 정보를 쉽게 얻도록 지원하므로 사용자 지정 예측 생성 코드를 실행하거나 인프라를 관리할 필요가 없음

2. Amazon Machine Learning의 주요 개념

단어 개념
데이터 원본 Amazon ML에 대한 데이터 입력과 관련된 메타데이터를 포함함
ML 모델 입력 데이터에서 추출된 패턴을 사용하여 예측을 생성함
평가 ML 모델의 품질을 측정함
배치 예측 비동기식으로 여러 입력 데이터 관측에 대한 예측을 생성함
실시간 예측 동기적으로 개별 데이터 관측에 대한 예측을 생성함

3. Amazon Machine Learning에 액세스

  • Amazon ML 콘술
  • AWS CLI
  • Amazon ML API
  • AWS SDK
    4. 리전 및 Endpint
  • AWS ML은 미국 동부와 eu 에서만 실시간 예측 엔드포인트 지원
  • 데이터 집합을 호스팅하고 모델을 교육 및 평가하고 모든 리전에서 예측을 트리거 가능 모든 리소스를 동일한 리전에 유지
    5. AWS ML 설정
  • AWS 가입
  • AWS에 가입하면 AWS ML을 포함해 AWS의 모든 서비스에 AWS 계정이 자동 등록
    6. 자습서 : AWS ML을 사용한 마케팅 반응 예측
  • 한번 해보자
  • UCI ML 리포지토리의 은행 및 마케팅 데이터 집합 사용해서 고객 식별