Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JAWSUG Nagoya AWSコンテナサービス概要

kawaji
February 27, 2024

JAWSUG Nagoya AWSコンテナサービス概要

2024/2/27 JAWS-UG 名古屋 発表資料

kawaji

February 27, 2024
Tweet

More Decks by kawaji

Other Decks in Technology

Transcript

  1. © 2021, Amazon Web Services, Inc. or its Affiliates. 2024/2/27

    JAWS-UG 名古屋 AWS コンテナサービス 概要 / Amazon EKS 成分多めに紹介します
  2. © 2021, Amazon Web Services, Inc. or its Affiliates. オーケストレータ

    イメージレジストリ Amazon ECR Amazon ECS Amazon EKS Amazon EC2 AWS Fargate
  3. © 2021, Amazon Web Services, Inc. or its Affiliates. 4

    AWSのコンテナ関連サービス オーケストレーション (コントロールプレーン) デプロイ、スケジューリング、 スケーリング、クラスタ管理 実⾏基盤 (データプレーン) コンテナ実⾏ イメージレジストリ コンテナイメージのリポジトリ Elastic Container Registry Elastic Container Service EC2 (Elastic Compute Cloud) Fargate Elastic Kubernetes Service CloudWatch Container Insights コンテナ監視 メトリクス、ダッシュボード
  4. © 2021, Amazon Web Services, Inc. or its Affiliates. 5

    AWS 上での基本的な EC サイト構成例 ※ NW やセキュリティのコンポーネントは省略しています AZ1 AZ2 VPC ユーザー Amazon Route 53 Elastic Load Balancing https://ec.example.co.jp Amazon CloudFront Amazon S3 Amazon ElastiCache Cluster Amazon RDS or Aurora Elastic Container Service Elastic Container Registry CloudWatch Logs / Container Insights RDS Proxy App Server DB Server コンテナ AP Serv 製品 Framework アプリ
  5. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    Elastic Container Service (ECS) フルマネージド型のコンテナオーケストレーションサービス グローバル展開 強⼒なスケジュールエンジン オートスケーリング CloudWatch 連携 (ログ/メトリクス/イベント) Elastic Load Balancing 連携 コンテナレベルの ネットワーク構成 ⾼度なタスク配置 戦略 他の AWS サービス との連携 SLA 99.99% … { } Linux & Windows
  6. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    ECS と各種AWSサービスの⾼度な連携 Elastic Load Balancing(ELB) AWS App Mesh AWS Cloud Map Amazon VPC ネットワーキング AWS Secrets Manager Amazon Simple Storage Service(S3) AWS Systems Manager Parameter Store Secrets/Configs Amazon CloudWatch AWS X-Ray モニタリング AWS CodePipeline AWS CodeCommit AWS CodeBuild AWS CodeDeploy CI/CD Amazon GuardDuty AWS Identity and Access Management(IAM) AWS CloudTrail セキュリティ Amazon ECS AWS Step Functions Amazon EventBridge Job実⾏ AWS CloudFormation IaC Amazon Elastic File System(EFS) NFS
  7. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    ECS Anywhereを発表 • お客様の管理するインフラストラクチャ(e.g. オンプレミス環境)へコンテナをデ プロイさせることが可能に • デプロイ先がAWSクラウドでもオンプレミスでも今までのECSとオペレーション の操作性は同じ • Amazon ECS Anywhereを利⽤すればオンプレミスにコンテナオーケストレーショ ンの仕組みを構築する必要がなくなる Corporate data center Traditional server Traditional server Traditional server Amazon Elastic Container Service AWS Cloud
  8. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    ECS によるデプロイオプション デプロイメント、スケジュー リング、スケーリングとコン テナアプリケーションの管理 コンテナ実⾏環境 Amazon Elastic Container Service Amazon EC2 in AWS regions AWS Local Zones AWS Wavelength AWS Fargate オーケストレーション コンピューティングエンジン Fully Managed on-premises cloud Amazon EC2 in AWS Outposts On-premises including customer-owned Virtual Machines and bare metal servers
  9. © 2021, Amazon Web Services, Inc. or its Affiliates. •

    たくさんのお客様が EC2 上にセルフマネージドな Kubernetes を動か していました • Kubernetes の周りにある OSS のエコシステムやその拡張性の⾼さを 望まれていました
  10. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    Elastic Kubernetes Service (EKS) AWS での Kubenetes の実⾏を容易にするマネージドサービス • Kubernetes のリリース(=Upstream)を改変なく利⽤ • CNCF による Kubernetes 準拠の認定を取得 • 既存の Kubernetes エコシステムが完全に動作 • AWS サービスとの連携も OSS で実装 • 既存の Kubernetes エコシステムが完全に動作 • EKS サービスチーム、OSS チームによる Kubernetes コミュニティへの貢献 • “Pod”、”Deployment”、“Service”、“Job” などのリ ソースに代表される⾼い表現⼒
  11. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    Elastic Kubernetes Service (Amazon EKS) Kubernetes環境をマネージドサービスとして提供
  12. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. 67% の Kubernetes ユーザーが AWS 上で ワークロードを動かしている ̶CNCF survey, 2017
  13. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. Amazon Elastic Kubernetes Service
  14. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    Elastic Kubernetes Service (EKS) AWS での Kubenetes の実⾏を容易にするマネージドサービス • Kubernetes のリリース(=Upstream)を改変なく利⽤ • CNCF による Kubernetes 準拠の認定を取得 • 既存の Kubernetes エコシステムが完全に動作 • AWS サービスとの連携も OSS で実装 • 既存の Kubernetes エコシステムが完全に動作 • EKS サービスチーム、OSS チームによる Kubernetes コミュニティへの貢献 • “Pod”、”Deployment”、“Service”、“Job” などのリ ソースに代表される⾼い表現⼒
  15. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates.
  16. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates.
  17. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    EKS Anywhere 既存のハードウェアに Kubernetes 環境 を作成し、かつ EKS としての ⼀貫した運⽤体験を提供する 標準的に利⽤されている オープンソースのツール でクラスターを管理 プロダクションレディな クラスターを迅速に⽤意 既存のハードウェアを 活⽤ Amazon EKS で運⽤されている セキュアで安定したテスト済み のコンポーネントを実⾏ EKS Distroをオンプレミスにデプロイし、ライフサイクルを管理
  18. © 2021, Amazon Web Services, Inc. or its Affiliates. 既存の

    VMware vSphere に Kubernetes 環境 を作成し、かつ EKS と しての⼀貫した運⽤体験を提供する 標準的に利⽤されている オープンソースのツール でクラスターを管理 プロダクションレディな クラスターを迅速に⽤意 既存の VMware vSphere 環境を活⽤ Amazon EKS で運⽤されている セキュアで安定したテスト済み のコンポーネントを実⾏ EKS Distro を VMware vSphere にデプロイし、ライフサイクルを管理 Amazon EKS Anywhere
  19. © 2021, Amazon Web Services, Inc. or its Affiliates. EKS

    と EKS Distro、EKS Anywhere Amazon EKS Distro AWS が バージョンの⼀貫性を担保 (アップグレード、依存関係、セキュリティパッチ) Amazon EKS in AWS Provisioning Scaling Upgrade Node OS CNI Flux Console … Web Service APIs Vanilla Kubernetes Amazon EKS Anywhere Offline Tools AWS が運⽤ AWS がサポートする API で管理 お客様が運⽤ AWS がサポートする ツールで管理 Provisioning Scaling Upgrade Node OS CNI Flux Console … Amazon EKS Anywhere は VMware vSphere をサポートしています。 詳細はこちら
  20. © 2021, Amazon Web Services, Inc. or its Affiliates. イメージレジストリ:Amazon

    ECR (Elastic Container Registry) フルマネージドなコンテナイメージレジストリ コンテナ イメージ(群) • リージョンサービスであり、 スケーラブル かつ ⾼い可⽤性 を提供 • セキュリティ(IAMで制御、クロスアカウント利 ⽤、イメージセキュリティスキャン、暗号化) • OCI準拠。ECS/EKS/k8s等から利⽤可能 • ライフサイクルポリシーにより、 イメージの⾃動クリーンアップも可能 (「タグなしイメージはpush登録からn⽇経過したも のは削除」や「n個以上は削除」といったルールを複 数定義可能)
  21. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon

    ECR - コンテナイメージスキャン機能 CoreOS社 Clairプロジェクト (ツール*) の脆弱性データベースを利⽤した コンテナイメージスキャン機能を提供 (無償でご利⽤可能) Amazon ECR (Privateレジストリ) Amazon Elastic Container Service(ECS) Amazon Elastic Kubernetes Service(EKS) イメージPULL イメージPULL コンテナイメージ コンテナイメージ 脆弱性スキャン この領域の機能を提供 (静的イメージスキャン) ビルドツール・ CI/CDパイプライン イメージPUSH (*) https://github.com/quay/clair イメージスキャン 完了イベント … Amazon CloudWatch Events CodePipeline
  22. © 2021, Amazon Web Services, Inc. or its Affiliates. 28

    ECS で EC2をデータプレーンに使⽤する上での悩み EC2 インスタンス OS Docker engine ecs-agent Task Task l 脆弱性対応のパッチ当てやOS更新 l EC2インスタンス上のエージェント類の更新 l 状態異常が発⽣したEC2インスタンスの再起動や ⼊れ替え l インスタンスレベルのスケーリング管理 l アプリの開発 & デプロイ l コンテナのAuto Scaling設定 l コンテナのセキュリティ管理 本来やりたいこと (やるべきこと) アプリケーションの開発と運⽤に集中したいのに EC2インスタンスの運⽤作業 (OS, ECSエージェント, …) が発⽣する
  23. © 2021, Amazon Web Services, Inc. or its Affiliates. 29

    データプレーン:AWS Fargate EC2インスタンスの管理不要でコンテナを実⾏可能 ( = ECSにおける “サーバーレスな” データプレーン) • タスクのスケーリングのみを管理 • 使⽤リソースに対しての秒単位料⾦ • 各種AWSサービスとの連携 • ユーザーVPCにENIにて接続 • 接続するサブネットを指定 • SLA 99.99 % (ECSと同じ) EC2インスタンス 管理不要 タスク ネイティブAPI リソース ベース価格 簡素で使いやすく 強⼒なリソース消費モデル (※EC2と共存可能)
  24. © 2021, Amazon Web Services, Inc. or its Affiliates. AWS

    上でのコンテナ実⾏における幅広い選択肢 Amazon ECS Amazon EKS Amazon EC2 AWS Fargate
  25. © 2023, Amazon Web Services, Inc. or its affiliates. 34

    AWS App Runner - 概要 AWSを活⽤するお客様のねらい → 「スケール性⾼く、セキュアに素早くサービスを開発したい」 Innovate Scale Secure スケール性を確保 (素早くシームレスに) セキュリティの確保 (設計による分離) アプリ構築に注⼒ (基盤ではなく)
  26. © 2023, Amazon Web Services, Inc. or its affiliates. 35

    AWS App Runner - 概要 コントロールプレーンやデータプレーンなどを意識させない シンプル かつ 抽象度の⾼い コンテナ実⾏⽤のコンピューティングサービス AWS Fargate ECS Elastic Load Balancing AWS Auto Scaling AWS CodeBuild 開発チーム Webアプリケーション バックエンドサーバー
  27. © 2023, Amazon Web Services, Inc. or its affiliates. 36

    AWS App Runner - 概要 コントロールプレーンやデータプレーンなどを意識させない シンプル かつ 抽象度の⾼い コンテナ実⾏⽤のコンピューティングサービス AWS App Runner Webアプリケーション バックエンドサーバー 開発チーム