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"
}

以上。

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

Nutanix AHV では、VM を作成/クローンするときに、ゲスト OS の初回起動時に実行されるカスタムスクリプトを指定することができます。Linux の場合は cloud-init、Windows では、Sysprep と応答ファイルの仕組みが利用されています。

今回は、カスタム スクリプトで Windows ゲスト OS を AD(Active Directory)に参加させてみます。

今回の環境

  • Nutanix CE バージョン: 2019.02.11 LTS
  • AD: Windows Server 2016
  • AD ドメイン名: test.local
  • AD のアドレス: 10.0.6.201 (ドメイン コントローラと DNS は同居)
  • ドメイン参加するクライアント: Windows Server 2016
    ゲスト OS はインストールずみ。
  • Nutanix の IPAM を利用。
続きを読む

AHV の Image Service 登録で Linux DISK イメージが起動できない場合の対処例。

今回は、Image Service で ESXi から Nutanix CE / AHV に移行した Oracle Linux 7 (OL7)のブート トラブルの対処をしてみます。

AHV では、vDisk として VirtIO デバイスを利用します。そのため、VM 移行では、移行元でゲスト OS に virtio デバイスのドライバをインストールしておく必要があります。

AHV でサポートされている Linux OS では Linux カーネルに VirtIO ドライバが含まれているので、あらためてドライバをインストールをする必要はありません。しかし RHEL7 / CentOS7 などでは OS ブートのなかで読み込まれる initramfs ファイルに VirtIO ドライバが含まれないため、下記のようにブートに失敗して「dracut:/#」プロンプトになってしまいます。

そこで、AHV でこの状態になった OL7 を起動できるようにしてみます。

f:id:gowatana:20190724082248p:plain

続きを読む

Nutanix CE の AHV / CVM ホスト名を変更してみる。

デモ環境などで、AHV / CVM の名前をわかりやすいものに変更したい場合があり、Nutanix CE の AHV と CVM のホスト名を変更してみます。

今回は下記のように変更します。

  • CVM: NTNX-43457035-A-CVM → NTNX-CE-A-CVM
  • AHV: NTNX-43457035-A → NTNX-CE-A

Prism から見たホスト名変更前の状態です。

f:id:gowatana:20190627002600p:plain

続きを読む

Nutanix CE の REST API v2 で VM のタイムゾーン設定を確認してみる。

Nutanix CE で、REST API から VM のタイムゾーン設定を確認してみます。AHV ではゲスト OS の種類(Windows / Linux)ごとに VM のタイムゾーン設定を変更するケースがあるので、その時の確認に利用できそうかなと思います。

今回は、Nutanix 外部の Linux クライアントから curl と jq コマンドを利用しています。

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