NTNX>日記

個人的な趣味による Nutanix Community Edition 日記。Japanese のみですみません。

Nutanix CE で Windows Sysprep と応答ファイルで AD ドメイン参加してみる。(acli 編)

Nutanix AHV では、VM を作成/クローンするときに、カスタム スクリプトとして Sysprep の応答ファイルを指定することができます。

前回は、GUI(Prism)を利用して、カスタム スクリプトによる Windows ゲスト OS の AD(Active Directory)ドメイン参加をためしました。

今回は、acli(CLI)同様の手順をためしてみます。環境は前回の投稿と同じで、ドメイン参加させる Windows VM (クローン元)も前回と同じものを使用しています。

応答ファイルの準備

前回と同じ応答ファイルのサンプルを使用しますが、今回は一時的に CVM でダウンロードしてから編集をします。

一時的に /tmp ディレクトリにダウンロードします。

 CVM$ curl -o /tmp/Unattend.xml https://gist.githubusercontent.com/gowatana/073717be9e82787dc1962ed8c3953d06/raw/Unattend.xml 

コンピュータ名、パスワード指定を編集します。

CVM$ cp /tmp/Unattend.xml /tmp/win-2016-03.xml
CVM$ vi /tmp/win-2016-03.xml

編集箇所は下記です。

CVM$ diff /tmp/Unattend.xml /tmp/win-2016-03.xml
7c7
< <ComputerName>*</ComputerName>
---
> <ComputerName>win-2016-03</ComputerName>
17c17
< <Password>パスワード</Password>
---
> <Password>nutanix/4u</Password>
32c32
< <Value>パスワード</Value>
---
> <Value>nutanix/4u</Value>

vi エディタではなく、sed などで編集することもできます。

CVM$ cp /tmp/Unattend.xml /tmp/win-2016-03.xml
CVM$ sed -i 's@<ComputerName>.*@<ComputerName>win-2016-03</ComputerName>@' /tmp/win-2016-03.xml
CVM$ sed -i 's@<Password>パスワード</Password>@<Password>nutanix/4u</Password>@' /tmp/win-2016-03.xml
CVM$ sed -i 's@<Value>パスワード</Value>@<Value>nutanix/4u</Value>@' /tmp/win-2016-03.xml

応答ファイルを指定しつつ、VM をクローンします。

CVM$ acli uhura.vm.clone_with_customize win-2016-03 container=ctr-01 num_vcpus=1 memory=4G clone_from_vm=win-2016-01 sysprep_config_path=file:///tmp/win-2016-03.xml
win-2016-03: pending
win-2016-03: complete

VM を起動します。

CVM$ acli vm.on win-2016-03
win-2016-03: pending
win-2016-03: complete

Prism で VM のコンソールを開き、Windows ゲスト OS の自動処理を待ちます。処理が終わると、Windows はドメイン参加された状態になるはずです。

f:id:gowatana:20190902075203p:plain

ちなみに、この VM のネットワーク設定には、vNIC に割り当てられている仮想ネットワークの IPAM を利用しています。仮想ネットワークの割り当ては、クローン元の VM のものをそのまま引き継いでいます。

CVM$ acli vm.nic_list win-2016-03
Mac Address        IP Address  Network UUID                          Network Name
50:6b:8d:0f:ca:31  10.0.6.59   b4c5719e-0adc-4e74-99d3-9eba5abcbde4  vlan-6-ipam

今回は DHCP オプション 6 の DNS サーバの指定で、AD の DNS サーバを指定しています。今回の IPAM については、あらかじめ Prism で設定しておきました。

CVM$ acli net.get vlan-6-ipam
vlan-6-ipam {
  identifier: 6
  ip_config {
    dhcp_option_list {
      option_code: 6
      option_name: "dns"
      option_value: "10.0.6.201"
    }
    dhcp_server_address: "10.0.6.254"
    ip_pool_list {
      end_address: "10.0.6.99"
      start_address: "10.0.6.50"
    }
    network_address: "10.0.6.0"
    prefix_length: 24
    route_list {
      gateway: "10.0.6.1"
      network_address: "0.0.0.0"
      prefix_length: 0
    }
  }
  logical_timestamp: 17
  name: "vlan-6-ipam"
  type: "kBridged"
  uuid: "b4c5719e-0adc-4e74-99d3-9eba5abcbde4"
}

以上。

©2023 gowatana
クリエイティブ・コモンズ・ライセンスこの 作品 は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供されています。