OpenNebula 用に iSCSI で NetApp データストアを構成する
OpenNebulaデータストアを、AFFまたはFASシステムで実行されているNetApp ONTAPでiSCSIプロトコルを使用して設定します。この構成により、マルチパスをサポートする標準イーサネット ネットワーク経由でブロックレベルのストレージ アクセスが可能になります。このデータストア設定では、スナップショットやクローン作成などのネイティブONTAP機能を利用して、ストレージ効率とデータ保護を強化します。
仮想化管理者の初期タスク
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)が推奨されます。

-
igroupを作成し、ホストiSCSIイニシエーターを追加します。通常、1つのOpenNebulaクラスタに対して1つのigroupが作成されます。ImageデータストアとSystemデータストアの両方をサポートするために、フロントエンドサーバーとハイパーバイザーホストを同じigroupに含めます。
-
対象SVMにスコープされたONTAP REST APIアクセス権を持つONTAPロールとユーザーアカウントを作成します。このユーザーはOpenNebulaのNetAppドライバーによって使用されます。詳細については、"ユーザーとロールを操作する" ONTAPドキュメントを参照してください。仮想化構成タスクで使用するため、ユーザー名とパスワードを控えておいてください。
-
仮想化構成タスクで使用するために、次のリソースのSVM iSCSIターゲットIQNとUUIDを収集します:
-
SVM
-
使用するアグリゲート/階層
-
OpenNebulaホストを含むigroup
-
iSCSI ターゲット IQN (通常は SVM IQN と同じ)。仮想化管理者は、いずれかのOpenNebulaホストにログインして iSCSI ターゲットを検出した後、 `iscsiadm -m session`コマンドを使用してこの情報を取得できます。+
-
NETAPP_SVM="85c23687-d5d9-11f0-86c4-d039eac4d4b3" NETAPP_AGGREGATES="6e8f9995-42dd-400a-a440-646639dc5d0b" NETAPP_IGROUP="5ad9faf3-d62c-11f0-86c4-d039eac4d4b3" NETAPP_TARGET="iqn.1992-08.com.netapp:sn.85c23687d5d911f086c4d039eac4d4b3:vs.6"
TIP: System Manager displays the UUID in the URL when viewing the resource details.
最終的な仮想化管理者のタスク
OpenNebulaでiSCSIデータストアを設定するには、以下のタスクを実行します。
-
フロントエンド サーバーの 1 つに SSH で接続し、iSCSI データ LIF アドレスの 1 つを指定して、すべての iSCSI LIF ポータルを検出します。
iscsiadm -m discovery -t sendtargets -p <iscsi data lif address> iscsiadm -m node iscsiadm -m node -l -
必要なデータストア タイプに基づいて構成ファイルを作成します。完全な属性リストについては、 "OpenNebula NetApp SANドキュメント"を参照してください。サンプルファイルを以下に示します:
イメージ$cat netapp-image.conf NAME = "Image-NetApp-iSCSI" TYPE = "IMAGE_DS" DS_MAD = "netapp" TM_MAD = "netapp" DISK_TYPE = "BLOCK" NETAPP_HOST = "<ontap_cluster_ip>" NETAPP_USER = "<ontap_api_user>" NETAPP_PASS = "<ontap_api_password>" NETAPP_SVM = "<ontap_svm_uuid>" NETAPP_AGGREGATES = "<ontap_aggregate_uuid>" NETAPP_IGROUP = "<ontap_igroup_uuid>" NETAPP_TARGET = "<ontap_iscsi_target_iqn>" # Optional suffix to share SVM across multiple tenants NETAPP_SUFFIX = "t1"システム$cat netapp-system.conf NAME = "System-NetApp-iSCSI" TYPE = "SYSTEM_DS" TM_MAD = "netapp" DISK_TYPE = "BLOCK" NETAPP_HOST = "<ontap_cluster_ip>" NETAPP_USER = "<ontap_api_user>" NETAPP_PASS = "<ontap_api_password>" NETAPP_SVM = "<ontap_svm_uuid>" NETAPP_AGGREGATES = "<ontap_aggregate_uuid>" NETAPP_IGROUP = "<ontap_igroup_uuid>" NETAPP_TARGET = "<ontap_iscsi_target_iqn>" # Optional suffix to share SVM across multiple tenants NETAPP_SUFFIX = "t1" -
実行
onedatastore create <configuration file>。作成後に返されるデータストア ID をメモします。onedatastore create netapp-system.conf ID:105
-
`onedatastore show <datastore_id>`を実行してデータストアが正常に作成されたことを確認します。
-
イメージ データストアにアプリをダウンロードし、テンプレートを使用してVMを作成し、システム データストアにプロビジョニングします。
-
イメージおよび仮想マシン ディスク用にONTAP上に作成されたLUNを確認します。使用される命名規則は次のとおりです:
-
画像データストア:one_<datastore_id>_<image_id>_<suffix>(ボリューム)、one_<datastore_id>_<image_id>_<suffix>_lun(LUN)
-
システムデータストア:one_<vm_id>_disk_<disk_id>_<suffix>(ボリューム)、one_<datastore_id>_<vm_id>_disk_<disk_id>_<suffix>_lun(LUN)
例を表示

-