Skip to main content
NetApp virtualization solutions
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

OpenNebula用のONTAP FCでLVM Thinを設定

共同作成者 sureshthoppay

Fibre Channelプロトコルを使用して、NetApp ONTAPと連携し、OpenNebulaホスト間で共有ストレージ用のLogical Volume Manager(LVM)データストアを構成します。この構成により、ハイパフォーマンスかつ低レイテンシのブロックレベルストレージ アクセスが可能になります。

仮想化管理者の初期タスク

FC 接続用の OpenNebula ホストを準備し、ストレージ管理者に必要な情報を収集するために、これらの初期タスクを完了してください。

  1. 2 つの HBA インターフェイスが使用可能であることを確認します。

  2. すべてのOpenNebulaホストにmultipath-toolsがインストールされており、起動時に開始されることを確認してください。

    Debian/Ubuntu
    apt list | grep multipath-tools
    # If need to install, execute the following line.
    apt-get install multipath-tools
    # If /etc/multipath.conf is not present, first make sure the multipathd service is started.
    systemctl enable --now multipathd
    RHEL/AlmaLinux
    dnf list installed | grep device-mapper-multipath
    # If need to install, execute the following line.
    dnf install device-mapper-multipath
    # If /etc/multipath.conf is not present, first make sure the multipathd service is started.
    systemctl enable --now multipathd
  3. すべてのOpenNebulaホストのWWPNを収集し、ストレージ管理者とファブリック ゾーニングを担当する管理者に提供します。

    cat /sys/class/fc_host/host*/port_name

ストレージ管理者のタスク

ONTAPを初めて使用する場合は、System Manager を使用すると使いやすくなります。

  1. FC プロトコルが有効になっている状態で SVM が使用可能であることを確認します。フォローする "ONTAP 9 ドキュメント"

  2. FC 専用のコントローラごとに 2 つの LIF を作成します。作成された FC LIF の WWPN アドレスを収集し、ファブリック ゾーニングを担当する管理者に提供します。

  3. igroupを作成し、ホストFCイニシエーターを追加します。通常、1つのOpenNebulaクラスタに対して1つのigroupが作成されます。ImageデータストアとSystemデータストアの両方をサポートするために、フロントエンドサーバーとハイパーバイザーホストを同じigroupに含めます。

  4. SVM 上に希望のサイズの LUN を作成し、前の手順で作成した igroup に提示します。ASAシステムのセキュリティ タブとAFF/ FASシステムのボリューム セキュリティ タブで、ランサムウェア対策保護が有効になっていることを確認します。

  5. LUN が作成されたことを仮想化管理者に通知します。

最終的な仮想化管理者のタスク

OpenNebulaでFC LUNを共有LVMデータストアとして構成するには、次のタスクを実行します。

  1. すべてのOpenNebulaサーバーにSSH接続し、各ホストで次の手順を実行します。

  2. `rescan-scsi-bus.sh`または `echo "- - -" > /sys/class/scsi_host/host*/scan`を実行して、SCSIバスを再スキャンし、新しいLUNを検出します。

  3. LUNがすべてのOpenNebulaホストで `lsblk -S`またはfdisk -lコマンドを使用して表示されることを確認します。作成されたLUNのデバイス名(例:sde、sdf)をメモします。

  4. `multipath -a /dev/<device_name>`を実行してデバイスをマルチパス構成に追加します。次に、 `multipath -r`を実行してマルチパス構成を再ロードします。 `multipath -ll`コマンドを実行してマルチパス構成を確認します。

  5. フロントエンド サーバーの 1 つに SSH で接続し、必要なデータストア タイプに基づいて構成ファイルを作成します。完全な属性リストについては、 "OpenNebula LVMドキュメント"を参照してください。サンプルファイルを以下に示します:

    バックアップ
    1. Resticの場合、

    $cat fc-restic.conf
    NAME = "Backup-Restic-FC"
    TYPE = "BACKUP_DS"
    
    DS_MAD = "restic"
    TM_MAD = "-"
    
    RESTIC_PASSWORD = "<restic_password>"
    RESTIC_SFTP_SERVER = "<backup server>"
    1. Rsyncの場合、

    $cat fc-rsync.conf
    NAME = "Backup-Rsync-FC"
    TYPE = "BACKUP_DS"
    
    DS_MAD = "rsync"
    TM_MAD = "-"
    
    RSYNC_USER = "<rsync_user>"
    RSYNC_HOST = "<backup server>"
    ファイル
    $cat fc-kernel.conf
    NAME = "File-Kernel-FC"
    TYPE = "FILE_DS"
    DS_MAD = "fs"
    TM_MAD = "local"
    SAFE_DIRS = "/var/tmp/files"
    イメージ
    $cat fc-image.conf
    NAME = "Image-FC01"
    TYPE = "IMAGE_DS"
    DS_MAD = "fs"
    TM_MAD = "fs_lvm_ssh"
    DISK_TYPE = "block"
    LVM_THIN_ENABLE = "yes"
    システム
    $cat fc-system.conf
    NAME = "System-FC02"
    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"
  6. 実行 onedatastore create <configuration file>。作成後に返されるデータストア ID をメモします。

    onedatastore 作成 fc-system.conf ID:107

  7. `vgcreate <vg_name> <multipath_device>`コマンドを使用して、FC LUNにボリュームグループを作成します。イメージデータストアの場合、ボリュームグループ名には任意の名前を付けることができます。システムデータストアの場合、ボリュームグループ名は `vg-one-<datastore id>`の形式にする必要があります。これは、OpenNebulaがシステムデータストアの正しいボリュームグループを識別するために必要です。バックアップ/ファイル/イメージデータストアを作成する場合は、次の手順に進みます。システムデータストアの場合は、ここで停止します。

  8. `lvcreate -l 100%FREE -n <logical volume name> <volume group name>`コマンドを使用して論理ボリュームシンプールを作成します。システムデータストアの場合、OpenNebulaは必要に応じてLVMシンプールを自動的に作成します。

  9. `mkfs.ext4 /dev/<volume group>/<logical volume>`コマンドを使用して、論理ボリューム上にファイルシステムを作成します。システムデータストアでは、ファイルシステムの作成は必要ありません。

  10. /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>
  11. `mount -a`または `systemctl reload autofs`コマンドを使用してデータストアをマウントします。

  12. マウントコマンドでデータストアがマウントされていることを確認し、 `onedatastore show <datastore_id>`コマンドでデータストアの容量を確認します。

  13. oneadmin ユーザーとグループがデータストア フォルダーを所有していることを確認します。 `chown -R oneadmin:oneadmin /var/lib/one/datastores/<datastore_id>`コマンドを使用して権限を調整します。