カテゴリー
KVM

KVMでiSCSIストレージを使ってライブなマイグレーションする(3)

iSCSIイニシエータ兼NFSクライアント兼KVMホスト側の構成は以下の通りです。
インストール時にディレクトリが自動的に作成されます。
できるだけそれを流用したいので、
KVMをインストールして、iSCSIイニシエータの構成をして、NFSクライアントの構成をする、という順番で作業しました。
石橋を叩きながら、単純な構成から複雑な(依存関係という意味で)構成へ進めました。

# cat /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.1993-08.org.debian:01:6c1f28cf1fd3

# iscsiadm -m discovery -t sendtargets -p 172.16.1.90
172.16.1.90:3260,1 iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2

# iscsiadm -m node --login
Logging in to [iface: default, target: iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2, portal: 172.16.1.90,3260] (multiple)
Login to [iface: default, target: iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2, portal: 172.16.1.90,3260] successful.

# virsh pool-define-as --name iscsipool1 --type iscsi \
--source-host 172.16.1.90 \
--source-dev iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2 \
--target /dev/disk/by-path

# virsh pool-list --all
Name         State      Autostart
------------------------------------
iscsipool1   inactive   no

# virsh pool-start iscsipool1
Pool iscsipool1 started

root@zfs93:/etc/libvirt# virsh pool-autostart iscsipool1
Pool iscsipool1 marked as autostarted

# virsh pool-list
Name         State    Autostart
----------------------------------
iscsipool1   active   yes

# virsh pool-info iscsipool1
Name:           iscsipool1
UUID:           bddb637a-0a18-46e7-be7a-589b9dca5fd0
State:          running
Persistent:     yes
Autostart:      yes
Capacity:       5.00 TiB
Allocation:     5.00 TiB
Available:      0.00 B

# virsh vol-list iscsipool1
Name         Path
--------------------------------------------------------------------------------------------------------------------------
unit:0:0:0   /dev/disk/by-path/ip-172.16.1.90:3260-iscsi-iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2-lun-0
unit:0:0:1   /dev/disk/by-path/ip-172.16.1.90:3260-iscsi-iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2-lun-1
unit:0:0:2   /dev/disk/by-path/ip-172.16.1.90:3260-iscsi-iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2-lun-2
unit:0:0:3   /dev/disk/by-path/ip-172.16.1.90:3260-iscsi-iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2-lun-3
unit:0:0:4   /dev/disk/by-path/ip-172.16.1.90:3260-iscsi-iqn.2003-01.org.linux-iscsi.zfs-4c.x8664:sn.5d395c3181b2-lun-4

上記のプールを作った後で、排他制御の仕組みをオンにします。
その後で virtlockd を 止めて、NFSマウントして、start します。
簡単な構成から複雑な構成へとスパイラルに設定しています。

# diff /etc/libvirt/qemu.conf  /etc/libvirt/qemu.conf.org
658c658
< lock_manager = "lockd"
---
> #lock_manager = "lockd"

# diff /etc/libvirt/qemu-lockd.conf /etc/libvirt/qemu-lockd.conf.org
17c17
< require_lease_for_disks = 1
---
> #require_lease_for_disks = 1
39c39
< file_lockspace_dir = "/var/lib/libvirt/lockd/files"
---
> #file_lockspace_dir = "/var/lib/libvirt/lockd/files"
53c53
< lvm_lockspace_dir = "/var/lib/libvirt/lockd/lvmvolumes"
---
> #lvm_lockspace_dir = "/var/lib/libvirt/lockd/lvmvolumes"
67c67
< scsi_lockspace_dir = "/var/lib/libvirt/lockd/scsivolumes"
---
> #scsi_lockspace_dir = "/var/lib/libvirt/lockd/scsivolumes"

# systemctl restart virtlockd

virtlockdを止めて作業します。
単体で手動でマウントできることを確認します。
その後で手動でマウントしています。
元の状態に戻ったことを確認して、
最後に自動マウントを実行しています。
virtlockdを再実行します。

# systemctl stop virtlockd.socket
# mkdir -p /home/libvirt/lockd/scsivolumes
# mount -t nfs \
172.16.1.90:/home/libvirt/lockd/scsivolumes \
/var/lib/libvirt/lockd/scsivolumes
# umount /var/lib/libvirt/lockd/scsivolumes
# cat /etc/fstab | 抜粋
172.16.1.90:/home/libvirt/lockd/scsivolumes /var/lib/libvirt/lockd/scsivolumes nfs defaults,intr,hard 0 0
# mount -a
# mount | grep scsi
172.16.1.90:/home/libvirt/lockd/scsivolumes on /var/lib/libvirt/lockd/scsivolumes type nfs4 (rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=172.16.1.93,local_lock=none,addr=172.16.1.90)
# systemctl restart virtlockd.socket

コメントを残す

メールアドレスが公開されることはありません。