チュートリアル: Azure Automation を Event Grid および Microsoft Teams と統合するTutorial: Integrate Azure Automation with Event Grid and Microsoft Teams

このチュートリアルでは、以下の内容を学習します。In this tutorial, you learn how to:

  • Event Grid のサンプル Runbook をインポートする。Import an Event Grid sample runbook.
  • オプションの Microsoft Teams webhook を作成する。Create an optional Microsoft Teams webhook.
  • Runbook に対する webhook を作成する。Create a webhook for the runbook.
  • Event Grid のサブスクリプションを作成する。Create an Event Grid subscription.
  • Runbook をトリガーする VM を作成する。Create a VM that triggers the runbook.

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。If you don't have an Azure subscription, create a free account before you begin.

前提条件Prerequisites

重要

PowerShell からこの Azure 機能を使用するには、AzureRM モジュールをインストールする必要があります。Using this Azure feature from PowerShell requires the AzureRM module installed. これはもう新しい機能が追加されることのない古いモジュールであり、Windows PowerShell 5.1 でのみ使用可能です。This is an older module only available for Windows PowerShell 5.1 that no longer receives new features. 同じバージョンの PowerShell でインストールした場合、AzAzureRM のモジュールは同時に使用 "できません"。The Az and AzureRM modules are not compatible when installed for the same versions of PowerShell. 両方のバージョンが必要な場合:If you need both versions:

  1. PowerShell 5.1 セッションで Az モジュールをアンインストールしますUninstall the Az module from a PowerShell 5.1 session.
  2. PowerShell 5.1 セッションで AzureRM モジュールをインストールしますInstall the AzureRM module from a PowerShell 5.1 session.
  3. PowerShell Core 6.x 以降をダウンロードしてインストールしますDownload and install PowerShell Core 6.x or later.
  4. PowerShell Core セッションで Az モジュールをインストールしますInstall the Az module in a PowerShell Core session.

このチュートリアルを行うには、Azure Event Grid のサブスクリプションからトリガーされる Runbook を保持するために Azure Automation アカウントが必要です。To complete this tutorial, an Azure Automation account is required to hold the runbook that is triggered from the Azure Event Grid subscription.

Event Grid のサンプル Runbook をインポートするImport an Event Grid sample runbook

  1. お使いの Automation アカウントを選び、 [Runbook] ページを選びます。Select your Automation account, and select the Runbooks page.

    Runbook を選ぶ

  2. [ギャラリーを参照] ボタンを選びます。Select the Browse gallery button.

  3. Event Grid を検索し、 [Integrating Azure Automation with Event grid](Azure Automation と Event Grid の統合) を選びます。Search for Event Grid, and select Integrating Azure Automation with Event grid.

    ギャラリーの Runbook をインポートする

  4. [インポート] を選び、名前を「Watch-VMWrite」にします。Select Import and name it Watch-VMWrite.

  5. インポートされた後、 [編集] を選んで Runbook ソースを表示します。After it has imported, select Edit to view the runbook source.

  6. スクリプトの 74 行目を更新して Tags の代わりに Tag を使用してください。Update the line 74 in the script to use Tag instead of Tags.

    Update-AzureRmVM -ResourceGroupName $VMResourceGroup -VM $VM -Tag $Tag | Write-Verbose
    
  7. [発行] を選択します。Select the Publish button.

オプションの Microsoft Teams webhook を作成するCreate an optional Microsoft Teams webhook

  1. Microsoft Teams で、チャネル名の隣の [その他のオプション] を選び、 [コネクタ] を選びます。In Microsoft Teams, select More Options next to the channel name, and then select Connectors.

    Microsoft Teams の接続

  2. コネクタの一覧をスクロールして [Incoming Webhook](受信 webhook) に移動し、 [追加] を選びます。Scroll through the list of connectors to Incoming Webhook, and select Add.

  3. 名前に「AzureAutomationIntegration」と入力し、 [作成] を選びます。Enter AzureAutomationIntegration for the name, and select Create.

  4. Webhook URL をクリップボードにコピーして保存します。Copy the webhook URL to the clipboard, and save it. webhook の URL は、Microsoft Teams への情報の送信に使います。The webhook URL is used to send information to Microsoft Teams.

  5. [完了] を選んで webhook を保存します。Select Done to save the webhook.

Runbook に対する webhook を作成するCreate a webhook for the runbook

  1. Watch-VMWrite Runbook を開きます。Open the Watch-VMWrite runbook.

  2. [Webhook] を選び、 [Webhook の追加] ボタンを選びます。Select Webhooks, and select the Add Webhook button.

  3. 名前に「WatchVMEventGrid」と入力します。Enter WatchVMEventGrid for the name. URL をクリップボードにコピーして保存します。Copy the URL to the clipboard, and save it.

    webhook 名を構成する

  4. [パラメータと実行設定を構成する] を選び、 [CHANNELURL] に Microsoft Teams の webhook の URL を入力します。Select Configure parameters and run settings, and enter the Microsoft Teams webhook URL for CHANNELURL. [WEBHOOKDATA] は空白のままにします。Leave WEBHOOKDATA blank.

    webhook のパラメーターを構成する

  5. [作成] を選んで Automation Runbook の Webhook を作成します。Select Create to create the Automation runbook webhook.

Event Grid のサブスクリプションを作成するCreate an Event Grid subscription

  1. [Automation アカウント] 概要ページで、 [イベント グリッド] を選びます。On the Automation Account overview page, select Event grid.

    Event Grid の選択

  2. [+ イベント サブスクリプション] をクリックします。Click + Event Subscription.

  3. 次の情報を指定して、サブスクリプションを構成します。Configure the subscription with the following information:

    1. [トピックの種類][Azure サブスクリプション] を選びます。For Topic Type, select Azure Subscriptions.

    2. [すべてのイベントの種類を購読します] チェック ボックスをオフにします。Uncheck the Subscribe to all event types check box.

    3. 名前に「AzureAutomation」と入力します。Enter AzureAutomation for the name.

    4. [定義済みのイベントの種類] ボックスの一覧で、 [Resource Write Success](リソース書き込み成功) を除く、すべてのオプションのチェック ボックスをオフにします。In the Defined Event Types drop-down, uncheck all options except Resource Write Success.

      注意

      Azure Resource Manager は現在、作成と更新を区別していないため、 このチュートリアルを Azure サブスクリプションのすべての Microsoft.Resources.ResourceWriteSuccess イベントに対して実装すると大量の呼び出しが発生する可能性があります。Azure Resource Manager does not currently differentiate between Create and Update, so implementing this tutorial for all Microsoft.Resources.ResourceWriteSuccess events in your Azure Subscription could result in a high volume of calls.

    5. [エンドポイントの種類][Webhook] を選択します。For Endpoint Type, select Webhook.

    6. [エンドポイントの選択] をクリックします。Click Select an endpoint. 表示された [webhook の選択] ページで、Watch-VMWrite Runbook 用に作成した Webhook の URL を貼り付けます。On the Select Web Hook page that opens up, paste the webhook url you created for the Watch-VMWrite runbook.

    7. [フィルター] に、新しく作成された VM を検索するサブスクリプションとリソース グループを入力します。Under FILTERS, enter the subscription and resource group where you want to look for the new VMs created. 結果は次のようになります。/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachinesIt should look like: /subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachines

  4. [作成] を選び、Event Grid サブスクリプションを保存します。Select Create to save the Event Grid subscription.

Runbook をトリガーする VM を作成するCreate a VM that triggers the runbook

  1. Event Grid サブスクリプションのプレフィックス フィルターで指定したリソース グループに新しい VM を作成します。Create a new VM in the resource group you specified in the Event Grid subscription prefix filter.

  2. Watch-VMWrite Runbook が呼び出されて、新しいタグが VM に追加されます。The Watch-VMWrite runbook should be called and a new tag added to the VM.

    VM のタグ

  3. 新しいメッセージが Microsoft Teams のチャネルに送信されます。A new message is sent to the Microsoft Teams channel.

    Microsoft Teams の通知

次の手順Next steps

このチュートリアルでは、Event Grid と Automation の間の統合を設定しました。In this tutorial, you set up integration between Event Grid and Automation. 以下の方法について学習しました。You learned how to:

  • Event Grid のサンプル Runbook をインポートする。Import an Event Grid sample runbook.
  • オプションの Microsoft Teams webhook を作成する。Create an optional Microsoft Teams webhook.
  • Runbook に対する webhook を作成する。Create a webhook for the runbook.
  • Event Grid のサブスクリプションを作成する。Create an Event Grid subscription.
  • Runbook をトリガーする VM を作成する。Create a VM that triggers the runbook.