Azure AutomationとLog Analyticsを使って、Azure VMで適用されていない更新プログラムを管理できそうなので試してみました。
設定
Log Analyticsワークスペース作成
- 新たに作成するか、既存のものがあれがそれでよいです。手順は割愛します。
Automationアカウント設定
Azure VM追加
Azure以外のサーバー追加
AWS EC2で試しましたが、Log Analyticsワークスペースにインターネット経由もしくはExpressRoute PublicPeering経由で接続できれば問題ないはずです。
今回はLinuxで試します。Linuxの場合、対象サーバーで以下のコマンドを実行します。
wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh \
&& sh onboard_agent.sh -w [ワークスペースID] -s [主キー]
- しばらく時間を置いて、Automationアカウントの更新プログラムの管理にアクセスします。
更新プログラム確認
Windows
Linux
更新プログラム適用
事前事後スクリプトを実行することができます。大抵は適用の前にバックアップ取りたいはずなので、事前スクリプトでAzure Backup実行とかもできそうですね。別途試してみたいと思います。
更新プログラムの管理ページに戻り、[スケジュールされた更新プログラムの展開]タブに先程作成したスケジュールが追加されていればOKです。
※ポータルへの反映には時間が掛かりますが、実際にOSにログインして確認してみると最新化されていて、リブートも走っていました。