Azure CLI コマンドを対話形式で実行する

完了

対話型モードでは、Azure CLI を使用すると、コマンドをすぐに入力して実行できます。 Azure リソースをいくつか作成するだけで済む場合は、Azure CLI コマンドを手動で実行するのが妥当な選択です。

Azure CLI を使用してストレージ アカウントを作成する

Azure Storage アカウントの作成という一般的なタスクを実行してみましょう。 次の 4 つの手順に従う必要があります。

  1. を使用して az loginします。

  2. を使用して az accountします。

  3. を使用して(必要に応じて) az group createします。

  4. を使用してaz storage account createします。

手順 1: Azure に接続する

ローカルの Azure CLI インストールを使用しているため、Azure コマンドを 実行する前に認証する必要があります。 コマンドを使用して az login にサインインします。

az login

通常、Azure CLI によって既定のブラウザーが起動され、 Azure サインイン ページが開きます。

機能しない場合は、コマンド ラインの指示に従い、[コードの入力] ダイアログ ボックスに承認コードを 入力 します。

サインインが成功すると、 Azure サブスクリプションに接続されます。

重要

2025 年から、MicrosoftAzure CLI やその他のコマンド ライン ツールに対して必須の多要素認証 (MFA) を適用しています。 新しい MFA 要件は 、Microsoft Entra ID ユーザー ID に影響します。 サービス プリンシパルやマネージド ID などのワークロード ID には影響しません。

手順 2: サブスクリプションを確認する

複数の Azure サブスクリプションに対するアクセス許可がある場合は、既定のサブスクリプションを確認します。

az account show --output table
EnvironmentName    HomeTenantId                          IsDefault    Name                               State    TenantId
-----------------  ------------------------------------  -----------  ---------------------------------  -------  ------------------------------------
AzureCloud         aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e  True         My Production Subscription         Enabled  aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e

既定のサブスクリプションを変更する場合:

az account set --subscription "the name of a different subscription or subscription ID"

手順 3: リソース グループを作成する

Azure リソース グループは、Azure リソースのコンテナーです。 リソース グループ、Azure リソース を整理し、セキュリティとコストの管理に役立ちます。 リソース グループ 名は、サブスクリプション内で一意であり、地理的な場所に割り当てられている必要があります。

  1. 既定のサブスクリプションで使用できる Azure の場所 を確認します。

    az account list-locations --output table
    
    DisplayName               Name                 RegionalDisplayName
    ------------------------  -------------------  -------------------------------------
    East US                   eastus               (US) East US
    South Central US          southcentralus       (US) South Central US
    West US 2                 westus2              (US) West US 2
    West US 3                 westus3              (US) West US 3
    Australia East            australiaeast        (Asia Pacific) Australia East
    ... <more regions here>
    
  2. 変数を使用して リソース グループ を作成します。

    このモジュールは高度であるため、ランダム識別子と Bash 変数の使用を開始しましょう。 ランダム ID を使用すると、前のテストの リソース グループ が削除されるのを待たずに、スクリプトを繰り返しテストできます。

    # Variable block
    let "randomIdentifier=$RANDOM*$RANDOM"
    location="westus2"
    resourceGroup="msdocs-rg-$randomIdentifier"
    
    # Create the resource group
    az group create --name $resourceGroup --location $location --output json
    

手順 4: ストレージ アカウントを作成する

作成した リソース グループ を使用して、 ストレージ アカウントを作成します。 <msdocs-rg-0000000>は、前の手順で作成したリソース グループの名前に置き換えます。 ストレージ アカウント 名には、小文字と数字のみを含めることができます。

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="westus2"
resourceGroup="<msdocs-rg-0000000>"
storageAccount="msdocssa$randomIdentifier"

# Create the storage account
echo "Creating storage account $storageAccount in resource group $resourceGroup"
az storage account create --name $storageAccount \
                          --resource-group $resourceGroup \
                          --location $location \
                          --sku Standard_RAGRS \
                          --kind StorageV2 \
                          --output json

ヒント

バックスラッシュ (\) は Bash行継続文字です。 これにより、読みやすくするために、長いコマンドを複数の行に分割できます。

手順 5: リソースの作成を確認する

Azure CLI では、ほとんどの Azure コマンド グループに対して、リソースの詳細を取得するためのlistコマンドとshow コマンドが用意されています。

  1. 新しい ストレージ アカウント が作成されたことを確認します。

    az storage account list
    

    より簡潔な情報を取得するには、出力を単純なテーブルとして書式設定します。

    az storage account list --output table
    
  2. 複数の ストレージ アカウントがある場合は、 --query パラメーターを使用して戻り値をフィルター処理します。

    # Get a list of all storage accounts created in the last 30 days
    saDate=$(date +%F -d "-30days")
    az storage account list --resource-group <msdocs-rg-00000000> \
        --query "[?creationTime >='$saDate'].{saName:name, saID: id, sku: sku.name}"
    
    # Get a list of all storage accounts that contain the word 'msdocs'
    az storage account list --resource-group $rgName \
        --query "[?contains(name, 'msdocs')].{saName:name, saKind:kind, saPrimaryLocation:primaryLocation, createdTimeStamp:creationTime}" \
        --output table
    

JSON 要求の標準クエリ言語である --query を使用して、パラメーター文字列を書式設定します。 詳細については、 JMESPath チュートリアルを参照してください。

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

ランダム ID を使用し、これらのモジュール手順を実行すると、削除できるテスト リソース グループ が作成されます。 Azure リソースをクリーンアップする最も簡単な方法は、リソース グループを削除することです。 ただし、 リソース グループを削除する場合は、グループ内のすべてのオブジェクトを削除するため、正しい リソース グループ 名を削除することが重要です。

# Get a list of resource groups in the active subscription
az group list --output table

# Delete a resource group and do not wait for the operation to finish
az group delete --name <msdocs-rg-0000000> --no-wait

ヒント

--no-wait パラメーターを使用すると、削除操作をバックグラウンドで実行でき、他のタスクのコマンド ラインが解放されます。

複雑なタスクや反復的なタスクは、手動で実行すると時間がかかり、エラーが発生しやすくなる場合があります。 多くの組織では、コストを削減し、間違いを回避するために、これらのタスクを自動化することを好みます。 Azure CLI スクリプトを使用して Azure リソースの作成を自動化することは、一度に 1 つずつ手動で作成するよりもはるかに効率的で信頼性が高くなります。