M

azure-resource-lookup

作成者 microsoft

azure-resource-lookup は、Azure Resource Graph を使って、サブスクリプションやリソース グループをまたいで Azure リソースを一覧・検索・確認できるスキルです。インベントリ作成、タグ分析、孤立リソースの発見、クロスサブスクリプション検索に最適です。デプロイ変更、コスト最適化、他クラウド向けには意図されていません。

スター0
お気に入り0
コメント0
カテゴリーReporting
インストールコマンド
npx skills add https://github.com/microsoft/azure-skills --skill azure-resource-lookup
概要

概要

azure-resource-lookup とは?

azure-resource-lookup は、サブスクリプションやリソース グループをまたいで、ほぼあらゆる種類の Azure リソースを一覧表示・検索・確認するためのレポーティング/ディスカバリ用スキルです。

Azure Resource Graph (ARG) を使って、Azure Resource Manager (ARM) のメタデータに対して高速なクロスサブスクリプション クエリを実行します。これにより、次のようなインベントリ系の質問に適しています。

  • "list websites"
  • "list virtual machines"
  • "list my VMs in subscription X"
  • "show storage accounts in this resource group"
  • "find container apps in region Y"
  • "what resources do I have?"

内部的には、azure-resource-lookup がこれらの意図を ARG クエリに変換することで、毎回 KQL を手書きすることなく、環境を構造化されたほぼリアルタイムなビューとして確認できます。

このスキルは誰向け?

azure-resource-lookup は、次のようなユーザーを想定しています。

  • 多数のサブスクリプションにまたがる Azure リソースの状況を素早く把握したい クラウド/プラットフォーム エンジニア
  • 運用ワークフローの一環として、特定のリソース種別・状態・タグを検索したい DevOps/SRE チーム
  • 必須タグや構成が適用されているかを確認したい セキュリティ/コンプライアンス チーム
  • Azure Portal を手作業で辿ることなく、「このアプリ/コンポーネントはどこで動いている?」「このデプロイでどんなリソースが作成された?」を簡単に知りたい 開発者

主なニーズが Azure 全体の レポーティング、インベントリ作成、リソース探索 であれば、このスキルは適した選択です。

azure-resource-lookup はどんな課題を解決する?

azure-resource-lookup は、次のような場面で役立ちます。

  • 一般的な種類のリソースを一覧したいとき
    • Virtual machine、web app、storage account、container app、database など。
  • スコープ別にリソースを表示したいとき
    • 特定のサブスクリプション、複数サブスクリプションのセット、特定のリソース グループに結果を絞り込み。
  • クロスサブスクリプション検索を行いたいとき
    • コンテキストを切り替えることなく、"show all storage accounts in all production subscriptions" のような質問に答えたい場合。
  • 孤立/未使用リソースを見つけたいとき
    • 未接続ディスク、未使用 NIC、アイドル状態の IP など、クリーンアップ候補を洗い出し。
  • タグの付与状況や命名ルールを確認したいとき
    • 必須タグが欠けているリソースを探したり、envownercostCenter などのタグ値ごとにリソースをグルーピング。
  • リソース インベントリを作成したいとき
    • ドキュメント化や監査目的で、リソース数を種類・リージョン・サブスクリプションごとに集計。
  • リソースの状態でフィルタリングしたいとき
    • Resource Graph にインデックスされたメタデータを使って、停止中・正常性に問題がある・プロビジョニング失敗などのリソースを抽出。

こうした用途は、既存の Azure インフラを 明確でクエリ可能な形で俯瞰 したいレポーティング/可視化のニーズとよく合致します。

このスキルが向かないケースは?

azure-resource-lookup は次の用途には 向いていません

  • リソースのデプロイや変更
    • Azure リソースの作成・更新・削除は行いません。
  • コスト分析や最適化
    • 利用料金の算出、適正サイズの提案、詳細なコスト内訳などは行いません。
  • 非 Azure クラウドやオンプレミス環境
    • Azure Resource Graph 経由で見える Azure Resource Manager リソース専用です。
  • リソース固有の深い運用ツール
    • たとえば、データベース スキーマ作業、Kubernetes オブジェクト管理、詳細な VM 設定変更など、専門性の高い操作は専用ツールや別スキルを利用してください。

Azure 全体の 運用可視性やインベントリ が目的なら azure-resource-lookup が有効です。一方で、構成変更、自動化、コスト分析 が主目的の場合は、他ツールと組み合わせて使うことをおすすめします。

使い方

前提条件

azure-resource-lookup をインストールして利用する前に、次を満たしていることを確認してください。

  • 対象サブスクリプションのリソースを読み取る権限を持つ Azure アカウント があること。
  • テナントで Azure Resource Graph が利用可能であること(多くの環境では既定で有効)。
  • エージェントや自動化環境から Azure に認証できること(環境に応じて az login、managed identity、service principal など)。

スキル本体は GitHub の microsoft/azure-skills リポジトリ内の skills/azure-resource-lookup にあり、このリポジトリのスキルをサポートする互換エージェント ランタイムに組み込めるよう設計されています。

インストール手順

1. azure-skills リポジトリとこのスキルを追加

エージェント ランタイムが npx skills(Microsoft 製 skills ツールなど)に対応している場合、GitHub から直接 azure-resource-lookup を追加できます。

npx skills add https://github.com/microsoft/azure-skills --skill azure-resource-lookup

このコマンドにより、次のことが行われます。

  • microsoft/azure-skills リポジトリがスキル ソースとして登録されます。
  • azure-resource-lookup のスキル定義と関連リファレンスがエージェント環境にインストールされます。

プラットフォーム固有の別の追加方法がある場合は、次を参照して設定してください。

  • Repository: https://github.com/microsoft/azure-skills
  • Skill path: skills/azure-resource-lookup

そのうえで、プラットフォーム側に記載されているスキル追加手順に従ってください。

2. スキル定義を確認

インストール後、azure-resource-lookup ディレクトリ内の SKILL.md を開きます。このファイルには次が含まれます。

  • 公式の 説明 と主なユースケース。
  • 同じリポジトリ内の他スキルと比べて、どのような場面でこのスキルを使うべきか のガイダンス。

この内容を確認し、スキルが自分のシナリオ(Azure 全体のリソース インベントリ/検索)に合っているかを判断してください。

3. エージェントの Azure アクセスを設定

エージェントが動作する環境から Azure Resource Graph にクエリを実行できるよう設定します。一般的なパターンは次のとおりです。

  • ローカル検証向けの 対話的ログイン(Azure CLI):
    az login
    
  • 非対話型自動化向けの service principal
    az login --service-principal -u <APP_ID> -p <PASSWORD_OR_CERT> --tenant <TENANT_ID>
    
  • Azure 上の対応サービスで動かす場合の managed identity

スキルはリソース メタデータを参照するだけなので、通常は対象サブスクリプションに対する Reader などの読み取り専用権限があれば十分です。

4. スキルをエージェントに接続

このリポジトリをサポートする多くのエージェント プラットフォームでは、スキルをインストールすると自動的に利用可能になります。設定 UI や JSON マニフェストで次を確認してください。

  • 有効化されたスキル一覧に azure-resource-lookup が含まれていること。
  • 前のステップで設定した Azure 認証情報に、このスキルもアクセスできること。

スキルとツール間の最終的な接続方法は、利用しているエージェント フレームワークのドキュメントを参照してください。

スキルで Azure リソースをクエリする

よく使う自然言語プロンプト

セットアップが完了すると、自然言語のプロンプトで azure-resource-lookup に指示できます。SKILL.md の意図に沿った例は次のとおりです。

  • リソース一覧

    • "List virtual machines in my production subscription."
    • "Show storage accounts in resource group rg-app-prod."
    • "List container apps in region westeurope."
  • タグベース検索

    • "Find resources tagged env=prod in all subscriptions."
    • "Which resources are missing the owner tag in subscription X?"
  • 孤立リソースの確認

    • "List unattached managed disks in all subscriptions."
    • "Show idle IP addresses that are not associated with any resource."
  • インベントリと件数集計

    • "Count all resources by type across all subscriptions."
    • "How many storage accounts are in each region?"
  • 状態ベースのクエリ

    • "Show virtual machines that are stopped."
    • "List resources in a failed provisioning state."

スキルはこれらの要求を Azure Resource Graph クエリに変換し、レポートや後続の分析に使いやすい構造化結果を返します。

Azure Resource Graph のクエリ パターンを活用する

さらに高度なシナリオに備えて、リポジトリ内の references/azure-resource-graph.md を参照してください。このファイルでは次の内容を解説しています。

  • 標準的な az graph query コマンド構文:
    az graph query -q "<KQL>" --query "data[].{col1:field1, col2:field2}" -o table
    
  • ResourcesResourceContainersHealthResources などの主要テーブル。
  • Resource Graph での KQL の基本(=~(大文字小文字を無視した比較)、mv-expandisempty()tostring() など)。
  • 次のような実践的なインベントリ パターン:
    • リソースを種類別に集計する。
    • リソースを location ごとにグループ化する。

az graph query を自分で実行しない場合でも、これらのパターンを知っておくと、スキルが内部で何を行っているのか、戻り値をどう解釈すればよいかを理解しやすくなります。

ワークフローやレポートへの統合

azure-resource-lookup は読み取り専用のインベントリ/ディスカバリに特化しているため、次のような用途に自然に組み込めます。

  • 運用ダッシュボード – 日々のリソース数・カバレッジの把握のために、レポーティング ツールへ結果を取り込む。
  • ガバナンス/コンプライアンス チェック – 必須タグの欠落や禁止設定を定期的にスキャン。
  • クリーンアップ活動 – 削除ワークフロー(他ツール)を実行する前に、孤立ディスク、未使用 NIC、アイドル IP などを特定。
  • リリースおよび環境レビュー – デプロイ後に、各環境にどのリソースが存在しているかを検証。

このスキルはワークフロー全体の 情報レイヤー として位置付けると有効です。何がどこにどの状態で存在しているかを提示し、必要に応じて変更は別ツールで実施する、という役割分担ができます。

FAQ

azure-resource-lookup は内部で何に依存していますか?

azure-resource-lookup は、ARM リソース向けにインデックスされたメタデータ サービスである Azure Resource Graph を前提として設計されています。ARG スタイルのクエリを発行して、サブスクリプションやリソース グループをまたいだリソース検索・フィルタを高速に行い、その結果をエージェント経由で返します。

azure-resource-lookup で Azure リソースの作成や削除はできますか?

いいえ。azure-resource-lookup は 読み取り専用のディスカバリ/レポーティング スキル であり、Azure リソースのデプロイ、変更、削除を目的としていません。そうした作業には ARM/Bicep テンプレート、Terraform その他の自動化スキルなどのデプロイ ツールと組み合わせて利用してください。

このスキルは Azure 以外のクラウドにも対応していますか?

対応していません。azure-resource-lookup は Azure Resource Graph 経由で取得できる Azure Resource Manager リソース専用です。AWS、GCP、オンプレミス環境のクエリには対応していません。

azure-resource-lookup はコスト分析や最適化に使えますか?

直接的には想定されていません。インベントリ情報はコスト分析の前提データとして活用できますが、このスキル自体は コスト最適化向けには設計されていません。料金計算、見積もり、リソースの適正サイズ提案などは提供していません。

このスキルを使うのに必要な権限は?

クエリ対象のサブスクリプションやリソース グループに対して、少なくとも 読み取り権限(例: Reader ロール)が必要です。azure-resource-lookup は Resource Graph を通じた読み取り専用アクセスのみ行うため、通常はそれ以上の高い権限は不要です。

Azure Portal のリソース検索と比べて何が違いますか?

Azure Portal にはインタラクティブな検索/フィルタ機能があります。一方、azure-resource-lookup には次の特徴があります。

  • 複数サブスクリプションにまたがる スクリプト化しやすく再現性の高いクエリ
  • エージェントやワークフローが自動処理しやすい 構造化出力
  • 毎回 KQL を手書きしなくても済む 自然言語ベースの入口

特に、都度の手作業検索ではなく、一貫した自動インベントリ/ディスカバリを行いたい場合に価値が高くなります。

もっとクエリの例を見たい場合は?

microsoft/azure-skills リポジトリ内の azure-resource-lookup ディレクトリで次のファイルを参照してください。

  • 高レベルな動作と利用方法を解説した SKILL.md
  • 具体的な Azure Resource Graph クエリ パターンと KQL のコツをまとめた references/azure-resource-graph.md

これらの例を参考に、スキル経由でどのような質問ができるか、また自分のニーズに合わせてどのように拡張できるかを検討してください。

別のスキルを選ぶべきなのはどんなとき?

次のようなニーズがある場合は、別のスキルを追加で利用するか、切り替えを検討してください。

  • インフラの変更(リソースの作成・更新・削除・スケール)。
  • リソース内部の ワークロード管理(アプリケーション デプロイ、データベース スキーマ、Kubernetes オブジェクトなど)。
  • メタデータレベルを超えた、詳細な コスト/パフォーマンス/セキュリティ分析

そのようなケースでは、azure-resource-lookup をディスカバリとインベントリ用途に使い、その後のステップを専用のデプロイ、モニタリング、セキュリティ ツールに引き継ぐ形で組み合わせてください。

評価とレビュー

まだ評価がありません
レビューを投稿
このスキルの評価やコメントを投稿するにはサインインしてください。
G
0/10000
新着レビュー
保存中...