Azure Resource Graph Explorer を使用すると、サブスクリプション、管理グループ、テナント全体にわたって、大規模なリソースに対してクエリを実行できます。
リソースに定期的にクエリを実行して特定のリソースまたは管理プロパティを確認し、結果に基づいて操作する必要がある場合は、Azure Logic Apps を利用できます。
このチュートリアルでは、以下の内容を学習します。
- 定期的に実行する予定の Azure Resource Graph クエリを記述する
- システム割り当てマネージド ID を使用して Azure ロジック アプリを作成する
- 特定のリソース、リソース グループ、およびサブスクリプションにアクセスするようにマネージド ID を設定する
- ロジック アプリを定期的に呼び出して Azure Resource Graph クエリの実行を自動化する
[前提条件]
このチュートリアルを完了するには、Azure サブスクリプションが必要です。 アカウントをお持ちでない場合は、開始する前に 無料アカウント を作成してください。
Azure Resource Graph クエリを記述する
定期的に実行する Azure Resource Graph クエリがある場合は、これを使用できます。 このチュートリアルでは、次のクエリを使用して、Virtual Machines の電源状態の概要を取得します。
Resources
| where type =~ 'microsoft.compute/virtualmachines'
| extend vmPowerState = tostring(properties.extended.instanceView.powerState.code)
| summarize count() by vmPowerState
詳細については、「 サンプル - 電源状態別に仮想マシンを集計する」を参照してください。
ロジック アプリを構成するときに、もう一度クエリを使用します。
ロジック アプリを作成する
ポータル メニューから [ Logic Apps] を選択するか、すべてのページの上部にある Azure 検索ボックスを使用して Logic Apps を検索して選択します。
画面の左上にある [追加 ] ボタンを選択し、ロジック アプリの作成に進みます。
ロジック アプリを作成するときは、[プランの種類] で [従量課金] を選択してください。
マネージド ID を設定する
新しいシステム割り当て済みのマネージドIDを作成する
Azure portal 内で、作成したロジック アプリに移動します。 ページの左側にある [ID] を 選択します。 次に、システム割り当て ID ボタンを選択し、状態を [オン] に設定して、[ 保存] を選択します。
マネージド ID にロールの割り当てを追加する
新しく作成されたマネージド ID がサブスクリプション、リソース グループ、およびリソース全体でクエリを実行できるようにするには、ロールの割り当てを使用してアクセス権を割り当てる必要があります。 マネージド ID にロールの割り当てを割り当てる方法の詳細については、「Azure ロールをマネージド ID に割り当てる」を参照してください
ロジック アプリの構成と実行
Azure portal 内のロジック アプリのコード ビューで、次を貼り付けます。
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"HTTP_2": {
"inputs": {
"authentication": {
"type": "ManagedServiceIdentity"
},
"body": {
"query": "Resources | where type =~ 'microsoft.compute/virtualmachines' | extend vmPowerState = tostring(properties.extended.instanceView.powerState.code) | summarize count() by vmPowerState"
},
"headers": {
"Content-Type": "application/json"
},
"method": "POST",
"queries": {
"api-version": "2021-03-01"
},
"uri": "https://management.azure.com/providers/Microsoft.ResourceGraph/resources"
},
"runAfter": {},
"type": "Http"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"Recurrence": {
"recurrence": {
"frequency": "Minute",
"interval": 1440
},
"type": "Recurrence"
}
}
},
"parameters": {}
}
次に、Azure portal 内でロジック アプリのデザイナー ビューに移動し、必要に応じてセットアップを変更します。
最後に、ロジック アプリを保存して実行します。
次のステップ
このチュートリアルでは、設定された間隔で ARG クエリ要求を自動化する Azure ロジック アプリを作成しました。 リソース グラフ言語の詳細については、クエリ言語の詳細ページに進み、Azure Resource Graph のその他のクエリを試してください。
ご不明な点がある場合は、お問い合わせください resourcegraphsupport@microsoft.com