Automation でエージェントベースの Windows Hybrid Runbook Worker をデプロイする

重要

Azure Automation エージェント ベースのユーザー Hybrid Runbook Worker (Windows と Linux) は 2024 年 8 月 31 日に廃止され、その日以降はサポートされません。 2024 年 8 月 31 日より前に、既存のエージェント ベースのユーザー Hybrid Runbook Worker の、拡張機能ベースの Worker への移行を、完了する必要があります。 さらに、2023 年 11 月 1 日からは、新しいエージェント ベースのハイブリッド worker を作成できなくなります。 詳細情報 を参照してください。

Azure Automation のユーザー Hybrid Runbook Worker 機能を使用すると、Azure または Azure 以外のマシン (Azure Arc 対応サーバーに登録されているサーバーを含む) 上で Runbook を直接実行することができます。 ロールをホストしているマシンまたはサーバーで、環境内のリソースに対して Runbook を直接実行して、それらのローカル リソースを管理できます。

Azure Automation によって Runbook が格納および管理された後、1 つ以上の選択されたマシンに配信されます。 この記事では、Windows マシンにユーザー Hybrid Runbook Worker をデプロイする方法、worker を削除する方法、および Hybrid Runbook Worker グループを削除する方法について説明します。 ユーザー Hybrid Runbook Worker については、「拡張機能ベースの Windows または Linux ユーザー Hybrid Runbook Worker を Automation にデプロイする」もご覧ください

Runbook Worker が正常にデプロイされたら、「Hybrid Runbook Worker での Runbook の実行」を参照して、オンプレミスのデータセンターや他のクラウド環境のプロセスを自動化するように Runbook を構成する方法を確認します。

Note

ハイブリッド Worker は、エージェント ベース (V1)拡張機能ベース (V2) の両方のプラットフォームと共存できます。 エージェント ベース (V1) を既に実行しているハイブリッド Worker に拡張機能ベース (V2) をインストールすると、グループ内に Hybrid Runbook Worker の 2 つのエントリが表示されます。 1 つはプラットフォーム拡張機能ベース (V2) で、もう 1 つはエージェント ベース (V1) です。 詳細情報 を参照してください。

前提条件

始める前に、以下のものを用意してください。

Log Analytics ワークスペース

Hybrid Runbook Worker ロールでは、Azure Monitor Log Analytics ワークスペースに依存してロールがインストールおよび構成されます。 Azure Resource ManagerPowerShellAzure portal のいずれかを使用して作成できます。

Azure Monitor Log Analytics ワークスペースがない場合は、ワークスペースを作成する前に、Azure Monitor ログの設計ガイダンスを確認してください。

Log Analytics エージェント

Hybrid Runbook Worker ロールには、サポートされている Windows オペレーティング システム用の Log Analytics エージェントが必要です。 Azure の外部でホストされているサーバーまたはマシンの場合、Azure Arc 対応サーバーを使用すれば Log Analytics エージェントをインストールできます。

サポートされている Windows オペレーティング システム

Hybrid Runbook Worker 機能では、次のオペレーティング システムがサポートされています。

  • Windows Server 2022 (Server Core を含む)
  • Windows Server 2019 (Server Core を含む)
  • Windows Server 2016、バージョン 1709 および 1803 (Server Core を除く)
  • Windows Server 2012、2012 R2
  • Windows Server 2008 SP2 (x64)、2008 R2
  • Windows 10 Enterprise (マルチセッションを含む) および Pro
  • Windows 8 Enterprise および Pro
  • Windows 7 SP1

Note

ハイブリッド worker 拡張機能は、OS ベンダーのサポート タイムラインに従います。

最小要件

Windows システムおよびユーザー Hybrid Runbook Worker の最小要件は次のようになります。

  • Windows PowerShell 5.1 (WMF 5.1 をダウンロードする)。 PowerShell Core はサポートされていません。
  • .NET Framework 4.6.2 以降。
  • 2 コア
  • 4 GB の RAM
  • ポート 443 (送信)

ネットワーク構成

Hybrid Runbook Worker のネットワーク要件については、ネットワークの構成に関するページを参照してください。

Hybrid Runbook Worker グループへのマシンの追加

ご利用の Automation アカウントのいずれか 1 つの Hybrid Runbook Worker グループに worker マシンを追加できます。 Update Management によって管理されているシステム Hybrid Runbook Worker をホストしているマシンの場合は、Hybrid Runbook Worker グループに追加できます。 しかし、Update Management と Hybrid Runbook Worker グループ メンバーシップの両方に同じ Automation アカウントを使用する必要があります。

Note

Azure Automation Update Management を使用すると、Update Management に対して有効になっている Azure または Azure 以外のマシンに、システム Hybrid Runbook Worker が自動的にインストールされます。 ただし、"この worker は、Automation アカウント内の Hybrid Runbook Worker グループには登録されません"。 これらのマシン上で Runbook を実行するには、それを Hybrid Runbook Worker グループに追加する必要があります。 それをグループに追加するには、「手動デプロイ」セクションの手順 6 に従ってください。

Azure Automation State Configuration による管理のための有効化

Azure Automation State Configuration による管理のためのマシンの有効化については、Azure Automation State Configuration による管理のためのマシンの有効化に関する記事を参照してください。

Note

Hybrid Runbook Worker ロールをサポートするマシンの構成を Desired State Configuration (DSC) を使用して管理するには、マシンを DSC ノードとして追加する必要があります。

インストール オプション

Windows ユーザー Hybrid Runbook Worker をインストールして構成するには、次の方法のいずれかを使用します。

  • 1 つ以上の Windows マシンの構成プロセスを完全に自動化するには、提供された PowerShell スクリプトを使用します。 データセンターまたは他のクラウド環境のマシンの場合、この方法をお勧めします。
  • Automation ソリューションを手動でインポートし、Windows 用の Log Analytics エージェントをインストールして、マシン上で worker ロールを構成します。
  • エージェント ベースのハイブリッド worker では、MMA プロキシ設定が使用されます。 ログ分析拡張機能 (MMA) のインストール時には、プロキシ設定を渡す必要があり、この設定は、VM 上の MMA 構成 (レジストリ) の下に格納されます。

自動化されたデプロイ

Hybrid Runbook Worker を自動的にデプロイするには、2 つの方法があります。 Runbook を Azure portal の Runbook ギャラリーからインポートして実行するか、PowerShell ギャラリーから手動でスクリプトをダウンロードすることができます。

インポートの手順の詳細については、「Azure portal を使用して GitHub から Runbook をインポートする」をご覧ください。 インポートする Runbook の名前は、Create Automation Windows HybridWorker です。

Runbook では、次のパラメーターが使用されます。

パラメーター Status 説明
Location Mandatory スクリプトが実行される Automation アカウントの場所。
ResourceGroupName Mandatory Automation アカウントのリソース グループ。
AccountName Mandatory Hybrid Run Worker が登録される Automation アカウントの名前。
CreateLA Mandatory true の場合、WorkspaceName の値を使用して Log Analytics ワークスペースを作成します。 false の場合、WorkspaceName の値は既存のワークスペースを参照する必要があります。
LAlocation オプション Log Analytics ワークスペースが作成される場所、または既に存在する場所。
WorkspaceName オプション 使用する Log Analytics ワークスペースの名前。
CreateVM Mandatory true の場合、新しい VM の名前として VMName の値を使用します。 false の場合、VMName を使用して既存の VM を検索し、登録します。
VMName オプション CreateVM の値に応じて作成または登録される仮想マシンの名前。
VMImage オプション 作成される VM イメージの名前。
VMlocation オプション 作成または登録される VM の場所。 この場所が指定されていない場合、LAlocation の値が使用されます。
RegisterHW Mandatory true の場合、ハイブリッド worker として VM を登録します。
WorkerGroupName Mandatory ハイブリッド worker グループの名前。

自動化されたこのデプロイ方法では、PowerShell スクリプト New-OnPremiseHybridWorker.ps1 を使用して、Windows Hybrid Runbook Worker ロールを自動化および構成します。 それによって次が実行されます。

  • 必要なモジュールをインストールする
  • Azure アカウントを使用してサインインする
  • 指定されたリソース グループと Automation アカウントが存在することを確認する
  • Automation アカウント属性への参照を作成する
  • Azure Monitor Log Analytics ワークスペースを作成する (指定されていない場合)
  • ワークスペースで Azure Automation ソリューションを有効にする
  • Windows 用 Log Analytics エージェントをダウンロードしてインストールする
  • マシンを Hybrid Runbook Worker として登録する

次の手順を実行して、スクリプトを使用して Windows マシンにロールをインストールします。

  1. PowerShell ギャラリーから New-OnPremiseHybridWorker.ps1 スクリプトをダウンロードします。 スクリプトをダウンロードしたら、ターゲット マシン上でコピーまたは実行します。 このスクリプトは次のパラメーターを使用します。

    パラメーター Status 説明
    AAResourceGroupName Mandatory Automation アカウントに関連付けられているリソース グループの名前。
    AutomationAccountName Mandatory Automation アカウントの名前。
    Credential オプション Azure 環境にログインするときに使用する資格情報。
    HybridGroupName Mandatory このシナリオをサポートしている Runbook のターゲットとして指定する Hybrid Runbook Worker グループの名前。
    OMSResourceGroupName オプション Log Analytics ワークスペース用のリソース グループの名前。 このリソース グループが指定されていない場合、AAResourceGroupName の値が使用されます。
    SubscriptionID Mandatory お使いの Automation アカウントに関連付けられている Azure サブスクリプションの識別子。
    TenantID オプション Automation アカウントに関連付けられているテナント組織の識別子。
    WorkspaceName オプション Log Analytics ワークスペース名。 Log Analytics ワークスペースがない場合は、スクリプトがこれを作成して構成します。
  2. 管理者特権の 64 ビット PowerShell コマンド プロンプトを開きます。

  3. PowerShell コマンド プロンプトから、ダウンロードしたスクリプトがあるフォルダーを参照します。 パラメーター AutomationAccountNameAAResourceGroupNameOMSResourceGroupNameHybridGroupNameSubscriptionID、および WorkspaceNameの値を変更します。 その後、スクリプトを実行します。

    スクリプトの実行後、Azure での認証が求められます。 サブスクリプション管理ロールのメンバーかつサブスクリプションの共同管理者であるアカウントを使用してサインインする必要があります。

    $NewOnPremiseHybridWorkerParameters = @{
      AutomationAccountName = <nameOfAutomationAccount>
      AAResourceGroupName   = <nameOfResourceGroup>
      OMSResourceGroupName  = <nameOfResourceGroup>
      HybridGroupName       = <nameOfHRWGroup>
      SubscriptionID        = <subscriptionId>
      WorkspaceName         = <nameOfLogAnalyticsWorkspace>
    }
    .\New-OnPremiseHybridWorker.ps1 @NewOnPremiseHybridWorkerParameters
    
  4. NuGet をインストールし、Azure 資格情報で認証するように求められます。 最新の NuGet バージョンをお持ちでない場合は、使用可能な NuGet ディストリビューション バージョンからダウンロードできます。

  5. スクリプトが終了したら、デプロイを確認します。 Automation アカウントの [Hybrid Runbook Worker のグループ] ページの [User hybrid runbook workers group]\(ユーザー Hybrid Runbook Worker グループ\) タブの下に、新しいグループとメンバーの人数が表示されます。 既存のグループの場合は、メンバーの数が増分されます。 そのページの一覧からグループを選択できます。左側のメニューで [ハイブリッド worker] を選択します。 [ハイブリッド worker] ページでは、グループの各メンバーの一覧を確認することができます。

手動での配置

Windows Hybrid Runbook Worker をインストールして構成するには、次の手順を実行します。

  1. 管理者特権での PowerShell コマンドプロンプトで、または Azure portal の Cloud Shell で次のコマンドを実行することにより、Log Analytics ワークスペース内で Azure Automation ソリューションを有効にします。

    Set-AzOperationalInsightsIntelligencePack -ResourceGroupName <resourceGroupName> -WorkspaceName <workspaceName> -IntelligencePackName "AzureAutomation" -Enabled $true
    
  2. ターゲット マシンに Log Analytics エージェントをデプロイします。

    • Azure VM の場合、Windows 用仮想マシン拡張機能を使用して、Windows 用 Log Analytics エージェントをインストールします。 この拡張機能では、Azure 仮想マシンに Log Analytics エージェントがインストールされ、仮想マシンが既存の Log Analytics ワークスペースに登録されます。 Azure Resource Manager テンプレート、PowerShell、または Azure Policy を使用すれば、"Linux または Windows VM 用の Log Analytics エージェントのデプロイ" という組み込みポリシー定義を割り当てることができます。 エージェントがインストールされたら、Automation アカウントの Hybrid Runbook Worker グループにマシンを追加できます。

    • Azure 以外のマシンの場合は、Azure Arc 対応サーバーを使用して Log Analytics エージェントをインストールできます。 Azure Arc 対応サーバーは、以下の方法を使用した Log Analytics エージェントのデプロイをサポートしています。

      • VM 拡張機能フレームワークの使用。

        Azure Arc 対応サーバーのこの機能を使用すると、Azure 以外の Windows や Linux のサーバーに、Log Analytics エージェントの VM 拡張機能をデプロイできます。 VM 拡張機能は、ハイブリッド コンピューターまたは Arc 対応サーバーで管理されているサーバーで、次の方法を使用して管理できます。

      • Azure Policy の使用。

      この方法を利用し、Azure Policy の "Log Analytics エージェントを Linux または Microsoft Azure Arc マシンにデプロイする" という組み込みポリシー定義を使用して、Arc 対応サーバーに Log Analytics エージェントがインストールされているかどうかを監査します。 エージェントがインストールされていない場合は、修復タスクを使用して自動的にそれがデプロイされます。 Azure Monitor for VMs を使用してマシンを監視する予定の場合は、代わりに Azure Monitor for VMs を有効にするというイニシアティブを使用して Log Analytics エージェントのインストールと構成を行います。

    Azure Policy を使用して、Windows または Linux 用の Log Analytics エージェントをインストールすることをお勧めします。

  3. エージェントがワークスペースに報告していることを確認します。

    Windows 用 Log Analytics エージェントにより、マシンが Azure Monitor Log Analytics ワークスペースに接続されます。 マシンにエージェントをインストールし、ワークスペースに接続すると、Hybrid Runbook Worker に必要なコンポーネントが自動的にダウンロードされます。

    エージェントがお使いの Log Analytics ワークスペースに正常に接続されたら、数分後に次のクエリを実行して、ワークスペースにハートビート データが送信されていることを確認できます。

    Heartbeat 
    | where Category == "Direct Agent"
    | where TimeGenerated > ago(30m)
    

    検索結果には、マシンのハートビート レコードが表示されます。これにより、エージェントがサービスに接続され、レポートが送信されていることが示されます。 既定では、各エージェントからその割り当て済みのワークスペースにハートビート レコードが転送されます。 エージェントのインストールとセットアップを完了するには、次の手順を使用します。

  4. Log Analytics エージェントをホストしているマシン上で Hybrid Runbook Worker のバージョンを確認し、C:\Program Files\Microsoft Monitoring Agent\Agent\AzureAutomation\ を参照して version サブフォルダーを確認します。 このフォルダーは、ワークスペースでソリューションが有効にされた後、数分後にマシン上に表示されます。

  5. Runbook 環境をインストールして、Azure Automation に接続する Log Analytics ワークスペースにレポートを送信して Automation ソリューションをインポートするようにエージェントを構成すると、そのソリューションによって HybridRegistration PowerShell モジュールがプッシュダウンされます。 このモジュールには、Add-HybridRunbookWorker コマンドレットが含まれています。 マシンに Runbook 環境をインストールして、Azure Automation に登録する場合は、このコマンドレットを使用します。

    管理者モードで PowerShell セッションを開き、次のコマンドを実行してモジュールをインポートします。

    cd "C:\Program Files\Microsoft Monitoring Agent\Agent\AzureAutomation\<version>\HybridRegistration"
    Import-Module .\HybridRegistration.psd1
    
  6. パラメーター UrlKey、および GroupName の値を指定して、Add-HybridRunbookWorker コマンドレットを実行します。

    Add-HybridRunbookWorker –GroupName <String> -Url <Url> -Key <String>
    

    パラメーター UrlKey に必要な情報は、Automation アカウントの [キー] ページから取得できます。 ページの左側にある [アカウントの設定] セクションで [キー] を選択します。

    キーの管理ページ

    • Url パラメーターには、[URL] の値をコピーします。

    • Key パラメーターには、[プライマリ アクセス キー] の値をコピーします。

    • GroupName パラメーターには、Hybrid Runbook Worker グループの名前を使用します。 Automation アカウントにこのグループが既に存在する場合は、現在のマシンがそれに追加されます。 このグループが存在しない場合は、追加されます。

    • 必要に応じて、Verbose パラメーターを設定して、インストールの詳細を取得します。

  7. コマンドが完了したら、デプロイを確認します。 Automation アカウントの [Hybrid Runbook Worker のグループ] ページの [User hybrid runbook workers group]\(ユーザー Hybrid Runbook Worker グループ\) タブの下に、新しいまたは既存のグループとメンバーの人数が表示されます。 既存のグループの場合は、メンバーの数が増分されます。 そのページの一覧からグループを選択できます。左側のメニューで [ハイブリッド worker] を選択します。 [ハイブリッド worker] ページでは、グループの各メンバーの一覧を確認することができます。

PowerShell モジュールをインストールする

Runbook は、Azure Automation 環境にインストールされているモジュールで定義されているアクティビティとコマンドレットをすべて使用できます。 これらのモジュールはオンプレミス マシンに自動的に配置されないため、手動でインストールする必要があります。 Azure モジュールは例外です。 このモジュールは既定でインストールされ、すべての Azure サービスのコマンドレットと Azure Automation のアクティビティにアクセスできます。

Hybrid Runbook Worker の主な目的はローカル リソースを管理することであるため、ほとんどの場合、これらのリソースをサポートするモジュール (特に PowerShellGet モジュール) をインストールする必要があります。 Windows PowerShell モジュールのインストールについては、「Windows PowerShell」を参照してください。

インストールされるモジュールは PSModulePath 環境変数によって参照されている場所に置き、ハイブリッド worker が自動的にインポートできるようにする必要があります。 詳細については、「PSModulePath にモジュールをインストールする」を参照してください。

Hybrid Runbook Worker を削除する

  1. 管理者モードで PowerShell セッションを開き、次のコマンドを実行します:

        Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\HybridRunbookWorker\<AutomationAccountID>\<HybridWorkerGroupName>" -Force -Verbose
    
  2. [プロセス オートメーション] で、 [ハイブリッド Worker グループ] を選択し、次に、ハイブリッド Worker グループを選択して、 [ハイブリッド Worker グループ] ページに移動します。

  3. [ハイブリッド Worker グループ] で、 [ハイブリッド Worker] を選択します。

  4. ハイブリッド Worker グループから削除するマシンの横にあるチェックボックスをオンにします。

  5. [削除] を選択して、エージェント ベースの Windows ハイブリッド worker を削除します。

    Note

    • Automation アカウントで Private Link を無効にした後、Hybrid Runbook worker が削除されるまでに最大 60 分かかることがあります。
    • ハイブリッド worker を削除した後、コンピューター上のハイブリッド worker 認証証明書は 45 分間有効です。

ハイブリッド worker グループを削除する

Hybrid Runbook Worker グループを削除するには、まず、グループのメンバーであるすべてのマシンから Hybrid Runbook Worker を削除する必要があります。 その後、次の手順を使用してグループを削除します。

  1. Azure portal で Automation アカウントを開きます。

  2. [プロセス オートメーション][ハイブリッド Worker グループ] を選択します。 削除するグループを選択します。 そのグループの [プロパティ] ページが表示されます。

    [プロパティ] ページ

  3. 選択したグループの [プロパティ] ページで、 [削除] を選択します。 ハイブリッド worker グループでハイブリッド worker として定義されているすべてのマシンを削除するように促す警告メッセージが表示されます。 グループに Worker が既に追加されている場合は、最初にグループから Worker を削除する必要があります。

  4. 操作を続行する場合は、 [はい] を選択します。

このプロセスが完了するまでに数秒かかる場合があります。 進行状況は、メニューの [通知] で追跡できます。

ハイブリッド worker グループとハイブリッド worker のロールのアクセス許可を管理する

カスタムの Azure Automation ロールを作成すると、ハイブリッド worker グループとハイブリッド worker に次のアクセス許可を付与できます。 Azure Automation カスタム役割を作成する方法の詳細については、「Azure カスタム役割」を参照してください

アクション 説明
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/read Hybrid Runbook Worker グループを読み取ります。
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/write Hybrid Runbook Worker グループを作成します。
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/delete Hybrid Runbook Worker グループを削除します。
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/hybridRunbookWorkers/read Hybrid Runbook Worker を読み取ります。
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/hybridRunbookWorkers/delete Hybrid Runbook Worker を削除します。

ハイブリッド worker のバージョンを検査する

エージェント ベースの Windows Hybrid Runbook Worker のバージョンを確認するには、次のパスに移動します。

C:\ProgramFiles\Microsoft Monitoring Agent\Agent\AzureAutomation\

AzureAutomation フォルダーには、サブフォルダーの名前としてバージョン番号を持つサブフォルダーがあります。

Log Analytics エージェントを最新バージョンに更新する

Azure Automation エージェントベースのユーザー Hybrid Runbook Worker (V1) には、ハイブリッド worker のインストール中に Log Analytics エージェント (MMA エージェントとも呼ばれます) が必要です。 セキュリティの脆弱性を軽減し、バグ修正の恩恵を受けるために、Log Analytics エージェントを最新バージョンに更新することをお勧めします。

10.20.18053 (バンドル) および 1.0.18053.0 (拡張機能) より前のバージョンの Log Analytics エージェントでは、以前の証明書処理方法が使用されるため推奨されません。 古いエージェントのハイブリッド worker は Azure に接続できず、これらのハイブリッド worker によって実行される Azure Automation ジョブは停止します。

次の手順に従って、Log Analytics エージェントを最新バージョンに更新する必要があります:

  1. Windows ハイブリッド worker の Log Analytics エージェントの現在のバージョンを確認します。インストール パス C:\ProgramFiles\Microsoft Monitoring Agent\Agent に移動し、HealthService.exe を右クリックして [プロパティ] を確認します。 [製品バージョン] フィールドには、Log Analytics エージェントのバージョン番号が表示されます。
  2. Log Analytics エージェントのバージョンが 10.20.18053 (バンドル) および 1.0.18053.0 (拡張機能) より前である場合は、これらのガイドラインに従って、最新バージョンの Windows Log Analytics エージェントにアップグレードします。

Note

アップグレード プロセス中にハイブリッド worker で実行されている Azure Automation ジョブはすべて停止する可能性があります。 Log Analytics エージェントのアップグレード中にジョブが実行またはスケジュールされていないことを確認します。

次のステップ