Collapse AllExpand All

Configure the Storage Controller

Eucalyptus offers SAN support for Eucalyptus block storage (EBS). Eucalyptus directs the Storage Controller (SC) to manage any supported SAN devices. Eucalyptus automatically creates and tears down volumes, snapshots, and data connections from guest instances. The administrator does not need to pre-allocate volumes or LUNs for Eucalyptus.
Eucalyptus currently offers several backend providers for the Storage Controller: Overlay, DAS, Equallogic, Netapp, and EMC-VNX.
The Eucalyptus Storage Controller must be configured explicitly upon registration. This is a change from previous versions (pre-3.2) of Eucalyptus, which would configure themselves to a default configuration using a tgtd-based filesystem-backed storage controller to provide volumes and snapshots directly from the Storage Controller. As of version 3.2, Eucalyptus Storage Controllers automatically go to the BROKEN state after being registered with the CLC and will remain in that state until the administrator explicitly configures the SC by telling it which backend storage provider to use.
You can check the state of a storage controller by running
euca-describe-services -E
and note the state and status message of the Storage Controller(s). The output for an unconfigured SC will look like:
SERVICE	storage        	PARTI00        	SC71           	BROKEN    	37  	http://192.168.51.71:8773/services/Storage	arn:euca:eucalyptus:PARTI00:storage:SC71/
SERVICEEVENT	6c1f7a0a-21c9-496c-bb79-23ddd5749222	arn:euca:eucalyptus:PARTI00:storage:SC71/
SERVICEEVENT	6c1f7a0a-21c9-496c-bb79-23ddd5749222	ERROR
SERVICEEVENT	6c1f7a0a-21c9-496c-bb79-23ddd5749222	Sun Nov 18 22:11:13 PST 2012
SERVICEEVENT	6c1f7a0a-21c9-496c-bb79-23ddd5749222	SC blockstorageamanger not configured. Found empty or unset manager(unset). Legal values are: das,overlay
Note the error above: SC blockstoragemanager not configured. Found empty or unset manager(unset). Legal values are: das,overlay.
This indicates that the SC is not yet configured. It can be configured by setting the [partition].storage.blockstoragemanager property to either 'das' or 'overlay'.
If you have installed the Eucalyptus Enterprise packages for your SAN, you will also see additional options in the output line above, and can set the block storage manager to 'netapp','emc-vnx-flare31','emc-vnx', or 'equallogic' as appropriate.
You can verify that the SC blockstoragemanager is unset using:
euca-describe-properties | grep blockstorage
To configure SAN support, follow the steps for your desired backend storage device: Open-Source ISCSI Filesystem-backed, Dell Equallogic, JBOD, Netapp, or EMC VNX.

Configuring the SC to use the local filesystem (Overlay)

This was the default configuration option for the SC in pre-3.2 Eucalyptus. In this configuration the SC itself hosts the volume and snapshots for EBS and stores them as files on the local filesystem. It uses standard linux iSCSI tools to serve the volumes to instances running on NCs.

  1. Configure the SC to use the OverlayManager for storage.
    euca-modify-property -p <partition>.storage.blockstoragemanager=overlay
    The output of the command should be similar to:
    PROPERTY	PARTI00.storage.blockstoragemanager	overlay was <unset>
  2. Verify that the property value is now: 'overlay'
    euca-describe-properties | grep blockstorage

Enable Dell Equallogic SANs

  1. Configure the SC to use the EquallogicManager for storage.
    euca-modify-property -p <partition>.storage.blockstoragemanager=equallogic
    The output of the command should be similar to:
    PROPERTY	PARTI00.storage.blockstoragemanager	equallogic was <unset>
  2. Verify that the propery value is now: 'equallogic'
    euca-describe-properties | grep blockstorage
  3. On the CLC, run the following command to verify that the SC is listed; note that it may be in the BROKEN state:
    euca_conf --list-scs
  4. On the CLC (the primary CLC in an HA setup), enable SAN support in Eucalyptus by entering your SAN's hostname or IP address, the username, and password:
    euca-modify-property -p [partition_name].storage.sanhost=[SAN_IP_address]
    euca-modify-property -p [partition_name].storage.sanuser=[SAN_admin_user_name]
    euca-modify-property -p [partition_name].storage.sanpassword=[SAN_admin_password]
    If you have multiple management IP addresses for the SAN adapter, provide a comma-delimited list of IP addresses to the [partition_name].storage.sanhost property.

Your Equallogic SAN is now ready to use with Eucalyptus.

Enable Direct Attached Storage (JBOD) SANs

  1. Configure the SC to use the (Direct Attached Storage) DASManager for storage.
    euca-modify-property -p <partition>.storage.blockstoragemanager=das
    The output of the command should be similar to:
    PROPERTY	PARTI00.storage.blockstoragemanager	das was <unset>
  2. Verify that the propery value is now: 'das'
    euca-describe-properties | grep blockstorage
  3. On the CLC, run the following command to verify that the SC is listed; note that it may be in the BROKEN state:
    euca_conf --list-scs
  4. On the CLC (the primary CLC in an HA setup), set the DAS device name property. The device name can be either a raw device (/dev/sdX, for example), or the name of an existing Linux LVM volume group.
    euca-modify-property -p <cluster name>.storage.dasdevice=<device name>
    For example:
    euca-modify-property -p cluster0.storage.dasdevice=/dev/sdb

Your SAN is now ready to use with Eucalyptus.

Enable NetApp SANs

NetApp Filer devices (FAS 2000 and FAS 6000 series) are managed by Eucalyptus using NetApp ONTAPI (version 7.3.3 or above). Enable ONTAPI and provide administrative Eucalyptus with access to OTAPI. To configure NetApp Filer and enable NetApp SANs:

  1. Enable and verify API access to NetApp Filer.
  2. Verify SSL access by typing secureadmin status
  3. If marked inactive, enable with secureadmin setup ssl and generate a new certificate.
  4. Finally turn on SSL access with options httpd.admin.ssl.enable on
  5. Enable the iSCSI service on the NetApp device with option iscsi.enable on or option licensed_feature.iscsi.enable on if you have an embedded license on your array.
  6. Turn on the iSCSI service with iscsi start
  7. Enable the iSCSI service on the NetApp device with enable iscsi service
  8. Verify that an aggregate with sufficient spare capacity exists.
    • If you have SSH access to the NetApp Filer, enter aggr show_space.
    • If an aggregate with spare capacity does not exist, create one using the aggr create command.
    Note
    Note
    By default Eucalyptus assumes aggr1 as the aggregate name. If you wish to use a different aggregate see step 13.
  9. Verify that you have a license for FlexClone installed. At the shell prompt, enter license to see the list of all installed licenses.
  10. Write down the administrator credentials (or create an administrator account for Eucalyptus). You will need to configure Eucalyptus with these credentials later.
  11. Configure the SC to use the NetappManager for storage.
    euca-modify-property -p <partition>.storage.blockstoragemanager=netapp
    The output of the command should be similar to:
    PROPERTY	PARTI00.storage.blockstoragemanager	netapp was <unset>
  12. Verify that the propery value is now: 'netapp'
    euca-describe-properties | grep blockstorage
  13. On the CLC, run the following command to verify that the SC is listed; note that it may be in the BROKEN state:
    euca_conf --list-scs
  14. On the CLC (the primary CLC in an HA setup), enable SAN support in Eucalyptus by entering your SAN's hostname or IP address, the username, and password:
    euca-modify-property -p [partition_name].storage.sanhost=[SAN_IP_address]
    euca-modify-property -p [partition_name].storage.sanuser=[SAN_admin_user_name]
    euca-modify-property -p [partition_name].storage.sanpassword=[SAN_admin_password]
    If you have multiple management IP addresses for the SAN adapter, provide a comma-delimited list of IP addresses to the [partition_name].storage.sanhost property.
  15. If you need to change the aggregate to something other than the default "aggr1" based on your SAN configuration, use the following command:
    euca-modify-property -p <partition_name>.storage.aggregate=<SAN_aggregate_name>

Your Netapp SAN is now ready to use with Eucalyptus.

Enable EMC VNX SANs

This adapter uses the newer VNX-Snapshot feature available on VNX devices running FLARE v5.32 or later that have a VNX-Snapshot license. This adapter also requires the Navisphere Secure CLI to be installed on the SCs. The Navisphere CLI must be version 7.32.0.5.54 or later.
Important
Important
You must create a clone private LUN (CPL) of at least 1GB on each SP. For more information on creating private LUNs, go to Allocating clone private LUNs.

  1. We assume that the Navisphere CLI is installed in /opt/Navisphere on the SC.
    Important
    Important
    Eucalyptus currently supports version 7.32.0.5.54 or later of the Navisphere CLI.
  2. Verify that the CLI is installed and can communicate with the VNX from the SCs.
    On each SC that you are configuring, test the naviseccli command as follows:
    /opt/Navisphere/bin/naviseccli -User <your SAN username> -Password <your SAN password> -Scope 0 -Address <management port IP> connection -pingnode -address <a data port IP on your VNX>
    Verify that the command runs successfully and the ping gets replies from the SAN.
  3. On the CLC, run the following command to verify that the SC is listed; note that it may be in the BROKEN state:
    euca_conf --list-scs
  4. Configure the SC to use the EMC VNX VNX-Snapshot-based manager for storage.
    euca-modify-property -p <partition>.storage.blockstoragemanager=emc-vnx
    The output of the command should be similar to:
    PROPERTY	PARTI00.storage.blockstoragemanager	emc-vnx was <unset>
  5. Check the SC to be sure that it has transitioned out of the BROKEN state and is in either NOTREADY or DISABLED before configuring the rest of the properties for the SC. The following commands should be run on the ENABLED CLC to configure the SC.
    On the ENABLED CLC, run:
    euca_conf --list-scs
  6. On the CLC (the primary CLC in an HA setup), enable SAN support in Eucalyptus by entering your SAN's hostname or IP address, the username, and password:
    euca-modify-property -p [partition_name].storage.sanhost=[SAN_IP_address]
    euca-modify-property -p [partition_name].storage.sanuser=[SAN_admin_user_name]
    euca-modify-property -p [partition_name].storage.sanpassword=[SAN_admin_password]
    If you have multiple management IP addresses for the SAN adapter, provide a comma-delimited list of IP addresses to the [partition_name].storage.sanhost property.
  7. On the ENABLED CLC, set the login scope for the command line access. For most installs, the login scope will be 0, which indicates a global login scope for the device. 1 indicates a local scope. 2 indicates LDAP authentication for the SAN device. Use login scope value of 2 only if your SAN is configured to use LDAP authentication and you have an admin user configured to use LDAP.
    euca-modify-property -p <partition_name>.storage.loginscope=<login_scope>
  8. On the ENABLED CLC, set the username for the Challenge Handshake Authentication Protocol (CHAP). This can be any value, however it should be unique when sharing VNX on multiple Eucalyptus clusters.
    euca-modify-property -p <partition_name>.storage.chapuser=<chap_username>
  9. On the ENABLED CLC, set the value for the unique storage pool that you have configured to use with the SC.
    euca-modify-property -p <partition_name>.storage.storagepool=0
  10. On the ENABLED CLC, set the iSCSI data port IP for NCs to use to perform disk operations on the SAN. If you want to configure multiple IPs, see Configure EMC VNX Multipathing.
    euca-modify-property -p <partition_name>.storage.ncpaths=<ip>
  11. On the ENABLED CLC, set the iSCSI data port IP for SCs to use to perform disk operations on the SAN. The SCs connect to the data ports on the SAN in order to transfer snapshots to Walrus during snapshot operations. If you want to configure multiple IPs, see the section on 'multipathing.
    euca-modify-property -p <partition_name>.storage.scpaths=<ip>
  12. On the ENABLED CLC, set the path to Navisphere CLI that you downloaded earlier to the SC. The following example shows the default path. This is that path on the SC, not on the CLC.
    euca-modify-property -p <partition_name>.storage.clipath=/opt/Navisphere/bin/naviseccli

Your EMC VNX SAN is now ready to use with Eucalyptus.
Tip
Tip
Note: The time it takes for a LUN migration to complete will depend on the exact VNX model, workload, and volume size, and the amount of data actually stored in the volume. The default timeout for LUN migrations is 12 hours. If your deployment uses volumes >50GB, or if you find that snapshots fail and a "migration timeout" message is seen in the SC logs, then you should increase the timeout to a larger value. It is recommended that if you plan on using volumes in the 100GB range that you set that timeout to 3600 or larger. You can set the timeout using euca-modify-property as follows:
euca-modify-property -p [partition].storage.lunmigrationtimeout=[time in hours]