Azure Kubernetes のデプロイ センター

重要

Azure Kubernetes Service のデプロイ センターは、2023 年 3 月 31 日に廃止されます。 詳細情報

Azure DevOps のデプロイ センターを利用すると、アプリケーションの信頼性の高い Azure DevOps パイプラインを容易に設定できます。 デプロイ センターでは、既定で、アプリケーションの更新プログラムが Kubernetes クラスターにデプロイされるように Azure DevOps パイプラインが構成されます。 構成済みの既定の Azure DevOps パイプラインを拡張し、デプロイ前の承認の取得、追加の Azure リソースのプロビジョニング、スクリプトの実行、アプリケーションのアップグレード、さらに追加の検証テストの実行など、より高度な機能を追加できます。

このチュートリアルでは、次のことについて説明します。

  • アプリケーションの更新プログラムが Kubernetes クラスターにデプロイされるように Azure DevOps パイプラインを構成する。
  • 継続的インテグレーション (CI) パイプラインを確認する。
  • 継続的デリバリー (CD) パイプラインを確認する。
  • リソースをクリーンアップする。

前提条件

  • Azure サブスクリプション。 Visual Studio Dev Essentials を通じて無料で取得できます。

  • Azure Kubernetes Service (AKS) クラスター。

AKS クラスターを作成する

  1. Azure portal にサインインします。

  2. Azure portal のメニュー バーの右側にある [Cloud Shell] を選択します。

  3. AKS クラスターを作成するには、以下のコマンドを実行します。

    # Create a resource group in the South India location:
    
    az group create --name azooaks --location southindia
    
    # Create a cluster named azookubectl with one node.
    
    az aks create --resource-group azooaks --name azookubectl --node-count 1 --enable-addons monitoring --generate-ssh-keys
    

アプリケーションの更新プログラムを Kubernetes クラスターにデプロイする

  1. 前のセクションで作成したリソース グループに移動します。

  2. AKS クラスターを選択し、左側のブレードの [デプロイ センター (プレビュー)] を選択します。 [Get started](作業を開始する) を選択します。

    デプロイ センターを指す矢印が記載された Azure portal を示すスクリーンショット。

  3. コードの場所を選択し、 [次へ] を選択します。 次に、現在サポートされているリポジトリのいずれかを選択します: Azure Repos または GitHub

    Azure Repos は、コードを管理するのに役立つバージョン管理ツールのセットです。 ソフトウェア プロジェクトが大きいか小さいかにかかわらず、できるだけ早期にバージョン管理を使用することをお勧めします。

    • Azure Repos: 既存のプロジェクトと組織からリポジトリを選択します。

      Azure Repos

    • GitHub: GitHub アカウントのリポジトリを承認して選択します。

      GitHub をソースとして選択し、リポジトリを選択する GitHub のプロセスを示すアニメーション。

  4. デプロイ センターによってリポジトリが分析され、対象の Dockerfile が検出されます。 Dockerfile を更新する場合は、識別されたポート番号を編集します。

    アプリケーションの設定

    リポジトリに Dockerfile が含まれていない場合は、コミットするようにメッセージが表示されます。

    リポジトリで Dockerfile が見つからなかったというメッセージが表示されたデプロイ センターを示すスクリーンショット。

  5. 既存のコンテナー レジストリを選択するか作成し、 [完了] を選択します。 パイプラインが自動的に作成され、Azure Pipelines のキューにビルドが配置されます。

    Azure Pipelines は、コード プロジェクトを自動的にビルドしてテストし、他のユーザーが使用できるようにするクラウド サービスです。 Azure Pipelines では、継続的インテグレーションと継続的デリバリーが組み合わされ、コードが継続的に一貫してテストおよびビルドされて、任意のターゲットに出荷されます。

    Container Registry

  6. リンクを選択して、進行中のパイプラインを表示します。

  7. デプロイが完了すると、成功ログが表示されます。

    緑色のチェック マーク アイコンが付いたリリース 1 のデプロイ センターを示すスクリーンショット。

CI パイプライン を確認する

デプロイ センターでは、Azure DevOps 組織の CI/CD パイプラインが自動的に構成されます。 パイプラインは、調査およびカスタマイズすることができます。

  1. デプロイ センターのダッシュボードに移動します。

  2. 成功ログの一覧からビルド番号を選択して、プロジェクトのビルド パイプラインを表示します。

  3. 右上隅にある省略記号 [...] を選択します。 メニューには、新しいビルドのキュー登録、ビルドの保持、ビルド パイプラインの編集など、いくつかのオプションが表示されます。 [パイプラインを編集する] を選択します。

  4. このウィンドウでは、ビルド パイプラインのさまざまなタスクを調べることができます。 ビルドでは、Git リポジトリからのソースの収集、イメージの作成、コンテナー レジストリへのイメージのプッシュ、デプロイに使用される出力の発行など、さまざまなタスクが実行されます。

  5. パイプラインの先頭で、ビルド パイプラインの名前を選択します。

  6. ビルド パイプラインの名前をよりわかりやすい名前に変更し、 [保存してキューに登録] を選択して、 [保存] を選択します。

  7. ビルド パイプラインの下の [履歴] を選択します。 このウィンドウには、最近のビルド変更の監査証跡が表示されます。 ビルド パイプラインに対するすべての変更が Azure DevOps によって監視され、バージョンを比較できます。

  8. [トリガー] を選択します。 CI プロセスにブランチを含めることも、CI プロセスからブランチを除外することもできます。

  9. [保持] を選択します。 シナリオに応じて、特定の数のビルドを保持または削除するポリシーを指定できます。

CD パイプライン を確認する

デプロイ センターでは、Azure DevOps 組織と Azure サブスクリプションの間の関係が自動的に作成され、構成されます。 必要な手順には、Azure サブスクリプションを Azure DevOps で認証するための Azure サービス接続の設定が含まれます。 自動化プロセスによってリリース パイプラインも作成され、このパイプラインによって Azure への継続的デリバリーが提供されます。

  1. [パイプライン] を選択し、 [リリース] を選択します。

  2. リリース パイプラインを編集するには、 [編集] を選択します。

  3. [成果物] ボックスの一覧から [削除] を選択します。 前の手順で調べた構築パイプラインでは、成果物に使用される出力が生成されます。

  4. [ドロップ] の右側にある [継続的デプロイ] トリガーを選択します。 このリリース パイプラインには、新しいビルド成果物が使用可能になるたびにデプロイを実行する有効な CD トリガーがあります。 また、トリガーを無効にして、デプロイの手動実行が必要になるようにすることもできます。

  5. パイプラインのすべてのタスクを調べるには、 [タスク] を選択します。 リリースでは、Tiller 環境が設定され、imagePullSecrets パラメーターが構成され、Helm ツールがインストールされて、Kubernetes クラスターに Helm チャートがデプロイされます。

  6. リリース履歴を表示するには、 [リリースの表示] を選択します。

  7. 概要を表示するには、 [リリース] を選択します。 リリース概要、関連付けられた作業項目、テストなど、任意のステージを選択して、複数のメニューを調べることができます。

  8. [コミット] を選択します。 このビューには、このデプロイに関連するコードのコミットが表示されます。 リリースを比較して、デプロイ間のコミットの相違を表示します。

  9. [ログ] を選択します。 ログには、有用なデプロイ情報が含まれています。デプロイ中でもデプロイ後も、それらを見ることができます。

リソースをクリーンアップする

作成した関連リソースが必要なくなったら、削除してかまいません。 DevOps Projects ダッシュボードで削除機能を使用します。

次のステップ

チームのニーズを満たすようにこれらのビルドおよびリリース パイプラインを変更できます。 また、この CI/CD モデルをご自身の他のパイプラインのテンプレートとして使用することもできます。

廃止

Azure Kubernetes のデプロイ センターは 2023 年 3 月 31 日に廃止され、自動デプロイに置き換わります。 同様の機能を利用できるように、切り替えることをお勧めします。

移行の手順

AKS デプロイ センターの操作ではそれ自体に情報が格納されないため、移行は必要ありません。これは、ユーザーが Azure で初日から作業を開始するのに役立ちます。 今後、ユーザーが AKS の CI/CD を使い始める際に推奨される方法は、自動デプロイ機能を使用することです。

既存のパイプラインの場合、ユーザーは、このエクスペリエンスの廃止後も、GitHub Actions または Azure DevOps からすべての操作を実行できます。 Azure portal からパイプラインを作成および表示する機能のみが削除されます。 使用を開始する方法については、GitHub Actions または Azure DevOps に関するページを参照してください。

AKS への新しいアプリケーションのデプロイでは、デプロイ センターを使用する代わりに、自動デプロイを使用して同じ機能を利用できます。

よく寄せられる質問

  1. このエクスペリエンスが非推奨になった後、CD パイプラインはどこで管理できますか? 

提供終了後、Azure portal の [AKS] ブレードから CD パイプラインを表示および作成することはできません。 ただし、現在のエクスペリエンスと同様に、GitHub Actions または Azure DevOps ポータルに移動し、そこで構成済みのパイプラインを表示または更新できます。

  1. 以前に構成したパイプラインは失われますか?

いいえ。 作成済みのすべてのパイプラインは引き続き GitHub または Azure DevOps で使用でき、機能します。 Azure portal からのパイプラインの作成と表示のエクスペリエンスのみが廃止されます。

  1. Azure portal を使用して CD パイプラインを直接構成するにはどうすればよいですか?

Azure portal の [AKS] ブレードで使用可能な自動デプロイを使用できます。