날고싶은 커피향
클라우드 컴퓨팅 AWS(Amazon Web Services) - 글로벌 서비스 구축을 위한 자료입니다.
내용 참고 하시기 바랍니다.
Transcript
1. 공통플랫폼팀 I 이호철 I @5clee클라우드 컴퓨팅 AWS(Amazon Web Services)- 글로벌 서비스 구축을 위한 선택
2. IT IssueElasticCost-EffectiveAvailabilityAWS높은 가용성탄력적 용량제공비용 효율화
3. IT Issue여기서 잠깐!AWS를 사용하면 무조건 싸다?예) 최소 구성시 EC2(Large) 1대, RDS(Large) 1대 EC2 월 30만원, RDS 월 40만원 이중화 구성, MultiAZ 구성, 서버 증설 비용증가예) 스트리밍 서비스 갑작스런 부하 증가, 서버 증설, 대용량 인코딩 필요 사용 후 즉시 반납 비용 효율화(사용한 만큼 지불)
4. KTH가 AWS 선택한 이유?KTH Global Servicespudding.to , Friending전 세계 사용자에 사진/동영상 제공전 세계 사용자가 사진/동영상을 업로드Global CDN 서비스 필요 CloudFront업로드 지연 해결 필요 지역별 분산배치
5. AWS OverviewGlobal InfrastructureRRRRRR6개의 Regions – 지역 내 2개 이상의 가용존R20개의 Edge Locations – CloudFront, Route53
6. AWS OverviewGlobal Infra StructureEC2Compute Storage NetworkingEBSDataBaseRDSElastiCacheSimpleDBClustersMapReduceCDN AutomationMonitoringCloudWatchAutoScalingS3ELB Route 53CloudFront기초서비스데이터처리데이터제공/자동화
7. AWS OverviewEC2웹 콘솔을 통하여 가상의 컴퓨팅 환경을 생성 관리다양한 OS(Amazon Linux, RedHat, SUSE, Windows)다양한 타입 (CPU, Core, Memory, Disk)기본 3개의 네트워크 자원 할당내부 연결/별도 트래픽 비용 없음단, EIP(고정 아이피)는 외부 연결임Elastic Compute Cloud
8. AWS OverviewEBS S3VS.Block Storage Data Storage– Simple Storage Service개별 Object : 1 Byte~5TBHTTP- GET,PUT, Delete 프로토콜EC2에 Attach / EC2instance Lifetime 의존Volume당 1GB~1TB- 다수사용 가능
9. AWS Overview수천 대의 Instance 로 부하 균등 분산 또는 Health Check(5초)를 통해 부하가 적은 쪽으로 부하 분배특정 세션에 대해 강제로 하나의 인스턴스로 전달하는 StickySession 가능ELB – Elastic Load BalancingELB는 고정 IP(EIP) 할당 안됨 (CNAME, Route 53 활용필요)
10. AWS Overview가장 가까운 DNS 서버를 찾아 높은 쿼리 응답 속도 제공20개 Edge Locations 을 통해 서비스 제공WRR (Weighted Round Robin) 지원지원되는 Resource Record Type- A, AAAA, CNAME, MX, NS, PTR, SOA, SPF, SRV, TXT, AliasAmazon Route 53
11. kth 최적화시작…
12. AWS 최적화 구성요소ScalabilityHigh-AvailabilityPerformance확장성Auto-ScalingScale-UP고가용성Multi-AZRDS HA성능 최적화CloudFrontElastiCacheAmazon Web Services활용한 최적의 서비스 플랫폼 구축을 위한 구성요소
13. 최적화 #1Scalability
14. Scalability (확장성)Scale-UP Scale-OUTVS. 시스템 사양 UP(CPU, 메모리, Disk) Scale-Down 시스템 증설 Scale-In
15. Scalability (확장성) – Scale-UPScale-UP : EC2웹 콘솔상에서 옵션 제공되지 않음Scale-UP 방안EBS에 SnapShot 생성 EC2 신규 생성(타입 변경) 기존 EC2 정지MicroExtra-Large
16. Scalability (확장성) – Scale-UPScale-UP : RDS웹 콘솔상에서 옵션 변경으로 처리변경되는 동안 DownTime 존재유지 보수 일정주기에 실행- 즉시 실행이 필요하다면Apply Immediately 옵션 체크Small xLarge
17. Scalability (확장성) – Scale-OUTEC2 – Auto ScalingELB(Elastic Load Balancer)EC2 #1 EC2 #2EBS -1(OS영역)EBS -2(App영역)EBS -1(OS영역)EBS -2(App영역)Cloud WatchAutoScale
18. Scalability (확장성) – Scale-OUTEC2 – Auto ScalingELB(Elastic Load Balancer)EC2 #1 EC2 #2EBS -1(OS영역)EBS -2(App영역)EBS -1(OS영역)EBS -2(App영역)Cloud WatchAutoScaleelb-create-lbmy-loadbalancer--listener“lb-port=80,instance-port=8080”
19. Scalability (확장성) – Scale-OUTEC2 – Auto ScalingELB(Elastic Load Balancer)EC2 #1 EC2 #2EBS -1(OS영역)EBS -2(App영역)EBS -1(OS영역)EBS -2(App영역)Cloud WatchAutoScale1) Launch Config 생성- 생성할 instance 타입, 이미지 지정2) Auto-Scaling Group 생성- 최대 생성할 instance 개수- 최소 생성할 instance 개수3) Trigger 생성- Scale-OUT할 조건 설정(CPU 또는 특정시간)- 증설시 생성할 instance 개수- 감소할 instance 개수
20. Scalability (확장성) – Scale-OUTEC2 – Auto ScalingELB(Elastic Load Balancer)EC2 #1 EC2 #2EBS -1(OS영역)EBS -2(App영역)EBS -1(OS영역)EBS -2(App영역)Cloud WatchAutoScaleEC2 #3EBS -1(OS영역)
21. Scalability (확장성) – Scale-OUTEC2 – Auto ScalingELB(Elastic Load Balancer)EC2 #1 EC2 #2EBS -1(OS영역)EBS -2(App영역)EBS -1(OS영역)EBS -2(App영역)Cloud WatchAutoScaleEC2 #3EBS -1(OS영역)EBS -2(App영역)EBS-2 복제 EBS-2 Mount SVN CheckOut Source Build EBS-2 내 WAS 구동
22. Scalability (확장성) – Scale-OUTRDS – Scale OUTRDS Auto-Scaling 은 지원되지 않음Master-Slave Type의 Replication 지원Slave DB의 가용 존을 여러 지역에 분산 배치
23. 최적화 #2High Availability
24. High Availability (고가용성)Elastic Load BalancerCloud Watch (Monitoring)AWS Security GroupsUS-EAST-1a• ELB - 수 천대의EC2를 로드밸런싱• EC2 서버 Scale 방안 수동으로 증가시켜야 함• 트래픽 증가 및 동시접속자 증가시MySQL DBEC2 EC2
25. High Availability (고가용성)• EC2 – Auto Scaling• AZ 장애시 전체 서비스중단 Multi-AZ 구조 필요• US-EAST-1a AZ 장애시Elastic Load BalancerCloud Watch (Monitoring)US-EAST-1aAuto ScalingAuto ScalingAWS Security GroupsMySQL DB
26. High Availability (고가용성)DB서버 부하분산 안되어 있음. 심할 경우 2개 AZ 모두 중단될 가능성 있음Elastic Load BalancerCloud Watch (Monitoring) Cloud Watch (Monitoring)US-EAST-1a US-EAST-1bAuto Scaling Auto Scaling Auto Scaling Auto ScalingMySQL DB MySQL DBAWS Security Groups AWS Security Groups
27. High Availability (고가용성)Elastic Load BalancerCloud Watch (Monitoring) Cloud Watch (Monitoring)US-EAST-1a US-EAST-1bAuto Scaling Auto Scaling Auto Scaling Auto ScalingAWS Security Groups AWS Security GroupsMaster SlaveRead Replica Read Replica
28. 최적화 #3Performance
29. Performance (성능 최적화)CloudFront다운로드/스트리밍원본파일 : S3 또는 특정서버20개 Edge Locations / 사용자에 가장 가까운 위치EEEEEECloudFrontNetworkS3원본파일파일업로드
30. Performance (성능 최적화)ElastiCacheMemcached 기반미동부 만 지원DB부하 절감EC2 + Memcached(Redis) 구성EC2 API ServerCacheEngineCacheEngineCacheNodeCacheNodeCache ParameterGroupCache ClusterRDSApplicationCodeDatabaseAccessMemcachedClient LibraryCloudWatchMemcachedProtocol
31. kth 글로벌 서비스 on AWSScalabilityHigh-AvailabilityPerformancekth 글로벌 서비스(on AWS)최적의 서비스 플랫폼 구축을 위한 구성요소확장성Auto-ScalingScale-UP고가용성Multi-AZRDS HA성능 최적화CloudFrontElastiCache
32. kth 최적화결과…
33. kth 글로벌 서비스 최적화 결과Elastic Load BalancerAuto Scaling GroupEC2ElastiCacheAvailability Zone #1 Availability Zone #2Availability Zone #nCloudFrontS3media.mysite.comMasterRead ReplicaAuto Scaling GroupEC2ElastiCacheRead ReplicaSlavewww.mysite.com Route 53
34. TIPUpload Latency접근 제어파일 업로드 도구
35. TIP #1 – Upload LatencyMain Server Group(US-East)S3 S3S3EC2S3EC2S3EC2이미지업로드이미지업로드업로드 결과 전송12Media UploadServer Group(Each-Region)지역별 업로드 서버 분산 배치 업로드 결과는 메인 서버그룹RDSUpload LatencyEC2 EC2EC2EC2EC2
36. TIP #2 – 접근제어접근 제어GatewayServer (EC2)SecurityGroupInternetHTTP80/443TCP(SSH)Office/EngineerTCP22(SSH)HTTP8080TCP3306Web Server(EC2)App Server(EC2)개발자 접근(SSH)2서비스 포트(80/443)11WEB과WAS(8080)4개발서버 내접근(SSH)3WAS와 DB(3306)523451DBServer
37. TIP #3 – 파일 업로드 도구파일 업로드 도구Tsunami UDP- UDP 기반의 Open Source File 전송 프로토콜- 원거리 네트워크 사이에도 높은 전송속도 제공상용도구- Aspera : 빠른 속도를 보장하는 AWS를 위한 데이터 전송 상용소프트웨어FedEX
38. KTH + AWSScalabilityHigh AvailabilityPerformanceTIP운영 준비최적화 구성Upload Latency접근제어파일 업로드
39. 감사합니다.플랫폼개발실 / 공통플랫폼팀 팀장 / 이호철hochul.lee@kt.com@5clee
'정보공유' 카테고리의 다른 글
[정보] ROS를 활용한 SLAM과 내비게이션 (0) | 2015.05.06 |
---|---|
[책] 이중톈 사람을 말하다 (0) | 2015.05.06 |
[정보] 2015 trend code 2 (0) | 2015.04.30 |
[정보] [Marketing trend] 2015 Marketing Trend (0) | 2015.04.30 |
[정보] AWS Summit Seoul 2015 - 국내 사례로 본 클라우드 운영 최적화 (0) | 2015.04.29 |
[정보] AWS Summit Seoul 2015 - AWS를 통한 게임 운영의 정석 (0) | 2015.04.29 |
[정보] Apple Watch: Everything You Need To Know As A Marketer (0) | 2015.04.28 |
[정보][Korean,Apple watch review] 애플 워치 리뷰: 시계로서의 접근 (0) | 2015.04.28 |