Oracle CloudでADドメインに参加しているWindowsのバージョンアップを試してみた(2)

# はじめに
[「Oracle CloudでADドメインに参加しているWindowsのバージョンアップを試してみた(1)」](https://qiita.com/cizumi/items/e98ab4539b97e6f5232b)で作成した環境を使用して、Oracle Cloud上に構築されたWindows OSのコンピュートをADのドメインに参加させてみます。
ドメインに参加したWindows Serverのバージョンアップを行い、ポリシーが適用されたままかどうかを確認します。
※あくまでも確認であり動作を保証するものではありません。

テストを開始する前に下記内容の準備ができていることを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1582128/a4e839c1-2149-ca59-91cc-e09b391e540d.png)

・Tokyo、Osaka、両ネットワークの疎通確認ができていること
・AD機能を有効化していること
・DNS機能を有効化していること
・Tokyo側のComputeにBlock Volumeを作成してアタッチしていること
・TokyoのComputeがOsakaのドメイン・コントローラのドメインに参加していること
　※上記の作業は本記事の対象外として、作成手順は省略します

**ADドメインに参加しているWindowsのバージョンアップに関して確認してみた点**
：Windows 2016のVM Computeを終了後、Windows 2019で同じホスト名/IPアドレスにより作成
　1. バージョンアップ前に使用していたBlock Volumeを新バージョンのVMにアタッチしてみる
　2. 新しいVM Computeを再度ドメインに参加させた際の状態を確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1582128/d65c4f59-b2f4-9304-a802-fff07f6b6a79.png)

# 1. バージョンアップ前に使用していたBlock Volumeを新バージョンのVMにアタッチしてみる
**テスト手順：**
1. Block Volumeの中に検証のためのファイル（＊.txt， ＊.png， ＊.exe ）をいくつか準備します。
1. 旧バージョンのComputeインスタンス（Windows 2016）から、1.のBlock VolumeをデタッチしてVMを終了します。
1. Window 2016と同一のホスト名とIPアドレスで新しいComputeインスタンス（Windows 2019）を作成します。
1. 旧バージョンで使用していたBlock Volumeを再アタッチします。
1. Block Volume中でのファイルの再利用の可否を確認します。

確認結果：
　Windows 2016からWindows 2019へのアップグレードでは前のバージョンで使用していたBlock Volumeの再利用が可能でした。

:::note warn
注意事項：OSバージョン・アップに伴いファイル・システムに変更が入る可能性があるため、すべてのバージョンで上記の手順によるボリュームの再利用が可能であるかどうかは不明です。
:::

# 2. 新しいVM Computeを再度ドメインに参加させた際の状態を確認
**確認手順**
1. ドメイン・コントローラでテスト用ポリシーをいくつか作成します。
ドメインのすべてのサーバーに適用するポリシー
特定のサーバーに適用するポリシー
1. WindowsVM1とWindowsVM2をドメインに参加させて、1．のポリシーが実施されたことを確認します。
確認してから、WindowsVM1(Windows 2016)を終了します。
1. 同じIPアドレスとホスト名を使用してWindows 2019のイメージで新たにVM1を作成します。
1. このWindowsVM1(Windows 2019)をドメインに参加させます。
1. このWindowsVM1(Windows 2019)に対してポリシーが実施されたことを確認します。

**検証用ポリシー例：**
Osaka Region(オンプレミス側としてシミュレート）のドメイン・コントローラでポリシーを設定

ドメイン・コントローラの中で下記種類のポリシーを準備します。
+ <font color="Purple">TestPolicy</font>：すべてのサーバーに適用するポリシー
+ <font color="Blue">VM1Policy</font>：特定のサーバー：WindowsVM1のみに適用するポリシー
+ <font color="Green">VM2Policy</font>：特定のサーバー：WindowsVM2のみに適用するポリシー

※ポリシーは、ホスト名によって<font color="Red">WMI Filter</font>を介して適切なVMに適用されます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1582128/392ef0de-8cf0-7d66-671f-23cd321705c2.png)

**VMにポリシーが適用されていることを確認：**
Tokyo側でそれぞれのVMにログインしてポリシーを取得されることを確認します。
共通のポリシー(CommonFirewalRule)と個別のポリシー(VM1-TestFirewall/VM2-TestFirewall)の適用が確認できます。

図：Windows Defender ファイアウォールでルールを確認
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1582128/56c8682e-b493-1063-3810-7a9b8bdfadf8.png)

**Windowsのバージョンアップを実施：**
Tokyo側のWIndowsVM1に対して、バージョン・アップを実施します。

::: note
事前準備（オプション）
バージョンアップを実行する前にWindowsVM1 カスタム・イメージ、および、Block Volumeのバックアップを作成します
:::

実施手順：
1. WindowsVM1にアタッチしているBlock Volumeをデタッチ
1. WindowsVM1を終了
1. Windows2019のイメージで新規のVMを作成　
※VMのホスト名とPrivate IPアドレスは旧VMで使用していたものに設定
1. VM作成完了後、新しいWindowsVM1にBlock Volumeを再アタッチ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1582128/ae3b3ec1-eae9-8778-045d-f5dd5f6819d8.png)

**Windowsのバージョン・アップ後の確認：**
新規VM(WindowsVM1)の作成完了後、再度ADドメインに参加します。
（ドメインに参加した後、インスタンスの再起動が必要です。）
インスタンスの再起動が完了したら、「VMにポリシーが適用されていることを確認：」の内容と同様にポリシーが適用されているかどうかを確認します。

**確認結果：**
同じIPアドレスとホスト名を使用して新バージョンのWindows Serverを作成し、ドメインに参加した結果、ドメイン・コントローラ側では特に作業を実施することなく、バージョン・アップされたVMに「Group Policy Management」で設定しているポリシーが自動適用されたことが確認できました。

::: note warn
注意事項：
※同じホスト名とIPアドレスが使用されていますが、Windowsバージョンアップ後のVM(WindowsVM1)は、実際にはADコントローラーに対して完全に新しいオブジェクトであり、以前に終了されたVMとは異なるサーバーとして認識されます。


※このテストでは、ホスト名/ IPアドレスに基づいてポリシーをカスタマイズするシナリオのみを検証しましたが、UUIDやSID、さらにはWindowsバージョンなどによって複雑なポリシーをカスタマイズする場合があり、このようなポリシーを新規のVMに実施できない可能性があります。
:::


Special Thanks：Mr. Hu