演習 - 環境を設定する
重要
この演習を行うには、独自の Azure サブスクリプションが必要です。また、料金が発生することがあります。 Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。
おもちゃ会社の Web サイトのパイプラインで作業を開始する前に、環境を構成する必要があります。 このユニットでは、このモジュールの残りの部分を完了するために、Azure 環境と Azure DevOps 環境が設定されていることを確認します。
これらの目的を達成するには、次の作業を行います。
- このモジュール用の Azure DevOps プロジェクトを設定します。
- プロジェクトのリポジトリをコンピューターにクローンする。
- Azure で 2 つのリソース グループを作成します。
- Azure Pipelines で 2 つのサービス接続と環境を作成します。
- 事前に作成された Azure DevOps プロジェクトの、必要のないリソースを削除します。
Azure DevOps プロジェクトを取得する
このモジュールの残りの部分を完了するために、Azure DevOps 組織が確実に設定されるようにします。 これを設定するには、Azure DevOps でテンプレートを実行して、プロジェクトを作成します。
このラーニング パスのモジュールは、段階的に進めるラーニング パスの一部となっています。 学習目的のために、各モジュールには Azure DevOps プロジェクトが関連付けられています。
ヒント
ラーニング パスの前のモジュールを完了した場合でも、次の手順に従って新しいプロジェクトを作成してください。 必ず新しい名前をつけてください。
テンプレートの実行
Azure DevOps プロジェクトを設定するテンプレートを実行します。
Azure DevOps Demo Generator サイトで、次の手順に従います。
[サインイン] を選択して利用規約に同意します。
[Create New Project] ページで、ご自分の Azure DevOps 組織を選択します。 toy-website-environments など、プロジェクト名を入力します。
[プロジェクトの作成] を選択します。
テンプレートの実行には少し時間がかかります。 後続の演習で使用できるパイプラインと Bicep ファイルが自動的に作成されます。
[プロジェクトに移動] を選択して Azure DevOps のプロジェクトに移動します。
重要
このモジュールの最後の演習には、重要なクリーンアップ ステップが含まれています。 クリーンアップ手順は、このモジュールを完了しなかった場合でも必ず行ってください。
リポジトリの複製
[Repos]>[ファイル] を選択します。
[複製] を選択します。
macOS を使用している場合は、Git リポジトリをクローンするための特別なパスワードが必要です。 [Git 資格情報の生成] を選択し、表示されるユーザー名とパスワードを安全な場所にコピーします。
[Clone in VS Code](VS コードにクローンする) を選択します。 Visual Studio Code を開くことを許可するように求めるメッセージが表示されたら、[開く] を選択します。
ダイアログ ボックスが表示され、拡張機能でリポジトリの URI を開くことを許可するように求めるメッセージが表示されたら、[開く] を選びます。
リポジトリ用に使用するフォルダーを作成してから、[リポジトリの場所を選択] を選択します。
このリポジトリを使用するのは初めてなので、サインインするように求められます。
Windows を使用している場合は、この演習で以前に Azure DevOps にサインインするために使用したのと同じ資格情報を入力します。
macOS を使用している場合は、先ほど生成した Git ユーザー名とパスワードを入力します。
Visual Studio Code からリポジトリを開くように求められます。 [Open (開く)] を選択します。
Azure へのサインイン
Azure でリソース グループを使用するには、Visual Studio Code ターミナルから Azure アカウントにサインインします。 Azure CLI ツールがインストールされていることを確認してください。
[ターミナル] メニューで、[新しいターミナル] を選択します。 通常、ターミナル ウィンドウは画面の下半分に表示されます。
ターミナル ウィンドウの右側に表示されるシェルが Bash の場合、正しいシェルが開いているので、次のセクションに進むことができます。
Bash 以外のシェルが表示された場合は、シェルのドロップダウンを選択し、Git Bash (既定) を選択します。
ターミナル シェルの一覧で Bash を選択し、プラス記号を選択して、Bash シェルを使用する新しいターミナルを開きます。
Azure CLI を使用して Azure にサインインする
Visual Studio Code のターミナルで次のコマンドを実行して、Azure にサインインします。
az login
開いたブラウザーで、Azure アカウントにサインインします。
Azure でリソース グループを使用するには、Visual Studio Code ターミナルから Azure アカウントにサインインします。 Azure PowerShell がインストールされていることを確認します。
[ターミナル] メニューで、[新しいターミナル] を選択します。 通常、ターミナル ウィンドウは画面の下半分に表示されます。
ターミナル ウィンドウの右側に表示されるシェルが Powershell または pwsh の場合、正しいシェルが開いているので、次のセクションに進むことができます。
Powershell または pwsh 以外のシェルが表示される場合は、シェルのドロップダウンを選択し、PowerShell を選択します。
ターミナル シェルの一覧で Powershell または pwsh を選択し、プラス記号を選択して、Powershell または pwsh シェルを使用する新しいターミナルを開きます。
Azure PowerShell を使用して Azure にサインインする
Visual Studio Code のターミナルで次のコマンドを実行して、Azure にサインインします。
Connect-AzAccount
開いたブラウザーで、Azure アカウントにサインインします。
Azure で 2 つのリソース グループを作成する
2 つの新しいリソース グループを作成するには、Visual Studio Code ターミナルで次の Azure CLI コマンドを実行します。
az group create --name ToyWebsiteTest --location westus3
az group create --name ToyWebsiteProduction --location westus3
2 つの新しいリソース グループを作成するには、Visual Studio Code ターミナルで次の Azure PowerShell コマンドを実行します。
New-AzResourceGroup -Name ToyWebsiteTest -Location westus3
New-AzResourceGroup -Name ToyWebsiteProduction -Location westus3
Azure Pipelines でサービス接続を作成する
次に、Azure Pipelines で 2 つのサービス接続を作成します。1 つはテスト環境用、もう 1 つは運用環境用です。 このプロセスにより、Azure にサービス プリンシパルが自動的に作成されます。 また、リソース グループの共同作成者ロールがサービス プリンシパルに付与され、パイプラインをリソース グループにデプロイできるようになります。
ブラウザーで、[プロジェクトの設定] を選択します。
[サービス接続]>[新しいサービス接続] を選択します。
[Azure Resource Manager]>[次へ] の順に選択します。
[サービス プリンシパル (自動)]>[次へ] を選択します。
[サブスクリプション] ドロップダウン リストで、お使いの Azure サブスクリプションを選択します。
ポップアップ ウィンドウが表示され、Azure にサインインするように求められる場合があります。 その場合は、資格情報を入力してサインインします。
[リソース グループ] ドロップダウン リストで、[ToyWebsiteTest] を選択します。
[サービス接続名] に「ToyWebsiteTest」と入力します。 必ず [すべてのパイプラインにアクセス許可を付与する] チェックボックスをオンにしてから、[保存] を選択してください。
ヒント
わかりやすくするために、すべてのパイプラインにサービス接続へのアクセス権を付与しています。 運用リソースを操作する実際のサービス接続を作成するときは、それらを必要とするパイプラインのみにアクセスを制限することを検討してください。
上記の手順を繰り返して、ToyWebsiteProductionという名前の別の新しいサービス接続を作成します。これは ToyWebsiteProductionという名前のリソース グループにデプロイされます。
リソース グループ リストが更新されていない場合、ブラウザーでページを更新してもう一度お試しください。
Azure Pipelines で環境を作成する
ブラウザーで、[Pipelines]>[環境] に移動します。
[New environment] (新しい環境) を選択します。
環境名として「Test」と入力します。
説明は空白のままにします。 [リソース] には [なし] を選択します。 [作成] を選択します。
注意
Azure Pipelines では、環境を使用してデプロイ機能を有効にします。 これらの機能の一部は、Kubernetes または仮想マシンにデプロイする場合にのみ適用されます。 このモジュールでは、これらの機能を使用しないので、無視してかまいません。
パイプラインで環境を使用する前に、アクセス許可を付与する必要があります。 簡潔にするために、環境へのアクセスをすべてのパイプラインに許可します。 自分で作成したパイプラインでは、アクセスを必要とするパイプラインにのみ環境へのアクセスを許可する必要があります。
3 つのドットのボタンを選択して、[セキュリティ] を選択します。
[パイプラインのアクセス許可] というセクションで、[アクセス許可を制限する] というボタンがある場合は、それを選択します。
3 つのドットのボタンを選択します。 [Open access](アクセスを開く) を選択します。
左矢印を 2 回選択して、環境の一覧に戻ります。
手順を繰り返して、Production という名前の環境を作成します。 忘れずに [Open access](アクセスを開く) に設定します。
運用環境のページを開いたままにしておきます。
運用環境に承認チェックを追加する
ページの右上にある 3 つのドットのボタンを選択し、ポップアップ メニューから [承認とチェック] を選択します。
[Approvals] を選択します。
[承認者] テキスト ボックスに自分の名前を入力し、自分自身を選択します。
[詳細設定] の横にある矢印ボタンを選択します。
既定では、承認者は自分がトリガーした実行を承認することができます。 このパイプラインを使うユーザーは他にいないため、このチェックボックスはオンのままにしておきます。 他の組織では、コンプライアンス要件を満たすために別の承認者を指定する必要があるかもしれません。
[作成] を選択します
古い環境を削除する
以前のバージョンのパイプラインでは、Website という名前の単一の環境を使用しました。 新しい環境を表すパイプライン環境を作成したので、古いパイプライン環境を削除します。
[Pipelines]>[環境] に移動します。
Website 環境を選択します。
ページの右上近くで、3 つのドットのボタンを選択して、ポップアップ メニューから [削除] を選択します。
[削除] を選択して、削除を確認します。
古い変数を削除する
以前のバージョンのパイプラインでは、単一のセットの変数を使用して、パラメーターとデプロイ構成を定義しました。 複数の環境にデプロイするようになったので、これらの変数を削除して、すぐに環境固有の変数セットに置き換えることができます。
[Pipelines]>[Pipelines] に移動します。
toy-website-environments パイプラインを選択します。
[編集] ボタンを選択します。
[変数] ボタンを選択します。
3 つの変数それぞれに対して、[変数の削除] ボタンを選択します。
[保存] を選択します。