JAWS-UGコンテナ支部 #22 re:Cap での登壇資料です。
re:Invent 2022 で発表されたものを中心に、AWS コンテナ関連サービスのアップデートをご紹介しています。
https://jawsug-container.connpass.com/event/267606/
© 2022, Amazon Web Services, Inc. or its affiliates.© 2022, Amazon Web Services, Inc. or its affiliates.AWS コンテナサービスアップデート~ re:Invent 2022 ~Kyosuke OchimizuSolutions ArchitectAmazon Web Services Japan G.K.
View Slide
© 2022, Amazon Web Services, Inc. or its affiliates.⾃⼰紹介2落⽔ 恭介 (Ochimizu Kyosuke)コンテナスペシャリストソリューションアーキテクトØ SIerØ 教育業界ベンチャーØ Cloud IntegratorØ サポートチーム / アマゾン ウェブ サービス ジャパンØ 現在のロール好きな AWS サービス: AWS Fargate
© 2022, Amazon Web Services, Inc. or its affiliates.AWS re:Invent イベント概要3• AWS によるクラウドコンピューティングに関する世界規模の「学習型」カンファレンス• 2022 年 11 ⽉ 28 ⽇(⽉)〜 12 ⽉ 2 ⽇(⾦)• ラスベガスのオフライン会場がメイン。キーノートとリーダーシップセッションはストリーミング配信あり• 5 つの基調講演と数多くのセッションをご⽤意• 過去最⼤規模の参加者数• 現地参加︓50,000+• オンライン参加登録︓300,000+• ⽇本からも多数の⽅が現地でご参加
© 2022, Amazon Web Services, Inc. or its affiliates.アジェンダ4• Amazon Elastic Container Service (Amazon ECS)• Amazon Elastic Kubernetes Service (Amazon EKS)• その他• Red Hat OpenShift Service on AWS (ROSA)• Finch
© 2022, Amazon Web Services, Inc. or its affiliates.© 2022, Amazon Web Services, Inc. or its affiliates.Amazon Elastic Container Service(Amazon ECS)5
© 2022, Amazon Web Services, Inc. or its affiliates.ECS タスクのスケールイン保護が可能に6Amazon ECSタスク タスク タスクECS サービススケールイン保護処理中のタスクをスケールインやデプロイ時のタスクの終了から保護GA
© 2022, Amazon Web Services, Inc. or its affiliates.スケールイン保護を有効にする7ECS API / ECS コンテナエージェントエンドポイントを利⽤タスクFargate / コンテナインスタンスAmazon ECS$ECS_AGENT_URI/task-protection/v1/stateスケールイン保護ユーザーUpdateTaskProtection APIスケールイン保護ECS コンテナエージェント
© 2022, Amazon Web Services, Inc. or its affiliates.Fargate でエフェメラルストレージの利⽤状況が取得可能に8タスクFargate タスクタスクメタデータエンドポイントECS コンテナエージェントAmazon ECSAmazon CloudWatchContainer InsightsGA
© 2022, Amazon Web Services, Inc. or its affiliates.Amazon ECS Service Connect9ECS サービス間のアプリケーションネットワークの構築が容易にGAAmazon ECSservice connectサービスのデプロイ分かりやすい ECS サービスの識別名を設定サービス間の接続ECS サービスの識別名で信頼性のある接続を確⽴メトリクスの取得ECS コンソールや CloudWatch でトラフィックのメトリクスを確認アプリケーションの定義タスク定義でアプリケーションのエンドポイントを設定
© 2022, Amazon Web Services, Inc. or its affiliates.ECS Service Connect service の作成10コンテナインスタンスユーザーAmazon ECSECS コンテナエージェントConfigureECS タスクService Connect エージェントAgentコンテナAWS CloudMapConfigureRegisterFetch
© 2022, Amazon Web Services, Inc. or its affiliates.ECS Service Connect のトラフィックフロー11Amazon ECS AWS Cloud MapService Connect エージェントService Connect エージェントコンテナコンテナElastic Load BalancingクライアントFrontend サービス Backend サービスhttp://elb-endpointECS タスク10.1.2.1ECS タスク10.1.2.2http://10.1.2.1:8080http://0.0.0.0:8080http://backend:8080http://10.1.2.2:8080http://0.0.0.0:8080
© 2022, Amazon Web Services, Inc. or its affiliates.ECS Service Connect のコンセプト12namespaceECS クラスター ECS クラスターnamespaceclient serviceclient-server serviceendpointclient-server service が公開する URLclient serviceclient-serverserviceendpointhttp://blog:80
© 2022, Amazon Web Services, Inc. or its affiliates.ECS Service Connect の考慮事項13• (2022.12.20 時点) その後のアップデートで利⽤可能に
© 2022, Amazon Web Services, Inc. or its affiliates.ECS Service Connect の利⽤料⾦14
© 2022, Amazon Web Services, Inc. or its affiliates.© 2022, Amazon Web Services, Inc. or its affiliates.Amazon Elastic Kubernetes Service(Amazon EKS)15
© 2022, Amazon Web Services, Inc. or its affiliates.Amazon EKS が Kubernetes 1.24 のサポートを開始16GA• 2022.11.15 にサポート開始• EKS Kubernetes 1.24 の変更点(抜粋)Ø Dockershim の削除Ø マネージド型ノードグループのゼロスケール• Kubernetes バージョン 1.21 のサポート終了Ø 2023.2.15 に予定されているため、早めのアップグレード計画をKubernetesversionUpstream release Amazon EKSreleaseAmazon EKS end ofsupport1.24 May 3, 2022 November 15, 2022 January 20241.23 December 7,2021August 11, 2022 October 20231.22 August 4, 2021 April 4, 2022 May 20231.21 April 8, 2021 July 19, 2021 February 15, 2023
© 2022, Amazon Web Services, Inc. or its affiliates.AWS Marketplace for containers から EKS クラスターへの直接デプロイが可能に17GAEKS add-ons を経由した管理Amazon EKSISVs• サードパーティソフトウェアの検索やデプロイが容易に• EKS add-ons で管理可能• 2022.12.20 時点で以下をサポートØ Dynatrace Container AgentØ Kpow for Apache Kafka (SE-LM)Ø KubecostØ Teleport OSSØ Tetrate Istio DistroØ Upbound Universal Crossplane (UXP)
© 2022, Amazon Web Services, Inc. or its affiliates.Nitro Enclaves Kubernetes Device Plugin がリリース18GAaws/aws-nitro-enclaves-k8s-device-plugin: Nitro Enclaves Kubernetes Device Pluginhttps://github.com/aws/aws-nitro-enclaves-k8s-device-pluginapiVersion: apps/v1kind: Deploymentmetadata:name: unique_deployment_namespec:replicas: 1selector:matchLabels:app: application_nametemplate:metadata:labels:app: application_namespec:containers:- name: unique container_nameimage: docker_image_name:image_tagcommand: ["docker_image_entry_point"]resources:limits:aws.ec2.nitro/nitro_enclaves: "1”hugepages-2Mi: 768Micpu: 250mrequests:aws.ec2.nitro/nitro_enclaves: "1”hugepages-2Mi: 768Mi• Nitro Enclaves を利⽤する Pod の管理が容易に• Device Plugin を OSS で提供• EKS やセルフマネージドなKubernetes クラスターで利⽤可能
© 2022, Amazon Web Services, Inc. or its affiliates.Amazon VPC Lattice19Preview• サービス同⼠をシンプルかつ安全に接続するためのアプリケーション層のネットワークサービス§ サービスディスカバリ、リクエストルーティング、ロードバランシング、認証認可、可観測性など• クライアントとサービス間の接続を抽象化するサービスネットワークを作成§ サービスの検出と接続は⾃動的に実⾏される• AWS Gateway Controller for Kubernetes も提供予定• ⽶国⻄部 (オレゴン) リージョンでプレビューを開始(現時点で⽇本のリージョンは未対応)
© 2022, Amazon Web Services, Inc. or its affiliates.EKS アドオンで柔軟な設定変更が可能に20GA• PRESERVE パラメーターの追加Ø アドオンの更新時、ユーザーが変更したフィールドの値を保持したままアップデートCorefile:----.:53 {cache 15}Corefile:----.:53 {cache 15}resolveConflicts:PRESERVE• configurationValues パラメーターの追加• アドオンの作成時や更新時、EKS API でアドオンの設定変更が可能に• アドオンごとに変更可能なフィールドはJSON schema で確認{"env": {"ENABLE_PREFIX_DELEGATION": "true"}}Containers:aws-node:Environment:ENABLE_PREFIX_DELEGATION: trueconfigurationValues:file://example.jsonexample.jsoncoredns coredns
© 2022, Amazon Web Services, Inc. or its affiliates.© 2022, Amazon Web Services, Inc. or its affiliates.Red Hat OpenShift Service on AWS(ROSA)21
© 2022, Amazon Web Services, Inc. or its affiliates.クラスター作成が容易に22Announce
© 2022, Amazon Web Services, Inc. or its affiliates.Control Plane をサービス側でホスティング23Announce
© 2022, Amazon Web Services, Inc. or its affiliates.© 2022, Amazon Web Services, Inc. or its affiliates.Finch24
© 2022, Amazon Web Services, Inc. or its affiliates.Finch25ReleasedLinux コンテナをビルド、実⾏、公開するための新しいコマンドラインクライアントrunfinch/finch: The Finch CLI an open source client for container developmenthttps://github.com/runfinch/finch
© 2022, Amazon Web Services, Inc. or its affiliates.Linux 外でコンテナを開発、実⾏するスタック26VM 管理、イメージ管理、コンテナランタイム、クライアントツールなど多くの要素が必要
© 2022, Amazon Web Services, Inc. or its affiliates.コンテナを開発するための様々なツール27OSS、商⽤問わず多数存在する
© 2022, Amazon Web Services, Inc. or its affiliates.Finch - AWS が提供するコンテナ開発ツールのディストリビューション28Lima の config と ネイティブクライアント、インストーラーのセット
© 2022, Amazon Web Services, Inc. or its affiliates.まとめ29ECS• ECS タスクのスケールイン保護が可能に• Fargate でエフェメラルストレージの利⽤状況が取得可能に• Amazon ECS Service ConnectEKS• Amazon EKS が Kubernetes 1.24 のサポートを開始• AWS Marketplace for containers からEKS クラスターへの直接デプロイが可能に• Nitro Enclaves Kubernetes Device Plugin がリリース• Amazon VPC Lattice• EKS アドオンで柔軟な設定変更が可能にOther• [ROSA] クラスター作成が容易に• [ROSA] Control Plane をサービス側でホスティング• Finch
© 2022, Amazon Web Services, Inc. or its affiliates.Thank you!© 2022, Amazon Web Services, Inc. or its affiliates.@otty246