1교시 : AWS 소개 - 이국희 팀장

  • 클라우드는 전기나 수도에 비견될 수 있다.
    • 그만큼 필요에 따라 각종 서비스를 손쉽게 이용할 수 있다는 의미
    • 기존의 복잡한 단계를 거치는 서버 구비과정을 최소화 시킬 수 있다는 장점
    • 수도꼭지만 틀면 원하는 서비스 제공을 받을 수 있다는 점
  • 아마존의 서비스는 레고 블럭들의 접근방법과 유사
    • 어린이들이 원하는 형태를 상상 하는대로 만들수 있다는 점
    • 여러가지 서비스는 아래와 같이 비유됨
      • CPU+RAM => Amazon EC2 (가상서버)
      • HDD => Amazon EBS
      • 웹하드 => Amazon S3
    • 결론은 딸래미들의 상상력을 키우는데 효과적인 레고를 사주자!.. 얼마나 좋은지 비교할 수 있도록 미미의 집 같이 사줘야지
  • 클라우드 환경은 모든 요소가 추상화
    • 근본적인 특징. 사용자는 하이레벨 수준의 개념만 이해하고 사용이 가능.
    • 로우레벨에 대한 내용은 아마존이 신경 써줌
    • 즉 표준화
  • 오늘 수업에서 학습한 내용
    • 로드밸런싱 서비스 ELB(Elastic Load Balancing)
    • 데이터베이스 RDS(Relational Database Service)
  • AZ == 데이터센터
    • 아마존은 한 지역내에 복수의 데이터센터를 운영
    • 자연재해에 대한 대비책. 즉 고가용성을 보장하는 인프라
    • 데이터간의 데이터 통신은 single ms를 보장하는 네트웍 인프라로 구성
  • 보안
    • 책임 분담 슬라이드 참고
    • 2006년부터 시작한 서비스. 현재까지 수많은 고객의 사례를 통해서 입증된 보안성
    • 모든 접속시도를 기록하는 Bastion Server
    • AWS 다층(Multi-tier) 보안그룹 기능을 제공하고 있어 편리하게 방화벽 설정 가능
    • IAM 사용자 계정
      • 개별 IAM 계정을 생성해서 각 사용자별로 보안 자격 증명을 부여
    • VPC 서브넷 통제
      • 퍼블릭/프라이빗 서브넷, 인터넷 게이트웨이, NAT와 같은 제공 기능을 활용해 낮은 레벨의 네트워크 제약 적용

2교시 : AWS 스토리지 - 양승도 수석(솔루션 아키텍트)

  • 빨간색 블럭은 스토리지 영역이라고 인식하면 됨
  • Amazon S3
    • 버킷 : account 당 100개의 버킷을 만들 수 있음
      • 1byte ~ 5TB까지 가능; 버킷 용량은 무한대
      • 한번에 5기가까지고 슬라이싱도 지원.. 멀티파트 업로드 지원
    • 객체저장 버킷 : 메타 데이터로 구성
    • 컨텐츠의 리밋이 없음
    • 확장성이 뛰어난 구조
    • ACL 제공하여 접속 제어 관리 가능
    • 수명관리 기능을 통해 업로드 후 30일이 지난 파일을 삭제하도록 하는 것도 가능
    • AWS로의 모든 업로드 전송량은 무료
  • Amazon Glacier
    • 아카이빙을 목적으로 하는 서비스
    • 굉장히 저렴한 스토리지
    • 즉 데이터 업로드 후 사용할 경우 요청 후 3~5시간 서비스 준비 시간
    • 가끔 액세스 되는 데이터를 위해 최적화
    • 1GB 당 월 $0.01
  • Amazon EBS(Elastic Block Store)
    • EC2와 함께 사용되는 스토리지 볼륨
    • 구체적인 오퍼레이션은 슬라이드 참조
    • 백업된 스냅샷은 Amazon S3로 보관
    • 지속되어야 하는 스토리지를 위해 사용
    • OS 부트 디바이스 / 루트 파일 시스템; 2차 볼륨 / 파일 시스템
    • 데이터베이스 스토리지를 위한 기술적 토대
    • IOPS EBS 볼륨은 표준 EBS 볼륨보다 고가
    • EBS 모범 사례 슬라이드 참고
  • AWS Storage Gateway
    • NAS 역활을 해주는 서비스. 데이터 저장은 S3로
  • Amazon Import/Export
    • 대용량 데이터의 가져오기/내보내기
    • 고객사 데이터를 스토리지 디바이스로 다이렉트 전송
    • 단 시간내에 원하는 작업을 수행
  • S3 데모
    • Static Website Hosting 정적인 파일 서빙을 위해 ec2를 쓰지말고 S3로 서비스 하는것이 더 효율적
      • 원하는 콘텐츠을 업로드하고 http/https로 access 가능한 점
    • S3를 이용한 사이트는 simple monthly calculator가 S3를 사용해 서비스 제공
    • 아마존 CTO가 운영중인 블로그 All Things Distributed 사이트도 마찬가지로 S3로 운영.. jekyll로 콘텐츠 관리하고 있다는 점도 눈에 띔
    • 다운로드 받아가는 사람이 콘텐츠에 대한 비용을 지불할 수 있도록 기능 제공.. 단, AWS 사용자에 한해서
    • Versioning 기능을 통해 svn, git과 같은 형상관리 가능 제공

3교시 : 컴퓨팅 서비스 & 네트워크

  • EC2 : 용량 조절 가능한 가상 서버
  • aws cli tool 제공
    • gui operation에 대응되는 기능들을 모두 사용 가능
  • Amazon Elastic MapReduce (EMR)
    • 기존에 수동으로 만들던 EC2 구성하고 hadoop 소프트웨어 설치하고 하는 일련의 과정을 자동화 시켜둔 것
    • 기존의 구성을 한꺼풀 더 씌워서 쓰기 편하게 하도록 하는게 주목적
  • Amazon Auto Scaling
    • 서버대수를 늘리는 작업 자체를 자동화하는 기능
    • Amazon EC2 용량을 자동으로 스케일
    • 사용량의 가변성이 있는 애플리케이션에 적합
    • 추가 요금 없이 제공
    • 서비스의 삼위 일체 슬라이드 참조
      • ELB, CloudWatch, Auto Scaling
  • Amazon Virtual Private Cloud(VPC)
    • 외부에 공개시키지 않을 서버들에 대해서 적용하는 네트웍 설정
    • private ip 대역은 자유롭게 설정 가능
    • 아마존과 사내 서버와 연결하는 구성 가능. Amazon VPC 슬라이드 참고
    • 사내망 확장을 Amazon VPC를 통해서도 가능
    • AWS Direct Connect 서비스는 사내망 확장 과정에서 네트웍 연결속도 안정성 보장을 위해 적용 가능한 서비스
  • Amazon Route 53
    • 전세계 엣지로케이션에 퍼져있는 글로벌 네트워크를 이용해 글로벌 서버네트워크 활용 가능
    • latency 기반으로 client 접속 region을 결정해주는 기능
  • ELB
    • 복수의 데이터 센터(AZ)에 걸쳐서 적용이 가능
    • public elb, private elb 구성이 가능
      • private elb 구성은 was 서버에 한해서 구성하는 형태로 많이 쓰인다고 함

4교시 : 관리형 서비스 & 데이터베이스

  • 파란색 블럭은 NoSQL, 데이터베이스 관련된 서비스
  • 학습 목표
    • Dynamo DB 이해
    • RDS 개념 설명, RDS 실행
  • Amazon RDS(Relational Database Service)
    • 시간 소모적인 데이터베이스 관리 업무 대행, Time to Market 가능..
    • EC2에 직접 구성을 하는것도 가능하지만 모든 설정이나 백업등의 관리들도 직접 수행
    • 친숙한 MySQL, Oracle과 SQL Server 데이터베이스의 전체 기능을 활용
    • MySQL, PostgreSQL, ORACLE, SQL Server 4가지 서비스 제공
    • Multi-AZ Deployment : 자동적으로 HA 구조를 설정해줌. 즉 Master Slave 구조로 서버 구성
    • Security Group == 방화벽 정책
    • Automatic Backup : 5분단위로 EBS 스냅샷을 찍어 S3에 보관
    • rr == Read Replica 구성
      • 최근에 mysql에 한해 Cross Region Read Replica 서비스 지원
      • 이런 어려운 구성은 amazon 직원을 불러다 지원을 받는게 좋음
  • Amazon Dynamo DB
    • NoSQL DB 서비스
    • SSD를 사용해 빠르고 예측 가능한 성능
    • “Amazon RDS와 Amazon Dynamo DB” 슬라이드를 통해 둘간의 차이점에 직관적으로 확인 가능
    • Read 4k, Write 1k
      • 만약 서비스에서 데이터 사이즈가 기본 데이터량보다 많다면 설정을 통해 확장 필요
  • Amazon ElasticCache
    • Memcached, Redis(작년 하반기 출시) 호환 온디맨드형 캐시 클러스터
  • Amazon Redshift
    • 2013년 12월 출시된 서비스, 가장 빠르게 성장
    • DW 전용 서비스, 기존 BI 툴과의 연계 가능
    • 확장성은 1.6PB 가능

5교시 : 배포와 관리

  • 초록색 블럭은 권한관리에 관한 모든 서비스 관리
  • AWS IAM(Identity Access Management)
    • 계정생성 시 기입한 email account는 master account 타입
      • 평소에는 master account 사용은 거의 하지 않는 것을 권고
      • 초기 사용자 생성작업만 수행하도록 권고
      • master account를 공유하는건 보안상 비추
    • AWS API 이용은 web ui(관리콘솔), rest, soap 3가지 방법으로 가능
    • User Permission
      • api by api 수준으로 policy 지정가능. 즉 특정 api에 대해 상세하게 제한하는 것이 가능
    • AWS account 하부 사용자계정 로그인용 URL이 따로 제공한다는 점이 눈에 띔
  • Amazon CloudWatch
    • 리소스 사용률, 운영 성능과 전반적인 요청 패턴에 대한 가시성
    • 인프라 차원에서 측정하는 지표를 토대로 서비스 제공
    • 내부 애플리케이션 지표를 통해 서비스를 이용하려면 Custom 측정치를 CloudWatch에 등록
      • aws cloudwatch put-metric-data
    • 최대 2주간의 측정치를 보관, 커스터마이징 가능
  • Amazon Elastic Beanstalk
    • 개발자를 위한 편한 기능 제공, war 파일 업로드 만으로 클라우드에서 테스트 가능, java, c#, ruby
  • Amazon CloudFormation
    • 손으로 구성한 템플릿 덤프를 떠서 다른 Region에 이식 하는것이 가능. 즉 일본에 구성 해둔것을 미국에 그대로 적용하는 것이 가능, 구성을 찍어내는 용도
    • 템플릿 구성은 json 파일로 export 받을 수 있고 svn, git으로 버전관리도 가능해 이력관리가 가능
    • 사이트를 통해 다양한 Amazon CloudFormation 템플릿(드루팔과 같은 서비스 제공)