クイック スタート:PowerShell を使用して Azure portal ダッシュボードを作成する
Azure portal では、1 つのダッシュボードで集中的に、お使いのクラウド リソースが整理して表示されます。 この記事では、Az.Portal PowerShell モジュールを使用してダッシュボードを作成するプロセスに焦点を当てます。 ダッシュボードの例では、作成した仮想マシン (VM) のパフォーマンスに加えて、一部の静的情報といくつかのリンクが表示されます。
前提条件
アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
ローカルで PowerShell を使用する場合は、Az PowerShell モジュールをインストールしたうえで、Connect-AzAccount コマンドレットを使用して自分の Azure アカウントに接続する必要があります。 Az PowerShell モジュールのインストールの詳細については、「Azure PowerShell のインストール」を参照してください。
Azure Cloud Shell
Azure では、ブラウザーを介して使用できる対話型のシェル環境、Azure Cloud Shell がホストされています。 Cloud Shell で Bash または PowerShell を使用して、Azure サービスを操作できます。 ローカル環境に何もインストールしなくても、Cloud Shell にプレインストールされているコマンドを使用して、この記事のコードを実行できます。
Azure Cloud Shell を開始するには、以下のようにします。
オプション | 例とリンク |
---|---|
コードまたはコマンド ブロックの右上隅にある [使ってみる] を選択します。 [使ってみる] を選択しても、コードまたはコマンドは Cloud Shell に自動的にはコピーされません。 | |
https://shell.azure.com に移動するか、[Cloud Shell を起動する] ボタンを選択して、ブラウザーで Cloud Shell を開きます。 | |
Azure portal の右上にあるメニュー バーの [Cloud Shell] ボタンを選択します。 |
Azure Cloud Shell を使用するには、以下のようにします。
Cloud Shell を開始します。
コード ブロック (またはコマンド ブロック) の [コピー] ボタンを選択し、コードまたはコマンドをコピーします。
Windows と Linux では Ctrl+Shift+V キーを選択し、macOS では Cmd+Shift+V キーを選択して、コードまたはコマンドを Cloud Shell セッションに貼り付けます。
Enter キーを選択して、コードまたはコマンドを実行します。
特定の Azure サブスクリプションを選択する
複数の Azure サブスクリプションをお持ちの場合は、リソースが課金の対象となる適切なサブスクリプションを選択してください。 Set-AzContext コマンドレットを使用して、特定のサブスクリプションを選択します。
Set-AzContext -SubscriptionId 00000000-0000-0000-0000-000000000000
変数の定義
ダッシュボードの例では、複数の情報が繰り返し使用されます。 この情報を格納する変数を作成しましょう。
# Name of resource group used throughout this article
$resourceGroupName = 'myResourceGroup'
# Azure region
$location = 'centralus'
# Dashboard Title
$dashboardTitle = 'Simple VM Dashboard'
# Dashboard Name
$dashboardName = $dashboardTitle -replace '\s'
# Your Azure Subscription ID
$subscriptionID = (Get-AzContext).Subscription.Id
# Name of test VM
$vmName = 'myVM1'
リソース グループを作成する
New-AzResourceGroup コマンドレットを使用して、Azure リソース グループを作成します。 リソース グループとは、複数の Azure リソースをまとめてデプロイ、管理する際の論理コンテナーです。
次の例では、$location
変数に指定されたリージョンに、$resourceGroupName
変数内の名前に基づいてリソース グループを作成します。
New-AzResourceGroup -Name $resourceGroupName -Location $location
仮想マシンの作成
ダッシュボードの例には、既存の VM が必要です。 次の手順に従って VM を作成します。
VM のログイン資格情報を変数に格納します。 パスワードは複雑なものにする必要があります。 これは新しいユーザー名とパスワードです (Azure へのサインインに使用するアカウントではありません)。 詳細については、ユーザー名の要件に関するページとパスワードの要件に関するページを参照してください。
$Cred = Get-Credential
VM を作成します。
$AzVmParams = @{
ResourceGroupName = $resourceGroupName
Name = $vmName
Location = $location
Credential = $Cred
}
New-AzVm @AzVmParams
これで VM のデプロイが開始されます。通常、完了するまでに数分かかります。 デプロイが完了したら、次のセクションに進みます。
ダッシュボード テンプレートをダウンロードする
Azure ダッシュボードはリソースであるため、JSON として表すことができます。 次のコードでは、サンプル ダッシュボードの JSON 表現がダウンロードされます。 詳細については、「Azure ダッシュボードの構造」を参照してください。
$myPortalDashboardTemplateUrl = 'https://raw.githubusercontent.com/Azure-Samples/azure-docs-powershell-samples/refs/heads/main/azure-portal/portal-dashboard-template-testvm.json'
$myPortalDashboardTemplatePath = "$HOME\portal-dashboard-template-testvm.json"
Invoke-WebRequest -Uri $myPortalDashboardTemplateUrl -OutFile $myPortalDashboardTemplatePath -UseBasicParsing
テンプレートのカスタマイズ
次のコードを実行して、ダウンロードしたテンプレートをカスタマイズします。
$Content = Get-Content -Path $myPortalDashboardTemplatePath -Raw
$Content = $Content -replace '<subscriptionID>', $subscriptionID
$Content = $Content -replace '<rgName>', $resourceGroupName
$Content = $Content -replace '<vmName>', $vmName
$Content = $Content -replace '<dashboardTitle>', $dashboardTitle
$Content = $Content -replace '<location>', $location
$Content | Out-File -FilePath $myPortalDashboardTemplatePath -Force
ダッシュボード テンプレートの構造の詳細については、「Microsoft portal ダッシュボード テンプレート リファレンス」をご覧ください。
ダッシュボード テンプレートをデプロイする
Az.Portal モジュールの一部である New-AzPortalDashboard
コマンドレットを使用して、PowerShell からテンプレートを直接デプロイできます。
$DashboardParams = @{
DashboardPath = $myPortalDashboardTemplatePath
ResourceGroupName = $resourceGroupName
DashboardName = $dashboardName
}
New-AzPortalDashboard @DashboardParams
デプロイされたリソースを確認する
ダッシュボードが正常に作成されたことを確認します。
Get-AzPortalDashboard -Name $dashboardName -ResourceGroupName $resourceGroupName
仮想マシンに関するデータを Azure portal のダッシュボード内で表示できることを確認します。
Azure portal のメニューで、[ダッシュボード] を選択します。
ダッシュボード ページで、 [Simple VM Dashboard](シンプル VM ダッシュボード) を選択します。
ダッシュボードを確認します。ここに示したものに似ているはずです。 一部のコンテンツは静的ですが、冒頭で作成した VM のパフォーマンスを示しているグラフもあります。
リソースをクリーンアップする
VM と関連付けられているダッシュボードを削除するには、それらが含まれているリソース グループを削除します。
注意事項
リソース グループを削除すると、それに含まれるすべてのリソースが削除されます。 リソース グループに仮想マシンやダッシュボードとは別のリソースが含まれている場合、それらのリソースも削除されます。
Remove-AzResourceGroup -Name $resourceGroupName
Remove-Item -Path "$HOME\portal-dashboard-template-testvm.json"
次のステップ
Az.Portal PowerShell モジュールに含まれるコマンドレットの詳細については、次を参照してください。