Slide 1

Slide 1 text

스마트스터디의 CloudFront 와 S3 사용기 아마존 웹 서비스 한국 사용자 모임 박현우, 스마트스터디 지게로봇 / [email protected]

Slide 2

Slide 2 text

S3 와 Cloudfront ● S3 : Simple Storage Service ○ 무식하게 안전하다. ○ 한 지역(region)에 여러 사본이 존재. ■ vs EBS : 한 존(zone)에 여러 사본이 존재. ● CF : CloudFront ○ 콘텐츠 전송 서비스 (CDN). ○ 원본(origin)으로부터 AWS 엣지(Edge)로 전송. ■ http://aws.amazon.com/cloudfront/#details ■ 전세계 약 30 개의 엣지. (아직 까지는 지구만)

Slide 3

Slide 3 text

왜 이걸 골랐나? ● 대용량 멀티미디어 콘텐츠를 전 세계 모바일 시장에 배포해야 해서. ● 안정적으로, 빠르게, 적당한 가격으로 전 세계 에 배포해야 하므로. ● 다양한 시스템을 운영하기 위한 인력이 충분 하지 않다.

Slide 4

Slide 4 text

플래시 동영상

Slide 5

Slide 5 text

S3 Bucket ( tokyo ) s3cmd Package ( encrypted ) Thumbnails Video npk Transcoder Gnash FFmpeg qtfaststart Flash Movie

Slide 6

Slide 6 text

CloudFront { Edge Edge Edge Edge Edge S3 Bucket ( tokyo ) s3cmd Video npk

Slide 7

Slide 7 text

어떻게 동작하는가? ● S3 로 복사 ○ 파일이 100개 정도면, GUI 도구를 사용한다. ○ 그 이상이면 반드시 s3fs 나 s3cmd 를 사용. ○ sync 기능이나 invalidation 이 필요하면, 역시 s3cmd. ○ 약 3만 개 정도의 파일이 있어서, s3cmd 를 선택. ● s3cmd ○ 엄청 좋음! ○ S3 와 CloudFront 위에서 동작함.

Slide 8

Slide 8 text

어떻게 동작하는가? (계속) ● s3cmd ○ AWS 콘솔에서 할 수 있는 대부분의 일이 가능. ○ INI 형식의 설정 파일. ○ 마법같은 'sync' 명령이 제공됨 ● s3cmd sync ○ Glob 문법으로 특정 파일 지정 / 제외가 가능. ○ ... 정규 표현식으로도 가능함. ○ 자동으로 invalidatoin 요청을 보낼 수 있음. ○ 어떤 파일이 변경될 지 '미리 해보기' 가능. (-n, --dry- run)

Slide 9

Slide 9 text

● s3cmd sync ○ 파일의 MD5 해시 정보로 달라진 여부를 검사. ○ (!) 파일 크기가 15MB 이상이면, 파일 크기로만 비교. ○ 약 60GB, 3만개 파일에 대해 = 검사에 8분 소요. (i7 2500K + SATA HDD 에서 tokyo 버킷과 비교) ● s3cmd sync --cf-invalidate ○ Invalidation 요청을 자동으로 보내줌. ○ (!) 동시 요청은 3개 까지 가능. (파일 3개가 아님) ○ (!) 한 달에 1천 개 파일까지 무료. ○ s3cmd cfinvalinfo 명령으로 진행 상황 확인 가능. 어떻게 동작하는가? (계속)

Slide 10

Slide 10 text

빠른지 안전한지 비싸진 않은지? 그래서 정말 {

Slide 11

Slide 11 text

충분히 빠릅니다. 8.0MB/s

Slide 12

Slide 12 text

매우 안전합니다. 적어도 직접 운영하는 서버들 보단

Slide 13

Slide 13 text

그리고 별로 안 비싸요

Slide 14

Slide 14 text

* 버킷에서 각 엣지로의 복사 비용은 제외한 요금 국내 CDN 피크 트래픽 기준 ● 350Mbps/피크시 ● $6.00/Mbps = $2,100 CloudFront 총 전송량 기준 ● 10TB/한 달 ● $0.209/GB = $2,090*

Slide 15

Slide 15 text

그래도 비싸다구요?

Slide 16

Slide 16 text

* Photo from Linkedin page of Lee, Jung-in / Amazon Korea

Slide 17

Slide 17 text

10TB 이상이면 약정하고 할인 받으세요

Slide 18

Slide 18 text

● 더 작게 ○ 최적의 옵션으로 미디어를 가공. ○ 각 플랫폼에 맞게 별도의 파일을 준비. ○ 저장 비용은 전송 비용보다 싸다! ● 정적으로 ○ 자주 바뀌는 파일은 CloudFront 에 어울리지 않음. ○ Invalidation 요청이 때로는 10분 정도 걸림. ○ 정적이지 않은 파일들은 아직도 웹 서버를 사용 중. ● 스트리밍 가능하게 ○ 모바일 네트워크는 아직 느리므로. ○ 다운로드 끝날 때까지 사용자를 기다리게 하지 말자. 팁

Slide 19

Slide 19 text

● Gnash ○ http://www.gnu.org/software/gnash/ ● FFmpeg ○ http://www.ffmpeg.org/ ● qtfaststart ○ https://github.com/danielgtaylor/qtfaststart ● npk ○ https://github.com/lqez/npk ● s3cmd ○ http://s3tools.org/ 링크

Slide 20

Slide 20 text

스마트스터디의 CloudFront 와 S3 사용기 아마존 웹 서비스 한국 사용자 모임 박현우, 스마트스터디 지게로봇 / [email protected]