OpenStack Cinder NVMe/TCP マルチパス:NetApp ONTAP では 1 つのコントローラパスのみが表示されます
環境
- NetApp ONTAP(例:9.17.1P6、AFF-C250)
- NetApp ONTAP NVMe/TCPユニファイドドライバを使用するOpenStack Cinder
- ネイティブNVMeマルチパスが有効になっているLinuxホスト
- NVMe/TCPにos-brickを使用するOpenStack環境(例:Platform9)
- 複数のNVMe/TCP LIFを持つマルチコントローラNetAppクラスタ
問題
OpenStack Cinderを使用してNetApp ONTAP NVMe/TCPボリュームをVMに接続する場合、コンピューティングノード上で自動的に確立されるNVMe/TCPパス/コントローラは1つだけです。その結果、デフォルトではマルチパスと冗長性は利用できません。追加のパスを確立するには、2つ目のLIFを手動で検出して接続する必要があります。
ログ出力例(cinder-volumeおよびos-brickから):
DEBUG cinder.volume.drivers.netapp.dataontap.nvme_library Initialize connection info: { 'driver_volume_type': 'nvmeof', 'data': { 'target_nqn': 'nqn.1992-08.com.netapp:...', 'host_nqn': 'nqn.2014-08.org.nvmexpress:uuid:...', 'portals': [('<nvme data lif ip1>', 4420, 'tcp')], 'vol_uuid': '...' } } DEBUG cinder.volume.manager Connection info returned from driver { 'target_nqn': 'nqn.1992-08.com.netapp:...', 'host_nqn': 'nqn.2014-08.org.nvmexpress:uuid:...', 'portals': [('<nvme data lif ip2>', 4420, 'tcp')], ... } DEBUG os_brick.initiator.connectors.nvmeof Found a valid portal at ('<nvme data lif ip1>', '4420', 'tcp', ...) DEBUG os_brick.initiator.connectors.nvmeof Skipping ('<nvme data lif ip2>', '4420', 'tcp', ...), not part of portals [...]
期待される: 両方のLIFが portals リストに返される必要があります。