OpenNebula用のONTAP iSCSIでLVM Thinを構成
iSCSIプロトコルを使用して、NetApp ONTAPと連携し、OpenNebulaホスト間で共有ストレージ用のLogical Volume Manager(LVM)データストアを構成します。この構成により、マルチパス対応の標準イーサネットネットワーク上でブロックレベルのストレージ アクセスが可能になります。
仮想化管理者の初期タスク
iSCSI接続用にOpenNebulaホストを準備し、ストレージ管理者に必要な情報を収集するために、これらの初期タスクを完了してください。
-
2 つの Linux VLAN インターフェイスが使用可能であることを確認します。
-
マルチパスツールとiSCSIイニシエーターユーティリティがすべてのOpenNebulaホストにインストールされ、起動時に起動することを確認します。
Debian/Ubuntuapt list | grep multipath-tools # If need to install, execute the following line. apt-get install multipath-tools open-iscsi # If /etc/multipath.conf is not present, first make sure the multipathd service is started. systemctl enable --now multipathd systemctl enable --now open-iscsiRHEL/AlmaLinuxdnf list installed | grep device-mapper-multipath # If need to install, execute the following line. dnf install device-mapper-multipath iscsi-initiator-utils # If /etc/multipath.conf is not present, first make sure the multipathd service is started. systemctl enable --now multipathd systemctl enable --now iscsid -
すべてのOpenNebulaホストのiSCSIホストIQNを収集し、ストレージ管理者に提供します。
cat /etc/iscsi/initiator.name
ONTAPを初めて使用する場合は、System Manager を使用すると使いやすくなります。
-
iSCSI プロトコルが有効になっている SVM が使用可能であることを確認します。フォローする "ONTAP 9 ドキュメント"。
-
コントローラごとに iSCSI 専用の LIF を 2 つ作成します。冗長性とマルチパス パフォーマンスを確保するには、コントローラごとに 2 つの LIF が推奨されます。OpenNebula ホストで設定された VLAN インターフェース上に LIF が作成されていることを確認します。パフォーマンス向上のため、ジャンボ フレーム(MTU 9000)が推奨されます。

-
LUNを作成し、ホストiSCSIイニシエーターに提示します。通常、1つのOpenNebulaクラスタに対して1つのigroupが作成されます。イメージデータストアとシステムデータストアの両方をサポートするために、フロントエンドサーバーとハイパーバイザーホストを同じigroup内に含めます。
-
LUN が作成されたことを仮想化管理者に通知します。
最終的な仮想化管理者のタスク
OpenNebulaでiSCSI LUNを共有LVMデータストアとして構成するには、次のタスクを完了します。
-
フロントエンド サーバーの 1 つに SSH で接続し、iSCSI データ LIF アドレスの 1 つを指定して、すべての iSCSI LIF ポータルを検出します。
iscsiadm -m discovery -t sendtargets -p <iscsi data lif address> iscsiadm -m node iscsiadm -m node -l iscsiadm -m session -
`rescan-scsi-bus.sh`または `echo "- - -" > /sys/class/scsi_host/host*/scan`を実行して、SCSIバスを再スキャンし、新しいLUNを検出します。
-
`lsblk -S`または fdisk -l コマンドを使用して、すべてのOpenNebulaホストでLUNが表示されることを確認します。
-
`iscsiadm -m session -P 3`を実行して、LUNとデバイス名のマッピングを取得します。
-
`multipath -a /dev/<device_name>`を実行してデバイスをマルチパス構成に追加します。次に、 `multipath -r`を実行してマルチパス構成を再ロードします。 `multipath -ll`コマンドを実行してマルチパス構成を確認します。
-
必要なデータストア タイプに基づいて構成ファイルを作成します。完全な属性リストについては、 "OpenNebula LVMドキュメント"を参照してください。サンプルファイルを以下に示します:
バックアップ-
Resticの場合、
$cat iscsi-restic.conf NAME = "Backup-Restic-iSCSI01" TYPE = "BACKUP_DS" DS_MAD = "restic" TM_MAD = "-" RESTIC_PASSWORD = "<restic_password>" RESTIC_SFTP_SERVER = "<backup server>"
-
Rsyncの場合、
$cat iscsi-rsync.conf NAME = "Backup-Rsync-iSCSI02" TYPE = "BACKUP_DS" DS_MAD = "rsync" TM_MAD = "-" RSYNC_USER = "<rsync_user>" RSYNC_HOST = "<backup server>"
ファイル$cat iscsi-kernel.conf NAME = "File-Kernel-iSCSI03" TYPE = "FILE_DS" DS_MAD = "fs" TM_MAD = "local" SAFE_DIRS = "/var/tmp/files"イメージ$cat iscsi-image.conf NAME = "Image-iSCSI04" TYPE = "IMAGE_DS" DS_MAD = "fs" TM_MAD = "fs_lvm_ssh" DISK_TYPE = "block" LVM_THIN_ENABLE = "yes"システム$cat iscsi-system.conf NAME = "System-iSCSI05" TYPE = "SYSTEM_DS" TM_MAD = "fs_lvm_ssh" DISK_TYPE = "block" BRIDGE_LIST = "<space-separated list of OpenNebula hosts>" # If LUN not presented to frontend hosts LVM_THIN_ENABLE = "yes" -
-
実行
onedatastore create <configuration file>。作成後に返されるデータストア ID をメモします。onedatastore create iscsi-system.conf ID:106
-
`vgcreate <vg_name> <multipath_device>`コマンドを使用して、iSCSI LUNにボリュームグループを作成します。イメージデータストアの場合、ボリュームグループ名には任意の名前を付けることができます。システムデータストアの場合、ボリュームグループ名は `vg-one-<datastore id>`の形式にする必要があります。これは、OpenNebulaがシステムデータストアの正しいボリュームグループを識別するために必要です。バックアップ/ファイル/イメージデータストアを作成する場合は、次の手順に進みます。システムデータストアの場合は、ここで停止します。
-
`lvcreate -l 100%FREE -n <logical volume name> <volume group name>`コマンドを使用して論理ボリュームシンプールを作成します。システムデータストアの場合、OpenNebulaは必要に応じてLVMシンプールを自動的に作成します。
-
`mkfs.ext4 /dev/<volume group>/<logical volume>`コマンドを使用して、論理ボリューム上にファイルシステムを作成します。システムデータストアでは、ファイルシステムの作成は必要ありません。
-
/etc/fstab または automount 設定を更新して、必要なマウント オプションでデータストアをマウントします。デフォルトのデータストアの場所は /var/lib/one/datastores とします。 `onedatastore show <datastore_id>`で検証できます。そうでない場合は、/etc/one/oned.conf の DATASTORE_LOCATION パラメータを確認してください。データストアの場所の下に<datastore_id>フォルダが存在することを確認してください。サンプル エントリを以下に示します:
/etc/fstab の使用/dev/<vg name>/<logical volume> /var/lib/one/datastores/<datastore_id> ext4 _netdev,noauto,x-systemd.automount,nofail 0 2自動マウントの使用/var/lib/one/datastores/<datastore_id> -fstype=ext4,_netdev,noauto,x-systemd.automount,nofail,rw :/dev/<vg name>/<logical volume> -
`mount -a`または `systemctl reload autofs`コマンドを使用してデータストアをマウントします。
-
マウントコマンドでデータストアがマウントされていることを確認し、 `onedatastore show <datastore_id>`コマンドでデータストアの容量を確認します。
-
oneadmin ユーザーとグループがデータストア フォルダーを所有していることを確認します。 `chown -R oneadmin:oneadmin /var/lib/one/datastores/<datastore_id>`コマンドを使用して権限を調整します。