1========================= 2Fujitsu ETERNUS DX driver 3========================= 4 5Fujitsu ETERNUS DX driver provides FC and iSCSI support for 6ETERNUS DX S3 series. 7 8The driver performs volume operations by communicating with 9ETERNUS DX. It uses a CIM client in Python called PyWBEM 10to perform CIM operations over HTTP. 11 12You can specify RAID Group and Thin Provisioning Pool (TPP) 13in ETERNUS DX as a storage pool. 14 15System requirements 16~~~~~~~~~~~~~~~~~~~ 17 18Supported storages: 19 20* ETERNUS DX60 S3 21* ETERNUS DX100 S3/DX200 S3 22* ETERNUS DX500 S3/DX600 S3 23* ETERNUS DX8700 S3/DX8900 S3 24* ETERNUS DX200F 25 26Requirements: 27 28* Firmware version V10L30 or later is required. 29* The multipath environment with ETERNUS Multipath Driver is unsupported. 30* An Advanced Copy Feature license is required 31 to create a snapshot and a clone. 32 33Supported operations 34~~~~~~~~~~~~~~~~~~~~ 35 36* Create, delete, attach, and detach volumes. 37* Create, list, and delete volume snapshots. 38* Create a volume from a snapshot. 39* Copy an image to a volume. 40* Copy a volume to an image. 41* Clone a volume. 42* Extend a volume. (\*1) 43* Get volume statistics. 44 45(\*1): It is executable only when you use TPP as a storage pool. 46 47Preparation 48~~~~~~~~~~~ 49 50Package installation 51-------------------- 52 53Install the ``python-pywbem`` package for your distribution. 54 55ETERNUS DX setup 56---------------- 57 58Perform the following steps using ETERNUS Web GUI or ETERNUS CLI. 59 60.. note:: 61 * These following operations require an account that has the ``Admin`` role. 62 * For detailed operations, refer to ETERNUS Web GUI User's Guide or 63 ETERNUS CLI User's Guide for ETERNUS DX S3 series. 64 65#. Create an account for communication with cinder controller. 66 67#. Enable the SMI-S of ETERNUS DX. 68 69#. Register an Advanced Copy Feature license and configure copy table size. 70 71#. Create a storage pool for volumes. 72 73#. (Optional) If you want to create snapshots 74 on a different storage pool for volumes, 75 create a storage pool for snapshots. 76 77#. Create Snap Data Pool Volume (SDPV) to enable Snap Data Pool (SDP) for 78 ``create a snapshot``. 79 80#. Configure storage ports used for OpenStack. 81 82 - Set those storage ports to CA mode. 83 - Enable the host-affinity settings of those storage ports. 84 85 (ETERNUS CLI command for enabling host-affinity settings): 86 87 .. code-block:: console 88 89 CLI> set fc-parameters -host-affinity enable -port <CM#><CA#><Port#> 90 CLI> set iscsi-parameters -host-affinity enable -port <CM#><CA#><Port#> 91 92#. Ensure LAN connection between cinder controller and MNT port of ETERNUS DX 93 and SAN connection between Compute nodes and CA ports of ETERNUS DX. 94 95Configuration 96~~~~~~~~~~~~~ 97 98#. Add the following entries to ``/etc/cinder/cinder.conf``: 99 100 FC entries: 101 102 .. code-block:: ini 103 104 volume_driver = cinder.volume.drivers.fujitsu.eternus_dx_fc.FJDXFCDriver 105 cinder_eternus_config_file = /etc/cinder/eternus_dx.xml 106 107 iSCSI entries: 108 109 .. code-block:: ini 110 111 volume_driver = cinder.volume.drivers.fujitsu.eternus_dx_iscsi.FJDXISCSIDriver 112 cinder_eternus_config_file = /etc/cinder/eternus_dx.xml 113 114 If there is no description about ``cinder_eternus_config_file``, 115 then the parameter is set to default value 116 ``/etc/cinder/cinder_fujitsu_eternus_dx.xml``. 117 118#. Create a driver configuration file. 119 120 Create a driver configuration file in the file path specified 121 as ``cinder_eternus_config_file`` in ``cinder.conf``, 122 and add parameters to the file as below: 123 124 FC configuration: 125 126 .. code-block:: xml 127 128 <?xml version='1.0' encoding='UTF-8'?> 129 <FUJITSU> 130 <EternusIP>0.0.0.0</EternusIP> 131 <EternusPort>5988</EternusPort> 132 <EternusUser>smisuser</EternusUser> 133 <EternusPassword>smispassword</EternusPassword> 134 <EternusPool>raid5_0001</EternusPool> 135 <EternusSnapPool>raid5_0001</EternusSnapPool> 136 </FUJITSU> 137 138 iSCSI configuration: 139 140 .. code-block:: xml 141 142 <?xml version='1.0' encoding='UTF-8'?> 143 <FUJITSU> 144 <EternusIP>0.0.0.0</EternusIP> 145 <EternusPort>5988</EternusPort> 146 <EternusUser>smisuser</EternusUser> 147 <EternusPassword>smispassword</EternusPassword> 148 <EternusPool>raid5_0001</EternusPool> 149 <EternusSnapPool>raid5_0001</EternusSnapPool> 150 <EternusISCSIIP>1.1.1.1</EternusISCSIIP> 151 <EternusISCSIIP>1.1.1.2</EternusISCSIIP> 152 <EternusISCSIIP>1.1.1.3</EternusISCSIIP> 153 <EternusISCSIIP>1.1.1.4</EternusISCSIIP> 154 </FUJITSU> 155 156 Where: 157 158 ``EternusIP`` 159 IP address for the SMI-S connection of the ETRENUS DX. 160 161 Enter the IP address of MNT port of the ETERNUS DX. 162 163 ``EternusPort`` 164 Port number for the SMI-S connection port of the ETERNUS DX. 165 166 ``EternusUser`` 167 User name for the SMI-S connection of the ETERNUS DX. 168 169 ``EternusPassword`` 170 Password for the SMI-S connection of the ETERNUS DX. 171 172 ``EternusPool`` 173 Storage pool name for volumes. 174 175 Enter RAID Group name or TPP name in the ETERNUS DX. 176 177 ``EternusSnapPool`` 178 Storage pool name for snapshots. 179 180 Enter RAID Group name in the ETERNUS DX. 181 182 ``EternusISCSIIP`` (Multiple setting allowed) 183 iSCSI connection IP address of the ETERNUS DX. 184 185 .. note:: 186 187 * For ``EternusSnapPool``, you can specify only RAID Group name 188 and cannot specify TPP name. 189 * You can specify the same RAID Group name for ``EternusPool`` and ``EternusSnapPool`` 190 if you create volumes and snapshots on a same storage pool. 191 192Configuration example 193~~~~~~~~~~~~~~~~~~~~~ 194 195#. Edit ``cinder.conf``: 196 197 .. code-block:: ini 198 199 [DEFAULT] 200 enabled_backends = DXFC, DXISCSI 201 202 [DXFC] 203 volume_driver = cinder.volume.drivers.fujitsu.eternus_dx_fc.FJDXFCDriver 204 cinder_eternus_config_file = /etc/cinder/fc.xml 205 volume_backend_name = FC 206 207 [DXISCSI] 208 volume_driver = cinder.volume.drivers.fujitsu.eternus_dx_iscsi.FJDXISCSIDriver 209 cinder_eternus_config_file = /etc/cinder/iscsi.xml 210 volume_backend_name = ISCSI 211 212#. Create the driver configuration files ``fc.xml`` and ``iscsi.xml``. 213 214#. Create a volume type and set extra specs to the type: 215 216 .. code-block:: console 217 218 $ openstack volume type create DX_FC 219 $ openstack volume type set --property volume_backend_name=FC DX_FX 220 $ openstack volume type create DX_ISCSI 221 $ openstack volume type set --property volume_backend_name=ISCSI DX_ISCSI 222 223 By issuing these commands, 224 the volume type ``DX_FC`` is associated with the ``FC``, 225 and the type ``DX_ISCSI`` is associated with the ``ISCSI``. 226