mirror of https://github.com/ceph/ceph
106 lines
3.4 KiB
ReStructuredText
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
|
|
|