Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Amazon ECSの最新事例 JAWS-UG 横浜 #10

1,960 views

Published on

2017/07/19に開催されたJAWS-UG 横浜 #10でお話したAmazon ECSの最新事例の資料です。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Amazon ECSの最新事例 JAWS-UG 横浜 #10

  1. 1. Amazon ECSの最新事例 JAWS-UG 横浜 #10 Ryosuke Iwanaga Solutions Architect, Amazon Web Services Japan K.K.
  2. 2. 2 自己紹介 • Ryosuke Iwanaga (岩永 亮介) – Twitter/GitHub @riywo • Amazon Web Services Japan • Solutions Architect – Web, Gaming – Big Data / DevOps / Container • Before Amazon – Software Engineer / Ops Engineer / DBA / etc.
  3. 3. 3 本番環境でDockerを動かす • Dockerを動かすだけなら簡単 – $ docker run [ENTER] • 問題は、どこでどうやってDockerを動かすか? – sshして実行?フロントからどうやってルーティングする?フェイルオ ーバーするには?スケールするには? • クラスタ管理の仕組みが必要 1. インスタンス群の状態を管理 2. どこでどのコンテナを動かすかを決めて実行 3. コンテナ群の状態を管理
  4. 4. 4 自前でクラスタ管理すると、、、 Masters State Data Store WorkersSchedulers Load Balancers 冗長化・チューニング・運用 要件対応・冗長化・運用 安全な付け外し・デプロイ対応 冗長化・チューニング・運用
  5. 5. 5 Amazon EC2 Container Service (ECS) • Amazon EC2インスタンス群をDocker実行環境に 簡単に変身させる – ECS Agentをインストールするだけ、管理インスタンスは不要 – ECS自体の料金は無料 (EC2等、他の利用しているリソース課金) • 1コンテナから数万コンテナ以上を管理 – 開発環境から本番環境までこれ1つで十分 • AWSの他のサービスとの深い連携 – 例: AWS CloudFormationでデプロイ可能、ALB連携、etc.
  6. 6. 6 Amazon EC2 Container Service Scheduler ManagerCluster Task Definition Task Agent
  7. 7. 7 Amazon ECSへの適応が着実に進んでいる • 3 clear trends in ECS adoption – Monitoring SaaSのDatadogから2016年に出されたレポート • Trends 1. ECSは静かに、しかし着実に勢いをつけている • 右肩上がりで利用ユーザ割合が増えている(2015/10: 3%→2016/10: 15%) 2. コンテナ数が増えると、問題が多くなる • Dockerのホスト数が25台を超えると、ECSの利用は40%近くに 3. オーケストレーションによって成長が生まれる • ECSを導入すると、コンテナの数が35%も増加する https://www.datadoghq.com/blog/3-clear-trends-in-ecs-adoption/
  8. 8. 8 https://aws.amazon.com/jp/blogs/news/aws-summit-tokyo-2017-amazon-ec2-container-service-session/ • ナビタイムサービスにおける、Amazon ECS を活用したシステム移行 ~『乗換 NAVITIME』での移行事例 ~ • [リコー] サービス全断はダメ、ゼッタイ。途切れないテレビ会議システムを目指して ~ AWS を最大限活用して可用性を高める秘策~ • クックパッドの機械学習を支える基盤のつくりかた • Amazon ECS と SpotFleet を活用した低コストでスケーラブルなジョブワーカーシステム • [Intelligence] オンプレから移行するので、Amazon ECS でコンテナ化と Terraform でイ ンフラコード化した話 • DAU 100 万人突破! 急成長を支える Shadowverse のインフラ技術 • DMM における会員基盤プラットフォームへのAWS導入から活用事例の紹介 • [ABEJA] IoT / Bigdata / AI 時代におけるスケーラブルな Deep Learning 実行基盤と応用 • Amazon ECS の進化、DevOps と Microservices の実践 • [CyberZ] OPENREC.tvにおけるライブ動画およびメッセージ配信基盤のリプレース全貌
  9. 9. 9 ナビタイム ECSを活用したシステム移行 • 乗換NAVITIMEのシステムのほとんどをAWSへ移 行する際にECS化を実施 – オートスケール、運用コスト削減、リードタイム短縮がしたい • AWS CloudFormationによる構築・更新自動化 – デプロイや死活監視、オートスケールはECSがよしなに – インスタンスとタスクの両方をオートスケール • リードタイムが2週間から数時間に、移行後1ヶ月で 安定稼働に入り、エンジニアの運用負担はほぼゼロ https://d0.awsstatic.com/events/jp/2017/summit/slide/D2T6-1.pdf
  10. 10. 10 https://d0.awsstatic.com/events/jp/2017/summit/slide/D2T6-1.pdf
  11. 11. 11 https://d0.awsstatic.com/events/jp/2017/summit/slide/D2T6-1.pdf
  12. 12. 12 リコー オンプレからAWSへの移行時にECS化 • グローバルに利用されるビデオ会議システムの移行 • インフラは壊れる前提で設計 Design for failure • 移行は可能、だが運用が始まると大きな変更が難しい – このタイミングでDockerを採用して良かった • 可用性向上に貢献、他にも環境を気にしなくていい、運用も楽に • 構築・更新を徹底的に自動化 – AWS CloudFormation • 既に半年以上本番運用して、可用性は向上 https://d0.awsstatic.com/events/jp/2017/summit/slide/D2T4-2.pdf https://www.youtube.com/watch?v=KigqamwS9r8
  13. 13. 13 https://d0.awsstatic.com/events/jp/2017/summit/slide/D2T4-2.pdf https://www.youtube.com/watch?v=KigqamwS9r8
  14. 14. 14 https://d0.awsstatic.com/events/jp/2017/summit/slide/D2T4-2.pdf https://www.youtube.com/watch?v=KigqamwS9r8
  15. 15. 15 DMM.com 内製API GatewayをオンプレからAWSへ移行 • プラットフォーム基盤の窓口となるシステム – 対障害性、安定性、低レイテンシが必要 • Auto Scaleを活用してピーク時にスケール – 主はスケジュール、副で負荷ベース、オフピークはRIで – スケールイン時にはLambdaを組み合わせてDRAINしている • Service DiscoveryにEvent streamを活用 – ECS上のServiceの配置をSDKで取得し更新するLambdaをEvent stream で発火させることで実現 https://d0.awsstatic.com/events/jp/2017/summit/slide/D4T6-3.pdf https://www.youtube.com/watch?v=4J4CI-EI_WM
  16. 16. 16 https://d0.awsstatic.com/events/jp/2017/summit/slide/D4T6-3.pdf https://www.youtube.com/watch?v=4J4CI-EI_WM
  17. 17. 17
  18. 18. 18 IntimateMerger スケーラブルで低コストなジョブワーカーシステム • 多種多様なデータ処理ジョブを、処理量に応じてス ケールさせたい – 種類毎のワーカーが別々のインスタンスで動いていて効率が悪く、 Spotの高騰時にも対応ができていない • すべてをコンテナ化してECS+Spot Fleetで管理 – 52サービス、100-250タスクが、7種類のインスタンスタイプから合 計168vCPUsのFleet上で稼働中 – Terminateの通知でECS ClusterからDRAIN https://d0.awsstatic.com/events/jp/2017/summit/slide/D3T6-4.pdf
  19. 19. 19 https://d0.awsstatic.com/events/jp/2017/summit/slide/D3T6-4.pdf
  20. 20. 20 https://d0.awsstatic.com/events/jp/2017/summit/slide/D3T6-4.pdf
  21. 21. 21 まとめ • Amazon ECSは既に多くのお客様で本番稼働中 – エンタープライズからスタートアップ、小規模から大規模まで • キーワード: AWSへの移行、可用性向上、構築 ・運用自動化、Auto Scaling、Spot Fleet • 迷ってる時間があったら、今すぐECS活用! – AWS上でDockerを使うなら、まず最初の選択肢としてECS
  22. 22. 22

×