ceph/doc/rbd/iscsi-initiator-esx.rst

106 lines
3.4 KiB
ReStructuredText

------------------------------
iSCSI Initiator for VMware ESX
------------------------------
**Prerequisite:**
- VMware ESX 6.5 or later using Virtual Machine compatibility 6.5 with VMFS 6.
**iSCSI Discovery and Multipath Device Setup:**
The following instructions will use the default vSphere web client and esxcli.
#. Enable Software iSCSI
.. image:: ../images/esx_web_client_storage_main.png
:align: center
Click on "Storage" from "Navigator", and select the "Adapters" tab.
From there right click "Configure iSCSI".
#. Set Initiator Name
.. image:: ../images/esx_config_iscsi_main.png
:align: center
If the initiator name in the "Name & alias" section is not the same name
used when creating the client during gwcli setup or the initiator name used
in the ansible client_connections client variable, then ssh to the ESX
host and run the following esxcli commands to change the name.
Get the adapter name for Software iSCSI:
::
> esxcli iscsi adapter list
> Adapter Driver State UID Description
> ------- --------- ------ ------------- ----------------------
> vmhba64 iscsi_vmk online iscsi.vmhba64 iSCSI Software Adapter
In this example the software iSCSI adapter is vmhba64 and the initiator
name is iqn.1994-05.com.redhat:rh7-client:
::
> esxcli iscsi adapter set -A vmhba64 -n iqn.1994-05.com.redhat:rh7-client
#. Setup CHAP
.. image:: ../images/esx_chap.png
:align: center
Expand the CHAP authentication section, select "Do not use CHAP unless
required by target" and enter the CHAP credentials used in the gwcli
auth command or ansible client_connections credentials variable.
The Mutual CHAP authentication section should have "Do not use CHAP"
selected.
Warning: There is a bug in the web client where the requested CHAP
settings are not always used initially. On the iSCSI gateway kernel
logs you will see the error:
::
> kernel: CHAP user or password not set for Initiator ACL
> kernel: Security negotiation failed.
> kernel: iSCSI Login negotiation failed.
To workaround this set the CHAP settings with the esxcli command. Here
authname is the username and secret is the password used in previous
examples:
::
> esxcli iscsi adapter auth chap set --direction=uni --authname=myiscsiusername --secret=myiscsipassword --level=discouraged -A vmhba64
#. Configure iSCSI Settings
.. image:: ../images/esx_iscsi_recov_timeout.png
:align: center
Expand Advanced settings and set the "RecoveryTimeout" to 25.
#. Set the discovery address
.. image:: ../images/esx_config_iscsi_main.png
:align: center
In the Dynamic targets section, click "Add dynamic target" and under
Addresses add one of the gateway IP addresses added during the iSCSI
gateway setup stage in the gwcli section or an IP set in the ansible
gateway_ip_list variable. Only one address needs to be added as the gateways
have been setup so all the iSCSI portals are returned during discovery.
Finally, click the "Save configuration" button. In the Devices tab, you
should see the RBD image.
The LUN should be automatically configured and using the ALUA SATP and
MRU PSP. Other SATPs and PSPs must not be used. This can be verified with
the esxcli command:
::
> esxcli storage nmp path list -d eui.your_devices_id