Azure Automationは、クラウドベースのIT管理・運用サービスで、インフラストラクチャの自動化を支援します。
その中でもHybrid Runbook Worker機能を使うと、クラウドのみならずオンプレミス環境の管理も可能です。
この機能は、Azure上で定義したRunbook(スクリプトの自動実行)をオンプレミス環境に配布し、自動実行するというものです。
本記事では、Hybrid Runbook Workerのセットアップ方法や活用例、オンプレミス管理を効率化するためのベストプラクティスについて解説します。
Hybrid Runbook Workerとは
Hybrid Runbook Workerは、Azure AutomationのRunbookをクラウドのみならずオンプレミス環境でも実行できるようにするための機能です。
これにより、Azure上のリソースとオンプレミスのリソースを一貫して管理できます。
例えば、オンプレミス環境でのファイル操作やサーバー監視、データベースのメンテナンス作業など、さまざまなシナリオで活用可能です。
主な機能
- オンプレミスとクラウドの一元管理:Azure Automationの管理画面で一元的にRunbookを管理・監視できます。
- スケジュール設定:定期的なジョブのスケジュールが可能です。
- PowerShellベースの柔軟なスクリプト:PowerShellスクリプトを活用して高度な管理を実現します。
Hybrid Runbook Workerのセットアップ
1. 前提条件の確認
Hybrid Runbook Workerのセットアップには以下が必要です。
- Azure Automationアカウント
- オンプレミス環境のWindows Server(Windows Server 2012以降)
- Azure Active Directoryのアクセス
2. Azure Automationアカウントの作成
Azureポータルにアクセスし、「Automationアカウント」を作成します。
- Azureポータルの「Automation アカウント」をクリックし、「+作成」からアカウントを新規作成します。
- アカウント名とリソースグループ、リージョンを設定して作成を完了します。
3. Hybrid Workerグループの作成
次に、Automationアカウントの設定でHybrid Workerグループを作成します。
- 作成したAutomationアカウント内の「ハイブリッドワーカーレーン」セクションをクリック。
- 「+ ハイブリッドワーカーレーン」を選択し、オンプレミスサーバーを登録します。
4. オンプレミス環境でHybrid Workerをインストール
オンプレミスのWindows ServerにAzure Automationのエージェントをインストールします。
- Azureエージェントをダウンロードし、インストールを開始します。
- インストール時に「ハイブリッドランブックワーカー」として登録するオプションを選択し、Automationアカウントにリンクします。
- インストールが完了すると、サーバーがHybrid Workerグループに登録されます。
5. Runbookの作成と実行
Azureポータルの「Runbook」セクションから新しいRunbookを作成し、PowerShellスクリプトを記述します。
- 例: 定期的にオンプレミスのログファイルをチェックし、エラーがあれば通知を送るスクリプト
実行と監視
RunbookはAutomationアカウント内で「即時実行」または「スケジュール実行」が可能です。
実行状況やエラーの監視はAzureポータルで行います。
活用シナリオとベストプラクティス
活用例1: サーバーヘルスチェックの自動化
Hybrid Runbook Workerを活用して、オンプレミスサーバーの状態監視を行います。
たとえば、CPUやメモリ使用率を定期的にチェックし、閾値を超えた場合にアラートを送信するRunbookを作成します。
活用例2: ファイルバックアップの自動化
Hybrid Runbook Workerを使い、オンプレミスのファイルサーバーのバックアップを定期的にAzureストレージにコピーすることができます。
ベストプラクティス
- セキュリティの確保:Hybrid Workerの実行ユーザーは、最小限の権限を持つように設定します。
- ロギングと監視:Runbookのログを記録し、Azure Monitorで監視を行います。
- スケジューリングの活用:実行頻度に合わせたスケジューリングを行い、システムへの負荷を軽減します。
演習問題
問題1: Hybrid Runbook Workerの基本構築
質問: Hybrid Runbook Workerを使用してオンプレミスサーバーのログファイルを監視するRunbookを作成するには、どのような手順を踏むべきですか?以下の手順を並べ替えてください。
- オンプレミスのサーバーにエージェントをインストールする
- AutomationアカウントをAzureで作成する
- Runbookに監視スクリプトを記述する
- Hybrid Workerグループを作成する
解答例:
正しい手順は次の通りです。
2 → 4 → 1 → 3
問題2: PowerShellスクリプトの実行
質問: Hybrid Runbook Workerを使い、オンプレミス環境の特定のディレクトリ内のファイルサイズを合計して表示するPowerShellスクリプトを書いてください。
解答例:
$directoryPath = "C:\logs"
$files = Get-ChildItem -Path $directoryPath -File
$totalSize = ($files | Measure-Object -Property Length -Sum).Sum
Write-Output "Total file size in $directoryPath: $totalSize bytes"
問題3: Hybrid Runbook Workerの実行監視
質問: Hybrid Runbook Workerが正常に実行されているかをAzureポータルで確認する方法を説明してください。
解答例:
- Azureポータルにログインし、「Automationアカウント」を開きます。
- 該当するAutomationアカウント内の「ジョブ」セクションを選択します。
- 実行中または完了したRunbookのステータスが一覧表示されるため、各ジョブのログを確認して正常に実行されたかをチェックします。
まとめ
Hybrid Runbook Workerを活用することで、Azureとオンプレミス環境を一元的に管理し、ITインフラストラクチャの効率的な運用が可能となります。
導入にあたっては、セキュリティや実行頻度に注意しながら、適切なスケジューリングと監視を行うことが成功のカギとなります。