2021. 9. 30. 17:55ㆍaws
https://aws.amazon.com/ko/events/awsome-day/awsome-day-online/
회사에서 공부하는 시간을 가지고 있기 때문에, 마침 진행되는 AWSome Day 무료 온라인 컨퍼런스에 참여해 보았습니다.
아는 만큼 보인다고 ... 네트워킹과 보안 쪽은 잘 모르겠더라구요
거기다가 회사 내에서 참여한 만큼, 중간 중간에 간단한 업무를 본다던가, 회의를 한다던가 하는 것 때문에 처음부터 끝까지 참여하지는 못했습니다.
특히나, 5강 AWS와 함께 혁신하기 에서 회의를 하게 되었는데, 너무 아쉬웠습니다.
최신 기술에 대한 문제점이나 개념들이 나오는 것 같던데 ...
다음에 이런 기회가 있다면 참여할 수 있을지 잘 모르겠네요
아래는 참여하면서 나름 정리를 해 보았습니다.
※ 차례
1. AWS 클라우드 소개
2. AWS 클라우드 핵심 서비스 소개 : 컴퓨팅
3. AWS 클라우드 핵심 서비스 소개 : 스토리지, 데이터베이스
4. AWS 클라우드 핵심 서비스 소개 : 네트워킹, 보안
5. AWS와 함께 혁신하기
1. AWS 클라우드 소개
클라우드란?
- 구름, 즉 인터넷을 통해서 원격지에 있는 IT 리소스, 스토리지, 데이터베이스, 애플리케이션 등을 접속해서 이용하는 서비스 이다.
- 인프라를 하드웨어가 아닌 소프트웨어로 간주하고 사용할 수 있다.
- 기존의 방법보다 훨씬 빠르게 사용할 수 있다는 장점이 있다.
- 사용량에 따라 비용을 지불한다. ( 본격적인 약정 없이 테스트 가능 , 언제든지 필요에 따라 중지 할 수도 있다 )
AWS 클라우드 사용 이점
1) 자본 비용을 가변 비용으로 대체
- 구축하고자 하는 서비스에 대해 필요한 리소스 만큼만 사용할 수 있다
2) 규모의 경제로 얻게되는 이점
- 비용 절감 , 보안 , 안정성
3) 용량 추정 불필요
4) 속도 및 대응력 향상
- 기존의 만들어서 사용해야 했던 것들을, 미리 만들어져 있는 인프라 사용
5) 데이터 센터 운영 및 유지 관리에 비용 투자 불필요
6) 몇 분 만에 전 세계에 배포
- 클릭 몇 번 만으로 전 세계에 배포할 수 있다.
작동 방식
- API 호출을 통해서 액세스
- 필요한 서비스 프로비저닝하고 사용
- 불 필요할 경우, 손 쉽게 삭제 및 해제 가능
클라우드 배포 모델
1) 온프레미스 ( 프라이빗 )
- 회사 소유의 센터에 데이터를 저장
2) 하이브리드
- 기존의 온프레미스 데이터 센터와 클라우드를 같이 사용하는 모델
3) 클라우드
- 클라우드 상에서 모든 애플리케이션을 배포하고 사용 하는 모델
AWS 글로벌 인프라
1) 리전
- 서비스를 제공할 위치
2) 가용 영역
- 1개의 리전은 2개 이상의 가용 영역을 가지고 있다 ( 데이터 센터 )
※ aws는 서버, 데이터 센터 , 네트워크 를 임대해서 사용할 수 있다.
AWS 엣지 인프라
- 클라우드를 엔드포인트에서 엔드 유저에 더 가까이 사용할 수 있도록 하는 서비스
- AWS Outposts ( 온프레미스 데이터 센터를 가까이 가져오는 서비스 )
- AWS Local Zones ( 자체 데이터 센터 인프라를 보유 및 운영할 필요 없이 컴퓨팅 및 스토리지 리소스를 최종 사용자, 엔드 유저에게 더 가까이 가져오는 서비스 )
- AWS Wavelength ( 스토리지 및 컴퓨팅 서비스를 5G 에 접속해서 5G 최종 사용자용 애플리케이션을 손쉽게 제작할 수 있도록 하는 서비스 )
AWS와 상호 작용하는 3가지 방법
1) AWS Management Console
2) AWS 명령줄 인터페이스(AWS CLI)
3) 소프트웨어 개발 키트(SDK)
2. AWS 클라우드 핵심 서비스 소개 : 컴퓨팅
Amazon Elastic Compute Cloud(EC2)
1) 크키 고정 가능한 컴퓨팅 용량
- CPU , 메모리 등 컴퓨터 스펙을 제공 ( 원하는 컴퓨팅 유형, 사이즈 선택 )
- 운영 도중에도 변경가능
2) 컴퓨팅 리소스 완전 제어
3) 새로운 서버 인스턴스 확보 및 부팅 시간 단축
- 실제 사용한 만큼한 요금 지불
- 일반적인 장애 상황으로부터 애플리케이션 격리 도구 제공
가상 머신과 물리적 서버 비교
- 온프레미스 서버로 해결하기 어려운 몇몇 문제 해결
- 데이터 기반으로 서버 확장 , 축소 의사 결정 가능
- 빠른 반복
- 자유로운 실수 ( 온프레미스 서버를 사용할 경우 잉여 자원이 될 수 있는 부분을 , AWS 환경에서는 삭제 , 추가 등 자유로움 )
EC2
- AMI ( Amaznon Machine Image ) 사용 <- 플랫폼
- 선택한 AMI 를 기반으로 인스턴스를 사용할 수 있음
이점
1) 탄력성 ( 필요한 만큼의 리소스에 액세스 , 몇 분 만에 확장 또는 축소 )
2) 제어 ( 중단, 시작 등 쉽게 할 수 있음 )
3) 유연성
4) 통합( ELB, S3, RDS 등 다양한 서비스와 같이 사용할 수 있음 )
5) 안정성
6) 보안
7) 저렴한 비용 ( 자유로운 제어를 통해 효율적으로 컴퓨팅 자원 사용, 오토스케일링 )
8) 용이성 ( 사용하기가 쉽다 )
EC2 인스턴스 패밀리 및 이름
인스턴스 패밀리 타입
1) 균형잡힌 인스턴스의 성능을 가진 범용 패밀리
2) 고성능 CPU를 제공하는 컴퓨터 최적화
3) 대규모 메모리
4) 스토리지 최적화
5) GPU 액셀러레이티드 컴퓨팅 패밀리 - 기계 학습이 필요한 경우 등
EC2 요금
1) 온디맨드 인스턴스 - 초당 비용 ( ubuntu, Linux 만 가능 )
2) 예약 인스턴스 - 온디맨드 인스턴스에 비해 정해진 시간에만 사용하기 때문에 저렴
3) Savings Plans - 예약 인스턴스보다는 덜 저렴 , 리전, 인스턴스 패밀리, 사이즈 등을 변경할 수 있음
4) 스팟 인스턴스 - 온디맨드 인스턴스보다 최대 90% 할인 가격으로 예비 EC2 , 비용 예측이 가능하고, 언제든지 종료될 수 있기 때문에 , 재처리 될 수 있는 것에 대해 최적화
비관리형 서비스와 관리형 서비스 비교
1) 비관리형 - 직접 데이터베이스 셋업 ( 사용자가 거의 모든 것을 수행 )
2) 관리형 - AWS 에서 알아서 해줌
- Amazon Elastic Container Srvice(ECS)
컨테이너가 소수일 때는 충분히 관리 할 수 있지만, 많아지면 관리가 어려워져서 중간 관리자가 필요함. 쿠버네티스 등을 사용하게 됌. 이를 줄이기 위해 ECS 라는 서비스를 제공
※ 상황에 맞춰서 각각에 맞는 것 선택해야 함
서버리스 컴퓨팅
- 서버를 관리하지 않고 애플리케이션과 서비스를 구축하고 실행하는 서비스
1) 프로비저닝하거나 관리할 서버가 없음
2) 사용량에 따라 조정
3) 유휴 상태에 대한 지불 없음
4) 가용성 및 내결함성 내장
5) 오버헤드를 줄일 수 있다
※ 대표적으로 AWS Lambda 가 있다
AWS Lambda
- Node.js , Java 등 으로 코드만 제공하면 됌
- 완전 관리형 컴퓨팅 서비스
- 상태 비저장 코드 실행 ( Lambda 함수가 실행될 때만 사용 됌 , 비용도 마찬가지 )
- 이벤트에 대한 응답으로 Lambda 함수 사용 가능
3. AWS 클라우드 핵심 서비스 소개 : 스토리지, 데이터베이스
스토리지
- Amazon S3 - 클라우드상의 확장 가능하고 내구성이 뛰어난 객체 스토리지
- Amazon S3 Glacier - 클라우드 상의 저렴하고 내구성이 뛰어난 아카이브 스토리지
- Amazon EFS
- AWS Strorage Gateway
- Amazon EBS
1) Amazon S3
- 객체 수준 스토리지
- 높은 내구성 ( 연간 객체에 대해 99.99999999999% 내구성을 제공하도록 설계 )
- 높은 수평 확장성. 즉 유연성 ( 원하는 형식의 데이터를 원하는 만큼 저장 가능 )
- 이벤트 알림 기능 ( 다른 프로세스 Lambda 같은 것에 트리거를 연결할 수 있음 )
- 고유한 HTTP URL 연결 ( 정적 웹 콘텐츠 또는 미디어 저장 배포 가능 )
- 사용 사례 ) 데이터 레이크 , 빅 데이터 분석
Aamazon S3가 객체를 저장하는 방식
- 데이터를 저장 및 검색하도록 구축 ( 어떤 문자열 모두 사용 가능 )
- 속도, 내구성, 가용성이 뛰어난 객체 액세스
- 버킷에 저장할 수 있는 객체 수에 제한이 없음 ( 최상의 수평확장성을 가지고 있음 )
- 웹 어디서나 언제든 데이터 저장 및 검색
- 생성한 버킷, 객체에 직접 제어할 수 있음 ( 사용자에 대한 정책 등 )
- 키 : 벨류 값의 객체 스토리지
※ 버킷 : 객체 스토리지 ( 폴더를 대신하는 여러 개의 객체를 저장할 수 있는 큰 공간 )
2) Amazon S3 Glacier
- 장기 데이터 스토리지
- 아카이브 및 백업
- 비용이 매우 저렴한 아카이브용 스토리지
사용사례 ) 미디어 자산 워크폴로, 의료 정보 아카이빙 ,규제 및 규정 준수를 위한 아카이빙, 과학적 데이터 스토리지, 디지털 보존, 마그네틱 테이프 대체
3) Amazon Elastic Block Stroe(Amaznon EBS)
- 인스턴스용 영구 블록 스티리지
- 복제를 통해 보호
- 상이한 드라이브 유형
- 몇 분 만에 확장 또는 축소
- 프로비저닝한 만큼만 요금 지불
- 스냅샷 기능
- 암호화 사용 가능
- 가용 역역 자체에 지진 또는 재해 발생시 미러링된 데이터가 소실 될 수 있으니, 주기적으로 스냅샷 을 생성하기를 권장
- 다른 리전으로 스냅샷을 복사 또는 공유 가능
- 추가비용 없이 암호화 가능 ( EC2 에서 보안 비용이 발생 )
데이터베이스
- 15개 이상의 목적별로 DB 엔진 중에서 선택 가능 ( 다양한 데이터 모델 지원 )
MySQL , PostGreSQL 과 호환되는 완전 관리형 DB -> Amazon Auroa
- 서버 프로비저닝, 패치, 구성 또는 백업 같은 DB 관리 태스크는 걱정할 필요가 없음.
DIY 와 AWS 데이터베이스 서비스 비교
- DIY 는 OS 수준에 액세스 등이 필요한 세밀한 조정이 필요할 때 EC2의 데이터베이스 사용
- AWS 데이터베이스 서비스는 손쉬운 설정, 관리, 유지, 즉각적인 고가용성 구현, 성능에 초점, 관리형 인프라 라는 장점이 있다. ( DB 이중화를 손쉽게 할 수 있다 )
Amazon RDS
클릭 몇 번으로 클라우드에서 관계형 데이터베이스를 설정, 운영, 조정 할 수 있음.
- Amazon Aurora , MsSQL , MariaDB , Oracle , PostgreSQL , MySQL
- DB 를 구축하기 위해서 다운로드 , 설치 , 패치 등이 불 필요
- DB 를 중단하지 않고 확장 가능
- 안정성이 높은 인프라에서 실행
Amazon Aurora
- 클라우드를 위해 구축된 MySQL 및 PostgreSQL 을 위해 만든 데이터베이스
- 완전 관리형 서비스 ( 서버 프로비저닝 , 장애 탐지 등 자동화 )
- 읽기 전용 복제본 최대 15개 까지 생성
- 64TB 까지 자동 확장 가능
Amazon DynamoDB
- 비관계형 데이터베이스 서비스
- 완전 관리형 클라우드 DB ( 문서 모델, 키 값 스토어 모두 제공 )
- 모든 테이블에 대해 복구 , 백업 등 지원
- 평균 처리 시간 10밀리초 미만 ( 짧은 지연 시간 )
- 자동 파티셔닝 SSD
- 각각의 사용자에게 각각의 보안 자격을 주고 , 세부적으로 권한 제어 가능
- 유연성 ( 문서의 저장, 쿼리 및 업데이트 지원 )
4. AWS 클라우드 핵심 서비스 소개 : 네트워킹, 보안
네트워킹
Amazon Virtual Private Cloud ( Amazon VPC )
- IP 주소의 범위 선택, 서브넷 생성, 라우팅 테이블 및 가상 네트워킹 환경 완벽 제어
- aws 클라우드의 논리적으로 격리되어 있는 프라이빗 가상 네트워크 공간
- 워크로드의 논리적 격리 제공
- 리소스에 대한 사용자 지정 액세스 제어 및 보안 설정 허용
VPC의 계층화된 네트워크 방어
1. VPC 라우팅 테이블을 사용해 트래픽에 대한 위치를 상세하게 제어해서 방어
2. 네트워크 ACL : 1개 이상의 서브넷 내부와 외부의 트래픽을 제어하기 위한 방화벽 활동을 하는 VPC 규칙을 통해 SSH 접속과 같은 유형 등등 허용/거부 가능
3. 보안 그룹 : 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽
4. 서드파티 솔루션 : 직접 설치하는 보안 솔루션 또는 서비스
ELB
- 들어오는 애플리케이션 트래픽을 EC2 인스턴스 ,컨테이너, IP주소, 람다 함수 가상 어플라이언스 같은 곳에 분산
- 내결함성에 필요한 고가용성, 상태 확인, 강력한 보안
Route 53
- 가용성과 확장성이 뛰어난 DNS 서비스
- 인터넷을 통해 웹 서버 같은 리소스로 자동화된 요청을 보냄
- 접근 및 사용이 가능하고 정상 작동 중인지 확인
- 지연시간 기반 라우팅, 지역 기반 라우팅, 가중치 기반 라우팅 등 다양한 옵션 제공
지역 기반 라우팅
- 싱가포르 접속자는 싱가포르 리전으로 ...... 트래픽을 라우팅을 할 수 있음
- 여기서 중간 업무 -
5. AWS와 함께 혁신하기
사물 인터넷(Iot)
- 사물을 인터넷으로 연결한 것
- 자동차, 기계, 가정용 어플라이언스 등 센서 및 API 를 사용해서 인터넷에서 데이터를 연결하고 교환하는 물리적 개체 네트워크 입니다.
IoT 가 직면한 과제
1. 플랫폼 문제
- Iot 표준과 플랫폼 부족으로 인해 Iot 하드웨어, 네트워크, 애플리케이션 통합 부족으로 완전한 IoT 개발이 어려움
- 디바이스가 원격에 있어 물리적으로 액세스 할 수 없는 문제
2. 데이터 분석의 문제나 긴 대기시간
- 많은 데이터가 발생되고 있으나, 모두 테이터 분석이 되고 있는 것은 아님
- 대기시간이 길어서 실시간 분석 등에 한계
장점
1. 새로운 비즈니스 모델
2. IoT가 제공할 수 있는 효율성 ( 비즈니스 및 제조 프로세스를 자동화 하고 원격으로 모니터링 )
3. 직원 생산성의 증가 ( 다양한 직군에서 직무 만족도 및 인력 생산성을 높이고 있음 )
4. 고객 경험 개선 ( 실제 제품 성능 및 사용과 통합하는 것부터, 고도로 개인화 상품까지 .... )
AWS IoT 서비스
1. "어떻게 IoT 데이터를 이해하고 활용할 수 있을까"
2. "연결성 및 제어 서비스 - 어떻게 대규모 IoT 장치들을 제어하고 관리하고 보안을 신경 쓸 것인가"
3. "고객과 더 가까운 곳에서 운영하는 장치를 빌드할 때 "
- 회의 -