Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

© 2021, Amazon Web Services, Inc. or its Affiliates. AWS コンテナサービス概要

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

© 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 コンテナ監視 メトリクス、ダッシュボード

Slide 5

Slide 5 text

© 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 アプリ

Slide 6

Slide 6 text

© 2021, Amazon Web Services, Inc. or its Affiliates. コンテナオーケストレーション on AWS

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

© 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

Slide 9

Slide 9 text

© 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

Slide 10

Slide 10 text

© 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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

© 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” などのリ ソースに代表される⾼い表現⼒

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

© 2021, Amazon Web Services, Inc. or its Affiliates. Kubernetesの運⽤は難易度が⾼い CRI対応 Container Runtime CRI Docker (dockershim) kubelet

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

© 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” などのリ ソースに代表される⾼い表現⼒

Slide 18

Slide 18 text

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

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

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

Slide 22

Slide 22 text

© 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 をサポートしています。 詳細はこちら

Slide 23

Slide 23 text

© 2021, Amazon Web Services, Inc. or its Affiliates. イメージレジストリ

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

© 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

Slide 26

Slide 26 text

© 2021, Amazon Web Services, Inc. or its Affiliates. ホスティング

Slide 27

Slide 27 text

© 2021, Amazon Web Services, Inc. or its Affiliates. イメージレジストリ

Slide 28

Slide 28 text

© 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エージェント, …) が発⽣する

Slide 29

Slide 29 text

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

Slide 30

Slide 30 text

© 2021, Amazon Web Services, Inc. or its Affiliates. Amazon ECS AWS Fargate

Slide 31

Slide 31 text

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

Slide 32

Slide 32 text

© 2021, Amazon Web Services, Inc. or its Affiliates. おまけ

Slide 33

Slide 33 text

© 2023, Amazon Web Services, Inc. or its affiliates. AWS App Runner

Slide 34

Slide 34 text

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

Slide 35

Slide 35 text

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

Slide 36

Slide 36 text

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

Slide 37

Slide 37 text

© 2023, Amazon Web Services, Inc. or its affiliates. Thank you!!

Slide 38

Slide 38 text

© 2021, Amazon Web Services, Inc. or its Affiliates. Thank you!!