Azure Kubernetes Service (AKS) での Jenkins と Kubernetes を使用したコンテナー CI/CD

Container Registry
Cosmos DB
Kubernetes Service
Monitor

ソリューションのアイデア

この記事にさらに多くの情報 (想定されるユース ケース、代替サービス、実装に関する考慮事項、価格ガイダンスなど) の掲載をご希望の方は、GitHub のフィードバックでお知らせください。

コンテナーにより、アプリケーションの継続的なビルドとデプロイが簡単になります。 Azure Kubernetes Service (AKS) を使用してそれらのコンテナーのデプロイを調整すれば、複製できて管理しやすいコンテナーのクラスターを作成できます。

コンテナー イメージを生成するための継続的ビルドを設定し、オーケストレーションすることで、デプロイのスピードと信頼性を向上させることができます。

Architecture

アーキテクチャ図このアーキテクチャの SVG をダウンロードしてください。

データ フロー

  1. アプリケーションのソース コードを変更します。
  2. コードを GitHub にコミットします。
  3. 継続的インテグレーション トリガーが Jenkins に送られます。
  4. Jenkins は、動的ビルド エージェントのために Azure Kubernetes Service (AKS) を使用してビルド ジョブをトリガーします。
  5. Jenkins は、Docker コンテナーを構築し Azure Container Registry にプッシュします。
  6. Jenkins は、新しいコンテナー化されたアプリを Azure 上の Kubernetes にデプロイします。
  7. コンテナーサービス (AKS) は、 Azure Cosmos DB によって支えられています。
  8. Grafana では、視覚化されたインフラストラクチャとアプリケーション メトリックが Azure Monitor に表示されます。
  9. アプリケーションを監視し、改善を行います。

コンポーネント

  • Azure Kubernetes Service (AKS):Kubernetes のデプロイ、管理、操作を簡略化する。
  • [コンテナー レジストリ]:あらゆる種類の Azure デプロイ間でコンテナー イメージを格納して管理します。
  • Azure Cosmos DB:あらゆるスケールに対応するグローバル分散型のマルチモデル データベースです。
  • Azure Monitor:Azure リソースのデータを詳細かつリアルタイムに監視します。
  • Visual Studio Code:Azure サービスを最大限に活用するマルチ プラットフォーム アプリをビルドしてデプロイします。

このシナリオのデプロイ

次のステップ