>100 Views
July 05, 25
スライド概要
Windows Server & Cloud User Group Japan 第46回勉強会の資料です。
Windows Server 2025 で新しく利用可能となった、セキュリティ更新プログラムの適用時に再起動を最小限とするためのホットパッチ機能について紹介します。
インフラエンジニア
RE: Windows Server 2025 Hotpatch SCUGJ (wSCUGJ) 勉強会 #46 2025-07-05 Kazuki Takai Windows Server & Cloud User Group Japan
自己紹介 • たかい (Kazuki Takai) // X(旧 Twitter)@zhuky7 • 会社員 (某ISP勤務) • サービス基盤開発、技術調査・技術開発、ライセンス関連 • wSCUGJ (Windows Server & System Center User Group Japan) • Active Directory 勉強会 • 興味分野:統合管理、ID、自動化、セキュリティ、監視・運用 • Microsoft MVP - Cloud and Datacenter Management / Microsoft Azure • @IT:Windows Server 2025 連載
注意点 • 本セッションでは一般提供開始(GA)後のサービスについて取 り扱いますが、一部の機能や動作仕様については提供開始後も変 更となる可能性があります • 最新の仕様、動作、状況は Microsoft Learn のドキュメントや Microsoft の Blog、Tech Community などをご確認ください
Windows Server 2025 のホットパッチ • サブスクリプションサービスとして 2025/07/01 に一般提供開始 (GA)
https://www.microsoft.com/en-us/windows-server/blog/2025/04/24/tired-of-all-the-restarts-get-hotpatching-for-windows-server/ より引用
ホットパッチ • Windows Server 2022 Datacenter Azure Edition で Windows Server に導入された機能 • 専用の更新プログラムを利用することで、再起動 無しに更新プログラムの適用が可能 • メモリ上のコードを修正することで再起動を回避
Windows Server Datacenter Azure Edition • Windows Server 2022 以降で利用可能な Windows Server の Edition • Standard / Datacenter / Datacenter: Azure Edition • Azure Extended Network 等、Azure Edition の専用機能を利用可能 • (Microsoft Learn)Windows Server のエディションの比較 • ホットパッチを追加費用無しで利用可能 • Azure によるオーケストレーションが必要 • Azure 環境でのみ利用可能 • Azure 上の IaaS 仮想マシン • Azure Local(旧 Azure Stack HCI)上の仮想マシン
Windows Server 2025 におけるホットパッチ • 全てのエディションで利用可能 • Standard Edition / Datacenter Edition でも利用可能 • 物理ホスト / 仮想マシンの両方で利用可能 • オンプレミスでも Azure 以外のクラウド上でも利用可能 • 利用には Azure Arc による Azure への接続が必要 • Azure Arc enabled servers を使用 • Azure Arc Connected Machine Agent のインストールと構成(接続)が必要 • Azure Edition 以外では有償(月額サブスクリプション)
ホットパッチの対象 • 対象となる更新内容 • Windows OS のセキュリティ更新(計画内・定例更新) • 対象外となる更新 • 通常の Windows OS 月次更新(Monthly Rollup)に含まれる以下の内容 • 機能改善 • SSU (サービス スタック アップデート) • 定例外・計画外でリリースされる Windows OS のセキュリティ更新 • Windows OS 以外のセキュリティ更新 • .NET Framework や SQL Server のセキュリティ更新・その他の更新
ホットパッチの仕様 • オプトイン方式 • ホットパッチ専用の更新プログラムとして提供 • 通常の更新プログラムとは異なる KB 番号 • OS のセキュリティ更新のみ含まれる • 月次ロールアップに含まれる機能改善や SSU は含まれない • 通常の更新プログラム適用時とは適用後のビルド番号が異なる • 定期的にベースラインとなる更新プログラムの適用が必要 • 現状では、3か月に1回ベースラインの適用が必要 • ベースラインは通常の月次ロールアップと同一の更新プログラム(要再起動)
ベースラインとホットパッチ • ベースラインは 1月、4月、7月、10月に提供 • それ以外の月はホットパッチを提供 (通常時) 再起動不要 Hotpatch Planned Baseline 2025-04 2025-05 2025-06 2025-07 2025-08 2025-09 2025-10
ホットパッチ利用までのステップ 1. 前提条件の確認・構成 2. Azure Arc 対応サーバーのオンボード 3. ホットパッチの登録(ライセンス有効化) 4. ホットパッチの有効化(配信のオプトイン)
Demo
ホットパッチの前提条件 • 有効な Azure サブスクリプション • Azure Arc 対応サーバーのオンボード、管理 • オンボードに使用するリソースグループを事前に作成しておく • ホットパッチの月額課金(Azure の利用料として請求・支払) • 対象サーバーで仮想化ベースのセキュリティが有効 • Virtualization Based Security(VBS) • Connected Machine Agent で Azure に接続・登録する前に有 効化しておいた方が良い(待ち時間が少なくなる)
仮想化ベースのセキュリティ • システム情報(msinfo32)で状態を確認可能
仮想化ベースのセキュリティの有効化 • グループポリシーを使用(gpedit.msc) • コンピューターの構成 ¥ 管理用テンプレート ¥ システム ¥ Device Guard • 仮想化ベースのセキュリティを有効にする:有効 • プラットフォームのセキュリティ レベルを選択する • セキュアブート or セキュアブートとDMA保護 どちらかを選択 • 設定変更したら OS を再起動
仮想化ベースのセキュリティの有効化
仮想化ベースのセキュリティ 有効化後
Azure へのオンボード • Azure Arc 対応サーバーとして登録 • Azure Arc Connected Machine Agent をインストール • Azure Arc セットアップから実行可能 • それ以外の方法でも可(スクリプト等による大規模展開) • 構成ウィザードを利用する場合は、ウィザードの中で Azure へサインイン • Web ブラウザを用いたサインイン、又は デバイスログイン(デバイスコード) • サインインするアカウントに Azure Connected Machine のオンボード ロール(又は 同等の権限)が必要
Azure Connected Machine Onboarding Role
{
"assignableScopes": [
"/"
],
"description": "Can onboard Azure Connected Machines.",
"id": "/providers/Microsoft.Authorization/roleDefinitions/b64e21ea-ac4e-4cdf-9dc9-5b892992bee7",
"name": "b64e21ea-ac4e-4cdf-9dc9-5b892992bee7",
"permissions": [
{
"actions": [
"Microsoft.HybridCompute/machines/read",
"Microsoft.HybridCompute/machines/write",
"Microsoft.HybridCompute/settings/read",
"Microsoft.HybridCompute/settings/write",
"Microsoft.HybridCompute/gateways/read",
"Microsoft.HybridCompute/privateLinkScopes/read",
"Microsoft.GuestConfiguration/guestConfigurationAssignments/read",
"Microsoft.Insights/dataCollectionRuleAssociations/write",
"Microsoft.Insights/dataCollectionRuleAssociations/delete",
"Microsoft.Insights/dataCollectionRuleAssociations/read",
"Microsoft.HybridCompute/machines/addExtensions/action"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
],
"roleName": "Azure Connected Machine Onboarding",
"roleType": "BuiltInRole",
"type": "Microsoft.Authorization/roleDefinitions"
}
https://learn.microsoft.com/azure/role-based-access-control/built-in-roles/management-and-governance より引用
Connected Machine Agent のインストール
Connected Machine Agent の初期設定
Connected Machine Agent の初期設定
Connected Machine Agent の初期設定
Connected Machine Agent の初期設定
Connected Machine Agent の初期設定
(余談)オンボードが完了した段階で… • オンボードした Arc リソースに対して Defender for Cloud の保護プランが適用される場合、Azure Arc の拡張機能として Defender for Endpoint の エージェント(拡張機能)がインストールされる • Microsoft.Azure.AzureDefenderForServers.MDE.Windows • すぐには始まらない(少し時間がかかる)
ホットパッチの登録(ライセンス取得) • 概要ペインからホットパッチを選択 し、ホットパッチのライセンス取得 にチェックを入れて保存 • 仮想化ベースのセキュリティが有効 化されていない(Connected Machine Agent 経由で VBS が有 効だと認識できない)場合、ホット パッチを有効化できない
ホットパッチの登録(ライセンス取得)
ホットパッチ登録(ライセンス取得)すると… • ホットパッチのライセンス(サブスクリプション)が有効化 • Connected Machine Agent により、対象サーバー側でホット パッチの機能が有効化されたことを認識 • ホットパッチが有効であることを示すレジストリキーが生成 [HKEY_LOCAL_MACHINE¥SOFTWARE¥Microsoft¥Azure Connected Machine Agent¥Windows¥Licenses¥Features¥Hotpatch] "Subscription"=dword:00000001
ホットパッチ登録(ライセンス取得)すると… • Microsoft.HybridCompute.PayGo.Hotpatch のイベントが Azure 側から Connected Machine Agent へ通知される level=debug msg="Connect Agent: Incoming request: <Request_ID>" level=debug msg="Connect Agent: <Request_ID>: Incoming event subject: Microsoft.HybridCompute.PayGo.Hotpatch Delay: N.NN seconds" level=debug msg="Connect Agent: [PayGo Notification] Sending PayGo event to Notification Hub so it can be processed: Microsoft.HybridCompute.PayGo.Hotpatch" level=debug msg="Connect Agent: pushing event to subscriber on microsoft.hybridcompute.paygo" level=info msg="[PayGo Notification] Captured PayGo Notification event: Microsoft.HybridCompute.PayGo.Hotpatch from the cloud service" level=info msg="Updating Hotpatch enablement status: AllowRebootlessUpdates=1"
ホットパッチ登録(ライセンス取得)すると… • レジストリキーを生成し、ライセンスステータスを変更 level=info msg="The Hotpatch license status is different in App license and in registry: AppLicensed: true, Registry: false" level=info msg="Updating Hotpatch license status: Subscription=1" level=info msg="Retrieving Hotpatch enablement status: Status=1" level=info msg="Retrieving Hotpatch eligibility: Status: 1" level=info msg="LicenseProfileData is updated since last HeartBeat: {¥"licenseStatus¥":1,¥"licenseChannel¥":¥"PGS:TB¥",¥"productLicense¥": {¥"subscriptionStatus¥":¥"Enabled¥",¥"product¥":¥"WindowsServer¥",¥"features¥":[ {¥"feature¥":¥"Hotpatch¥",¥"subscriptionStatus¥":¥"Enabled¥"}, {¥"feature¥":¥"WindowsServerAzureArcMgmt¥",¥"subscriptionStatus¥":¥"Enabled¥"}]}}"
ホットパッチの有効化(配信オプトイン) • Azure Portal の概要ペインで、再度ホットパッチを選択 • 「ホットパッチを有効にする」トグルスイッチをオン
ホットパッチ配信を有効化すると… • Microsoft.HybridCompute.PayGo.HotpatchOptIn のイベン トが Azure 側から Connected Machine Agent へ通知される level=debug msg="Connect Agent: Incoming request: <REQUEST_ID>" level=debug msg="Connect Agent: <REQUEST_ID>: Incoming event subject: Microsoft.HybridCompute.PayGo.HotpatchOptIn Delay: N.NN seconds" level=debug msg="Connect Agent: [PayGo Notification] Sending PayGo event to Notification Hub so it can be processed: Microsoft.HybridCompute.PayGo.HotpatchOptIn" level=debug msg="Connect Agent: pushing event to subscriber on microsoft.hybridcompute.paygo" level=info msg="[PayGo Notification] Captured PayGo Notification event: Microsoft.HybridCompute.PayGo.HotpatchOptIn from the cloud service" level=info msg="Updating Hotpatch enablement status: AllowRebootlessUpdates=1" level=debug msg="[PayGo Notification] Wait for a few seconds before checking license status" level=info msg="[PayGo Notification] Sending a special heartbeat to update PayGo related data promptly on the cloud side" level=info msg="Update Agent and Cloud Data"
ホットパッチ配信を有効化すると… • この時点では、拡張機能の追加などは実施されない
定期更新の有効化 • Azure Portal の概要ペインで更新を選択し、定期更新を 有効化
定期更新の有効化
更新プログラムの確認 • Azure Portal の更新ペインで手動更新をトリガー • 「更新プログラムの確認」を選択し実行
更新プログラムの確認
更新プログラムの評価開始 • 評価の過程で WindowsOsUpdateExtension がインストールされる • Microsoft.SoftwareUpdateManagement.WindowsOsUpdateExtension • Azure Update Manager の拡張機能 • 詳細は Update Manager の Azure Arc 対応 VM 拡張機能のリリース ノート
更新プログラムの評価 • 拡張機能の状態メッセージから更新評価の結果を得る ことも可能 • 直前のオペレーションに対する応答が含まれる
更新プログラムの評価結果 • 「履歴」から確認可能
更新プログラムの評価結果
ホットパッチのインストール • ホットパッチは「CanRequestRestart」の設定で 配信される • 更新プログラムの適用ルールで、「再起動の可能 性がある更新プログラムを除外」すると、ホット パッチも除外されるので注意が必要 • カテゴリや KB 番号で明示的に対象・除外を設定した方が良い
さらに細かいお話(時間が無いので割愛)
お値段 • 1 コアあたり、月額 $1.5 • 32 コアのホストだと、約 7,000 円 / 月 • 再起動を避けられるのであれば安い?
その他(所感) • 2-3月頃よりも安定している • 適用にかかる時間が短くなった • インストールだけでなく、事前のチェックなど含め • 意図せず再起動することが無くなった
まとめ • Windows Server 2025 のホットパッチが GA • 全てのエディションで利用可能 • 1 コアあたり $1.5 / 月 • 更新プログラム適用の運用負荷低減に期待 • 困ったときは Connected Machine Agent のログ を見る