KVMでハマったところ
KVMでのハマった点をメモする. 以下の2つの現象が起きた.
- クローン後にホスト名を変更できない
- クローン後にDHCPが同じIPを排出する
環境
OS
仮想環境
- Compiled against library: libvirt 4.0.0
- Using library: libvirt 4.0.0
- Using API: QEMU 4.0.0
- Running hypervisor: QEMU 2.11.1
- virsh 4.0.0
前提
Ubuntu Server 18.04をインストール済みのイメージをvirt-cloneを用いてクローンした.
1. クローン後にホスト名を変更できない
問題
ホスト名を変更するhostnamectl
を用いても再起動すると元のホスト名に戻ってしまう.
解決
cloud-initの設定(/etc/cloud/cloud.cfg)を変更することで解決した.
# 前: preserve_hostname: false # 後: preserve_hostname: true
変更後hostnamectl
によりホスト名を変更して再起動.
2. クローン後にDHCPが同じIPを排出する
問題
virsh edit
でMACアドレスやUUIDが重複していないことを確認したにも関わらず,
DHCPでリースされるIPアドレスが重複してしまう.
解決
根本的な原因がわかっていないが,設定をリセットするコマンドであるvirt-sysprep
を利用することで,
別々のIPアドレスが振られるようになった.
virt-sysprep
を実行するために
ホスト側でlibguestfs-tools
をインストールする必要がある.
$ sudo apt install libguestfs-tools
インストール後,特定の設定をリセットする. もしかしたら無駄な設定もリセットしているかも.
$ sudo virt-sysprep -d [クローンしたマシン名] \ --enable dhcp-client, machine-id, net-hwaddr