Amazon Web Services ブログ

Tag: EKS

AWS X-Ray を使った Istio 仮想サービスのトレースの可視化

この記事は Sourav Paul による“Ship and visualize your Istio virtual service traces with AWS X-Ray”(2020/12/07投稿)を翻訳したものです。 分散トレースは、リクエストがシステムコンポーネントの中をどのように通過するのかを追跡したり、呼び出したサイトで主要なパフォーマンス指標をキャプチャすることで、分散システムの実行時のパフォーマンスインサイトを導き出すメカニズムです。このメカニズムはトラフィックの健全性とともに動的なサービスの依存関係を表し、サービスのオーナーやクラスター管理者が、アプリケーションの状況を迅速に可視化、パフォーマンスのボトルネックの特定、サービスの課題をプロアクティブに対処することに役立ちます。 しかしながら、トレーシングプラットフォームがもたらすメリットにもかかわらず、分散トレースの技術スタックをプロダクションレディにセルフマネージドできるようなるまでには、かなりのエンジニアリング作業が必要です。分散トレースのセットアップには少なくとも共通して次の手順が必要です。

Read More

Amazon EKS での Kubernetes アップグレードの計画

この記事は Planning Kubernetes Upgrades with Amazon EKS (記事公開日: 2021 年 5 月 3 日) を翻訳したものです。 2021 年 2 月、Amazon Elastic Kubernetes Service (Amazon EKS) は Kubernetes バージョン 1.19 のサポートを開始しました。これは、What’s New の投稿や Amazon EKS ドキュメントの更新など、通常のメカニズムを通じて発表されました。社内やお客様とのいくつかの会話の結果、AWS は Amazon EKS の Kubernetes バージョンリリースに合わせて、AWS Containers ブログ記事の投稿を行うことにしました。これらの記事では、新機能のハイライトとともに、クラスターのアップグレードを計画する際に注意する必要がある特定の変更点を紹介します。

Read More

GitOps を用いた Amazon EKS の自動化

元の記事:https://aws.amazon.com/jp/blogs/containers/automating-amazon-eks-with-gitops/ 本記事は Weaveworks のコンテンツディレクターの Anita Buehrle による寄稿記事です。 企業は速く進むことを望んでいます。より頻繁に、より確実に、そしてなるべく少ないオーバーヘッドでデプロイする必要があります。GitOps は Kubernetes で実行されている複雑なアプリケーションやインフラストラクチャを開発者が管理および更新するための迅速かつ安全な方法です。 GitOps は運用とアプリケーションデプロイのワークフローであり、クラウドネイティブアプリケーションのインフラストラクチャとデプロイの両方を管理するための一連のベストプラクティスです。この記事は二部構成になっています。第 1 部では GitOps がどのように動作し、利点が何であるかについての説明とともに、GitOps の歴史もお話します。第 2 部では、Amazon Elastic Kubernetes Service (Amazon EKS) への継続的デプロイのパイプラインを Flux でどのようにセットアップするかを説明したハンズオンチュートリアルを用いて、自分自身で GitOps を試してみることができます。 GitOps とは何か? Weaveworks の CEO の Alexis Richardson による造語である GitOps は Kubernetes およびその他のクラウドネイティブ技術の運用モデルです。クラスターとアプリケーションのデプロイ、管理、そしてモニタリングを統合する、一連のベストプラクティスを提供します。言い換えると、アプリケーション管理にデベロッパーの手法を適用していくということであり、運用と開発の両方にエンドツーエンドの CI および CD パイプラインと Git ワークフローが適用されます。 GitOps の原則 GitOps が実際に機能するためには、チームが次の原則を実施している必要があります。 #1. システム全体が宣言的に記述されている […]

Read More

マルチアーキテクチャの Amazon EKS クラスターに Spring Boot アプリケーションをデプロイする

この記事は、Deploy a Spring Boot application on a multi-architecture Amazon EKS clusterを翻訳したものです。 本投稿は、Senior Cloud Technical Consultant の Andrew (Qingjie) Ren により寄稿されました。 はじめに ARM ベースと AMD ベースのインスタンスの両方を使用して、マルチアーキテクチャの Amazon Elastic Kubernetes Service (Amazon EKS) クラスターにアプリケーションをデプロイすることを検討する理由は何でしょうか? コストの最適化は、お客様にとって重要なビジネスの推進要因であることがよくあります。また、Well-Architected デザインの重要な柱でもあります。通常、コンピューティングリソースのコストを削減するには、いくつかの方法があります。例えば、Savings Plans、オンデマンドインスタンス、スポットインスタンスなどの購入オプションを組み合わせたり、コンピューティングリソースのサイズを適切に設定するなどの方法です。 AWS Graviton2 (ARM ベース) は様々なワークロードに対して、同等の現行世代の AMD ベースのインスタンスに比べて最大 40 %のコストパフォーマンスを提供します。2019 年 12 月に Graviton2 インスタンスが最初に登場されて以来、Amazon Elastic Kubernetes Service (Amazon EKS)、Amazon Relational […]

Read More

EKS と Fargate、AWS Compute Savings Plans で Pod の料金を節約する

この記事は、Saving money a pod at a time with EKS, Fargate, and AWS Compute Savings Plans を翻訳したものです。 re:Invent 2019 では、Amazon Elastic Kubernetes Service (Amazon EKS) で、Kubernetes の Pod を AWS Fargate にデプロイできるようになったことが発表されました。その発表以降、多くのお客様が実際に Fargate 、つまりコンテナを実行するためのサーバーレスインフラストラクチャーに Kubernetes の Pod をデプロイしています。Fargate を利用することで、クラスターの管理やパッチの適用、セキュリティやアイソレーション、スケーリングといった様々な運用業務、「差別化にならない重労働( undifferentiated heavy lifting )」から解放されます。 Amazon EKS と Fargate の詳細については、re:Invent のブレイクアウトセッションでも掘り下げられています。 AWS Fargate は AWS Compute Savings Plans […]

Read More

Amazon EKS を利用した、ステートレスなマルチリージョンアプリケーションの運用

この記事は、Operating a multi-regional stateless application using Amazon EKS を翻訳したものです。 本投稿は、Sr Solutions Architect の Re Alvarez-Parmar と、Technical Account Manager の Avi Harari により寄稿されました。 AWS の上で運用を行う主な利点の一つは、お客様が AWS のグローバルフットプリントを利用して複数のリージョンでワークロードを実行することが、いかに簡単かという点です。ディザスターリカバリーをサポートするため、あるいはエンドユーザーとなるお客様の近くでアプリケーションを稼働させるためにマルチリージョンアーキテクチャが必要な場合、AWS はアプリケーションの可用性や信頼性、そしてレイテンシーを改善するためのビルディングブロックを提供します。本投稿では、Amazon Elastic Kubernetes Service (Amazon EKS) を使用して複数の AWS リージョンでアプリケーションを実行し、AWS Global Accelerator を使用して AWS リージョン間でトラフィックを分散する方法を示します。 本投稿での説明をシンプルにするために、複数の AWS リージョンを跨いで実行されるステートレスアプリケーションにスコープを絞って説明しています。データの永続化が必要なワークロードでは、DynamoDB グローバルテーブル、 Amazon Aurora グローバルデータベース、そして Amazon S3 クロスリージョンレプリケーションのような機能を利用することができます。本投稿では、ステートレスアプリケーションの基本的なアーキテクチャを提案しています。ステートフルなマルチリージョンアプリケーションのブループリントをビルドするために、データやデータベースレプリケーションサービスでこのアーキテクチャを補完することもできます。 Amazon EKS はグローバル化においてどのように役に立つのか Kubernetes の宣言的なシステムは、マルチリージョンデプロイメントを運用するための理想的なプラットフォームとなります。宣言的なシステムでは、desired […]

Read More
.NET on AWS

AWSで.NET 5を利用する

AWSには長い間.NETでの開発に携わってきた者が多数在籍しており、私たちは.NET 5がGAリリースされたことに大きい喜びを感じています。2020年夏に.NET Conf 2020で発表されたベンチマーク結果によると、旧バージョンの.NET Core 3.1に比べ特に性能改善に力が注がれたことがよく分かります。この記事では、AWSが.NET 5での開発をサポートするためにどんなサービスやツールをご用意しているか、コンピューティング・ネットワーク・開発者ツール・データベースといった4つの領域に分けて解説していきたいと思います。これらの情報をもとに、皆様がAWS上で.NETを最大限活用できれば幸いです。

Read More

AWS Step FunctionsとAmazon EKSの統合のご紹介

元の記事:https://aws.amazon.com/blogs/containers/introducing-aws-step-functions-integration-with-amazon-eks/ 本投稿は Romain Jourdanによる記事を翻訳したものです。 私がAWSに入社してからこれが初めてのAWS Container Blogへの投稿となりますが、サーバーレスとKubernetesという2つのテクノロジの融合、具体的にはAWS Step FunctionsとAmazon Elastic Kubernetes Serviceの統合についてお話しできることにこの上なく興奮しています。

Read More

AWS App Mesh と Kong を使って Amazon EKS 上でマイクロサービスを実行する

この記事は、Running microservices in Amazon EKS with AWS App Mesh and Kong を翻訳したものです。 本投稿は、Kong ソリューションエンジニアの Claudio Acquaviva、Kong アライアンスの Morgan Davies と共同で作成されたものです。 サービスメッシュはサービス間通信のための一般的なアーキテクチャパターンとなっている透過的なインフラストラクチャレイヤーです。Amazon EKS と AWS App Mesh を組み合わせることでマイクロサービスのための強力なプラットフォームを形成し、ロードバランシング、サービスディスカバリ、可観測性、アクセスコントロール、トレース、ヘルスチェック、サーキットブレーカーなどサービス間通信で発生する技術的な要件に対応する事ができます。 モダンなエンタープライズソリューションでは、次のカテゴリの明確な管理制御が必要です。 API エンドポイントへの外部からのイングレストラフィックをカバリングする API 管理 運用管理とサービスの状態に焦点を当てたサービス管理機能 サービスメッシュは主に 2 つ目のカテゴリに対応していますが、イングレストラフィックも同様に重要であり、スロットリング、アプリケーションとユーザの認証、リクエストログとトレース、データのキャッシングなどクラスタ全体のポリシーをサポートするソリューションから恩恵を受けることができます。これらのポリシーに加えてイングレスは使用状況の把握、課金システムの追加、運用上の閾値を超えたアラートの生成などの機能により、API のマネタイズを可能にするレイヤーです。 これらの機能はクラスタ外の周辺ツールを利用することで実現することも可能ですが、Kong for Kubernetes Ingress Controller は HPA、自己修復、RBAC、cert-manager などの Kubernetes の機能を活用して、アプリケーションと並行して稼働しているサービスメッシュを保護するソリューションを提供します。 この記事では、Amazon EKS、AWS App Mesh、Kong for Kubernetes を利用してサービスメッシュを安全に実装する方法について説明します。ここで取り上げる課題の範囲は API […]

Read More

Amazon EKS が、マネージド型ノードグループでの EC2 スポットインスタンスのプロビジョニングと管理をサポート

この記事は、Amazon EKS now supports provisioning and managing EC2 Spot Instances in managed node groups を翻訳したものです。 Amazon Elastic Kubernetes Service (Amazon EKS) を使用すると、アップストリームのKubernetes を利用した、セキュアで可用性の高いKubernetes クラスターを AWS で簡単に実行できます。2019 年にマネージド型ノードグループがサポートされ、EKS はクラスターの基盤となる EC2 インスタンス(ワーカーノード)をプロビジョニングし、管理できるようになりました。これにより、新しいAMI がリリースされたときにノードをローリングアップデートしたり、Kubernetes バージョンを更新したりといった、運用のための作業が非常に簡単になりました。EKS のマネージド型ノードグループについて詳しく知るには、アナウンス時のブログ及びドキュメントをご参照ください。 AWS public containers roadmap にお客様より寄せられたご要望を受けて、EKS はマネージド型ノードグループをさらに使いやすくするために機能を強化してきました。例えば、カスタムAMI の指定、起動テンプレートの利用といった機能拡張を実施しました。同様に、お客様の関心が高かった機能の一つが、マネージド型ノードグループでスポットインスタンスを起動、管理できるようにするというものです。 Amazon EC2 スポットインスタンスを利用すると、EC2 が予備として確保しているキャパシティーを利用して、大幅な割引価格で EC2 インスタンスを実行できます。 EC2 がこの予備キャパシティーを必要とする際には、スポットインスタンスは 2 分前に通知を受けて中断されることがあります。スポットインスタンスを Kubernetes のワーカーノードとして使用するというのは様々な種類のワークロードで非常によく使われるパターンです。ステートレスなAPI エンドポイントやバッチ処理、ML のトレーニング、Apache Spark […]

Read More