Azure Arc 対応サーバーにインベントリのタグ付けを適用する

この記事では、Azure Arc 対応サーバーを使用してハイブリッド マルチクラウドおよびオンプレミスの環境全体にサーバー インベントリ管理機能を提供する方法に関するガイダンスを提供します。

Azure Arc 対応サーバーを使用すると、企業ネットワークや他のクラウド プロバイダー上の Azure の外部でホストされている Windows および Linux のマシンを管理できます。 これは、Azure でネイティブ仮想マシンを管理する方法に似ています。 ハイブリッド マシンは、Azure に接続されると接続済みマシンになり、Azure 内のリソースとして扱われます。 接続済みマシンにはそれぞれリソース ID があり、サブスクリプション内のリソース グループの一部として管理されます。また、Azure Policy やタグの適用などの標準的な Azure のコンストラクトを利用できます。 管理エンジンとして Azure を使用してサーバー インベントリを簡単に整理および管理できることにより、管理の複雑さが大幅に軽減され、ハイブリッドおよびマルチクラウドの環境に一貫した戦略を提供できます。

次の手順では、Resource Graph エクスプローラーAzure CLI を使用して、Azure の 1 つのペインから複数のクラウドにわたってサーバー インベントリに対するタグ付けおよびクエリを実行する方法を示します。

重要

この記事の手順では、既に VM、またはオンプレミスや他のクラウドで実行されているサーバーをデプロイ済みで、それらが Azure Arc に接続されていることを前提としています。まだ行っていない場合は、これを自動化するのに次の情報が役立ちます。

前提条件

  1. Azure Arc Jumpstart リポジトリを複製します。

    git clone https://github.com/microsoft/azure_arc
    
  2. バージョン 2.7 以降の Azure CLI をインストールするか、更新します。 次のコマンドを使用して、現在インストールされているバージョンを確認します。

    az --version
    

Azure Arc に接続されたサーバーでタグ付けの準備ができていることを確認する

Resource Graph エクスプローラーを使用して、Azure のリソースに対してクエリを実行し、表示します。

  1. Azure portal の上部の検索バーに「Resource Graph エクスプローラー」と入力し、それを選択します。

    Azure portal の Resource Graph エクスプローラーのスクリーンショット。

  2. クエリ ウィンドウで、次のクエリを入力し、 [クエリの実行] を選択します。

    Resources
    | where type =~ 'Microsoft.HybridCompute/machines'
    
  3. Azure Arc 対応サーバーが正しく作成されている場合は、Resource Graph エクスプローラーの結果ペインに一覧表示されます。 Azure Arc 対応サーバーは、Azure portal からも確認できます。

    Resource Graph エクスプローラーのクエリのスクリーンショット。

    Azure portal で Azure Arc 対応サーバーの詳細が示されているスクリーンショット。

基本的な Azure タグ分類を作成する

Azure CLI を開き、次のコマンドを実行して、基本的な分類構造を作成します。これにより、サーバー リソースがホストされている場所 (Azure、AWS、GCP、またはオンプレミス) で簡単にクエリを実行して報告できようになります。 タグ分類の作成の詳細については、「リソースの名前付けとタグ付けの意思決定ガイド」を参照してください。

az tag create --name "Hosting Platform"
az tag add-value --name "Hosting Platform" --value "Azure"
az tag add-value --name "Hosting Platform" --value "AWS"
az tag add-value --name "Hosting Platform" --value "GCP"
az tag add-value --name "Hosting Platform" --value "On-premises"

"az tag create" コマンドの出力を示すスクリーンショット。

Azure Arc リソースにタグを付ける

基本的な分類構造を作成したら、Azure Arc 対応サーバー リソースにタグを適用します。 次の手順では、AWS と GCP の両方におけるリソースのタグ付けを示します。 これらのうち、どちらかのプロバイダーのリソースしかない場合は、AWS または GCP の該当するセクションにスキップできます。

Azure Arc に接続された AWS Ubuntu EC2 インスタンスにタグを付ける

CLI で次のコマンドを実行して、AWS の Azure Arc 対応サーバーに Hosting Platform : AWS タグを適用します。

注意

Azure チュートリアルで説明されていない方法を使用して AWS EC2 インスタンスを接続した場合は、awsResourceGroupawsMachineName の値を、お使いの環境に固有の値に一致するように調整する必要があります。

export awsResourceGroup="arc-aws-demo"
export awsMachineName="arc-aws-demo"
export awsMachineResourceId="$(az resource show --resource-group $awsResourceGroup --name $awsMachineName --resource-type "Microsoft.HybridCompute/machines" --query id)"
export awsMachineResourceId="$(echo $awsMachineResourceId | tr -d "\"" | tr -d '\r')"
az resource tag --ids $awsMachineResourceId --tags "Hosting Platform"="AWS"

"az resource tag" コマンドの出力を示すスクリーンショット。

Azure Arc に接続された GCP Ubuntu サーバーにタグを付ける

CLI で次のコマンドを実行して、GCP の Azure Arc 対応サーバーに Hosting Platform : GCP タグを適用します。

注意

関連する Azure Arc の Terraform に関するチュートリアルで説明されていない方法を使用して GCP インスタンスを接続した場合は、gcpResourceGroupgcpMachineName の値を、お使いの環境に固有の値に一致するように調整する必要があります。

export gcpResourceGroup="arc-gcp-demo"
export gcpMachineName="arc-gcp-demo"
export gcpMachineResourceId="$(az resource show --resource-group $gcpResourceGroup --name $gcpMachineName --resource-type "Microsoft.HybridCompute/machines" --query id)"
export gcpMachineResourceId="$(echo $gcpMachineResourceId | tr -d "\"" | tr -d '\r')"
az resource tag --resource-group $gcpResourceGroup --ids $gcpMachineResourceId --tags "Hosting Platform"="GCP"

"az resource tag" コマンドの別の出力を示すスクリーンショット。

Resource Graph エクスプローラーを使用して、タグでリソースのクエリを実行する

複数のクラウドでホストされているリソースに対してタグを適用したら、Resource Graph エクスプローラーを使用してクエリを実行し、マルチクラウド ランドスケープに関する分析情報を取得します。

  1. クエリ ウィンドウに次のクエリを入力します。

    Resources
    | where type =~ 'Microsoft.HybridCompute/machines'
    | where isnotempty(tags['Hosting Platform'])
    | project name, location, resourceGroup, tags
    

    Resource Graph エクスプローラーのクエリの詳細を示すスクリーンショット。

  2. [クエリの実行] をクリックし、 [書式設定された結果] トグルを選択します。 正常に実行されると、すべての Azure Arc 対応サーバーとそれに割り当てられた Hosting Platform タグ値が表示されます。

    Resource Graph エクスプローラーのクエリの結果を示すスクリーンショット。

    プロジェクションされたサーバーに対するタグは、Azure portal からも確認できます。

    Azure Arc 対応サーバーのタグ セットを示すスクリーンショット。

    Azure Arc 対応サーバーの別のタグ セットを示すスクリーンショット。

環境をクリーンアップする

ご利用の環境をクリーンアップするには、次の手順を実行します。

  1. 各環境から仮想マシンを削除するには、各ガイドに記載されている破棄手順に従ってください。

  2. Azure CLI で次のスクリプトを実行して、このガイドの一環として作成したタグを削除します。

    az tag remove-value --name "Hosting Platform" --value "Azure"
    az tag remove-value --name "Hosting Platform" --value "AWS"
    az tag remove-value --name "Hosting Platform" --value "GCP"
    az tag remove-value --name "Hosting Platform" --value "On-premises"
    az tag create --name "Hosting Platform"