개발자가 클릭 몇 번 하면 인프라가 제공되는 시대가 되었다.
그중 하나인 아마존 웹서비스 AWS에 대해 알아보자.
<1> 클라우드 구성과 용어를 알아보자
<2> 클라우드 서비스 알아보기
<3> 서버 제공 서비스
<4> AWS 네트워킹 제품
<5> 스토리지 및 콘텐츠 전송
<6> 보안
<7> 관리형 서비스 및 데이터 베이스
<8> 배포 및 관리
<9> 분석 제품 및 서비스.
<10> 모바일 제품 및 서비스.
<11> 애플리케이션 제품 및 서비스
<12> 앱 서비스.
<1> 클라우드 구성과 용어를 알아보자
구성은
1. 사용자
2. 관리자 페이지
3. 클라우드 인프라로 구성된다.
우리는 관리자 페이지에서 작업을 한다.
클라우드 서비스를 사용한다.
클라우드 서비스를 사용하기 위해서는 용어부터 알아야한다.
AWS 서비스 용어를 알아보자 ^^
AWS는 VPC, EC2, S3 , RDS,보안 그룹은 기존 인프라에서 네트워크 , 서버, 스토리지, 데이터베이스,방화벽과 같은 말이다.
용어가 다를 뿐이다.
온프라미스와 AWS용어 매칭해 이해 하기
AWS용어 = 일반 IT용어로 표시한다.
1. 서버
EC2
EBS = 빠른 블록 저장장치 (서버의 디스크)
2. 데이터베이스
RDS 데이터 베이스
3. 네트워킹
VPC
4. L4 (로드 밸런서)
ELB
5. 스토리지
S3
Glacier = 저렴한 스토리지
6. Firewall
보안 그룹
7. 네트워크 acl
NACL
8
사용자 계정 및 그룹 관리
IAM
<2> 클라우드 서비스 알아보기
1. 컴퓨팅 - 서버와 서버 이중화, 이중화 서비스
2. 네트워킹 - 네트워크 구성, dns, 데이터 전용선.
3. 스토리지 - 데이터 저장공간.
4. 관리 및 보안 - 계정관리와 모니터링 시스템.
5. 애플리케이션 - 애플리케이션 서비스
1. 컴퓨팅
EC2 = 서버
EC2 Container Service = 컨테이너 기반 서버
Lambda = 이벤트 응답으로 코드 실행. 서버리스
Auto Scaling = 서버 자동 증설
2. 네트워킹
VPC = 네트워크
ELB( Elastic Load Balancing) = L4
Route 53 = DNS 네임서버
Direct Connect = 데이터 전용선
CloudFront = CDN
3. 스토리지와 저장 장치
S3 = 일반 스토리지
Glacier = 저렴한 스토리지
EBS =빠른 블록 저장장치, Elastic Block Store , 서버의 디스크
4. 관리 및 보안
IAM = 사용자 계정 및 그룹관리
CloudWatch = 모니터링 시스템
CloudTrail = 계정에 대한 API 호출 기록
AWS 플랫폼 서비스.
1) 데이터베이스
2) 분석
3) 앱 서비스
4) 배포 및 관리
5) 모바일 서비스
1) 데이터베이스
RDS = 관계형 DB , Mysql, Oracle 등
DynamoDB = NoSQL
Redishift = DW설정, 페타규모
ElastiCache = 캐시 클러스터
2) 분석
Kinesis = 데이터 수집처리. 실시간 처리
EMR = 데이터 프로세싱
Data Pipeline = 데이터 액세스, 변환처리
3) 앱 서비스
SES = 이메일
4) 배포 및 관리
CloudFormation = 리소스 템플릿 생성
Elastic Beanstalk = 애플리케이션 배포
CodeDeploy = 배포
OpsWorks = 애플리케이션 구성과 배포 자동화
5) 모바일 서비스
SNS = 알림을 스마트폰으로 푸시
Cognito = 사용자 데이터 동기화 및 자격증명
ElastiCache = 캐시 클러스터
<3> 서버 제공 서비스
EC2 (Elastic Compute Cloud )
크기 조정 가능한 서버.
1년 예약하면 비용 절감.
EC2 사용하는 순서
1. 리전을 정함 (생성 지역 설정)
2. Amazon 머신 이미지(AMI)에서 EC2 인스턴스를 시작.
3. CPU, 메모리, 스토리지, 네트워크 요구 사항에 따라 인스턴스 유형을 선택.
4. 네트워크 IP, 보안 그룹, 스토리지 볼륨, 태그, 키 페어를 구성함.
인텔 EC2 인스턴스 종류?
1. 컴퓨팅 최적화 C4
2. 메모리 최적화 R3
3. I/O 최적화 I2
4. 균형 조정 M3
5. 범용 및 순간 확장 T2
6. 스토리지 최적화 HS1
EC2 Containeer Service = Docker 컨테이너 지원
Lambda= 이벤트에 대한 응답으로 코드 실행. 서버리스
컴퓨팅 리소스를 자동으로 관리.
Auto Scaling?
EC2 용량을 자동으로 조정하는 것.
Auto Scaling 동작 = 3가지 서비스의 조화
1) Auto Scaling
- 기 정의된 필요한 서버 생성
2) ELB ( Elastic Load Balancing )
- L4로 서버를 서비스에 추가
3) CloudWatch
-크기 조정 정책 - 모니터링 - 5분 동안 CPU 사용률이 xx% 이상이면 적용
<4> AWS 네트워킹 제품
1. Virtual Privatge Cloud (VPC)
가상 네트워크
예전의 데이터센터, 네트워크를 말함.
프라이빗하고 격리된 공간. 프라이빗 IP주소 범위 지정, VPN 연결, 서 비넷 분할, 액세스 제어 목록
IP를 사용할 때 돈을 받지 않음.
사용하지 않을 때 돈을 받음 (반납을 위해)
2. Direct Connect (데이터 전용선 제공 서비스)
고객과 AWS IDC 간 직접 데이터 전용선을 연결하는 서비스
3. Route 53 (DNS)
DNS 서비스.
도메인 이름 등록 제공
TTL 은 1분.
도메인 구매도 가능.
4. Elastic Load Balancing (ELB) = L4
서버 부하 분산
<5> 스토리지 및 콘텐츠 전송
1. AWS 스토리지 제품 및 서비스
1) Simple Store Service (S3)
스토리지
기본적으로 온라인, HTTP 액세스 제공
버킷 내에 객체로 저장함.
계정당 100개 버킷 보유 가능
http://sdasda.s3.amazonaws.com/photos/pic1.jpg
실제 사용한 만큼만 지불
최소 요금 없음
월별 청구
S3 사용법
1. S3에 콘텐츠 올리기
2. Public으로 권한 허용
3. Static Web hosting 허용하면 web에 노출된다.
- 인터넷 액세스 가능.
2) Glacier ( 빙하 )
데이터 백업용으로 적합한 스토리지
매우 저렴한 스토리지.
액세스가 빈번하지 않은 데이터 적합.
Glacier (빙하) , 오래된 데이터 저장에 좋음.
3) Elastic Block Store = EBS
서버의 저장장치로 EBS가 사용됨.
OS , DB 데이터
스냅숏은 S3에 저장됨.
블록 스토리지
지연 시간이 짧은 성능을 제공
가용 영역 내에서 자동 복제
기본 : 범용(SSD) , 고속 SSD , 마그네틱(HDD)
데이터 저장장소
OS 부트/루트 볼륨 , 데이터베이스 사용.
파일 시스템으로 매우 빠름.
S3보다 빠름.
인터넷 액세스 불가능.
4) Storage Gateway
소프트웨어 어플라이언스와 클라우드 기반 스토리지 연결.
게이트웨이.
기존 IT 인프라의 스토리지를 클라우드 스토리지로 이전 시 사용
5) Import/Export
S3 , EBS에서 대량 데이터 송수신 송도를 가속화.
스토리지 디바이스에서 직접 데이터를 송수신.
6) CloudFront = CDN
비용 효율적인 콘텐츠 배포.
짧은 지연시간 , 빠른 데이터 전송속도.
구성 : 원본 ------- 원본 복사(CloudFront) --- 전 세계 53개 저장소.
<6> 보안
1) IAM (Identity and Access Managenment )
사용자 계정관리.
개별 IAM계정을 만들어 사용자별로 AWS 보안 자격 증명을 부여.
2) VPC (Virtual Private Cloud)
네트워크, 서브넷 제어.
VPC에서 퍼블릭 및 프라이빗 서브넷 , 인터넷 게이트웨이, NAT 등의 리소스 액세스를 위한
낮은 수준의 네트워킹 제약 생성.
3) CloudTrail
계정에 대한 API 호출 기록.
Management Console, SDK , 명령줄 도구 및 고급 AWS 서비스를 사용하여 실행한 API 호출에 대한
정보와 로그 파일을 전달.
<7> 관리형 서비스 및 데이터 베이스
1. RDS (Relational Database Service)
MySQL , PostgreSQL , Oracle, SQL Server, Amazone Auroro(Mysql과 동일, 성능 높게 처리함)
크기 조절 가능한 용량.
증설 시 몇 분 이내 다운 타임 발생.
2. DynamoDB (NoSQL DB)
빠르고 확장성이 높은 NoSQL DB.
테이블 제한 없음.
레코드 제한 없음.
SSD 사용 빠름.
NoSQL.
원활한 온디맨드 확장.
적은 용량의 읽기 및 쓰기 다수 수행.
Qos 자동으로 최적화.
3. ElastiCache = Cache.
데이터 베이스 앞에 캐시.
Memcached 호환 및 Redis호환 캐시 클러스터.
4. Redshift = DW
데이터 웨어 하우스 (DW) 클러스터를 설정하고 운영.
페타바이트 규모의 서비스.
I/O를 획기적으로 줄여줌.
<8> 관리 및 배포
1. Identity and Access Management (IAM) = 사용자 그룹관리
사용자 및 그룹을 생성 및 관리.
자격 증명 연동 사용자 및 권한 관리
IAM내에 역할을 생성, 역할을 받을 엔티티 정의.
Root User는 서비스 계정으로 사용하지 말라.
추가 사용자를 만들어라.
Security - IAM - Gorup 생성, 사용자 생성 - EC2권한 할당, Access키 생김.
2. CloudWatch = 모니터링
리소스 사용륭등에 대한 가시성.
커스텀 애플리케이션 특정 지표
Management Console , API , SDK 또는 CLI를 통해 액세스 가능.
3. Elastic Beanstalk = 자동 배포
웹 애플리케이션과 서비스 배포 및 규모 조정 간편 서비스.
4. Cloud-Formation = 리소스 템플릿 생성
템플릿 및 연관된 리소스 모음을 배포 및 업데이트
리소스 모음을 스택이라고 함.
Management Console , CloudFormation명령줄 도구 또는 API 사용.
기능 자체 사용은 추가 요금 없음.
5. OpsWorks = 애플리케이션 관리 설루션.
Chef 레시피 및 Bash 스크립트를 사용해 코드로 구성.
소스 관리
100대 생성 가능
100대 자동 패치 가능.
<9> 분석 제품 및 서비스.
1. Kinesis
수십만 개의 소스에서 시간당 수백만 테라바이트의 데이터를 수집 및 처리.
실시간 대시보드 구축
2. Data Pipeline
저장되어 있는 데이터를 액세스 하고, 규모에 따라 변환 및 처리.
3. Elastic Map Reduce (EMR)
호스팅 되는 하둡 프레임워크 활용.
<10> 모바일 제품 및 서비스.
1. Cognito
사용자 데이터 동기화 및 자격 증명 서비스.
모든 모바일 디바이스에서 사용자 앱 데이터를 관리 및 동기화
오프라인에서 디바이스에 로컬로 앱 데이터 저장 허용.
2. Mobile Analytics
모바일 분석
60분 이내에 사용 보고서 제공.
AWS Management Console에서 데이터에 액세스.
월별 이벤튼 최대 1억 건 까지 무료.
개요, 활성 사용자, 세션, 매출, 사용자 유지, 사용자 정의 이벤트
Cognito와 통합됨.
3. Simple Notification Service (SNS)
모바일 SNS
암림을 스마트 디바이스로 푸시
SMS 문자 또는 이메일로 알림 전송.
선결제 비용이 없고 사용한 만큼만 지불.
<11> 애플리케이션 제품 및 서비스
1. WorkDocs
엔터프라이즈 스토리지 및 공유 서비스
어느 기기에서나 액세스 및 동기화.
무료 평가판 사용자 최대 50명
2. WorkSpaces
클라우드 기반 데스크톱을 간편하게 프로비저닝.
사용자 무제한.
<12> 앱 서비스.
1. Simple Email Service (SES)
트랜잭션 이메일, 마케팅 메시지 또는 다른 유형의 고품질 콘텐츠.
송신 통계에 대한 실시간 액세스
2. Simple Queue Service (SQS)
메시지 손실 없이 모든 처리량 수준에서 어떤 데이터 볼륨도 전송.
1개는 보증하지만, 추가 데이터 처리는 100% 보장하진 않는다.
https://cafe.naver.com/dnspro
감사합니다.