Yes, it’s true. The EMC Elect, the community-driven recognition for individuals that have provided help, support and been generally awesome people around EMC and its products, will now be getting free ScaleIO licenses. You might have read about ScaleIO on my blog before, and for you and those chosen for the EMC Elect program I would like to share how to best make use of your new licenses and software!
First off, if you missed the online session where Erez Webman and Boaz Palgi went through the ins-and-outs of ScaleIO, I highly recommend you watch it. You should have access to it via the EMC Elect portal.
Secondly, I would like you to make sure you have the proper equipment to run ScaleIO. Most homelab setups would most likely work fine, but the more hardware you have the more value you will get out of it. ScaleIO scales pretty much linearly when you add nodes and disk to it, so you will get a better experience the more hardware you have. Don’t expect to get blazingly fast flash performance out of a couple of tired SATA drives connected to servers with early Intel Celeron CPUs. Ok? Ok.
Ok, let’s get to it. For a VMware installation, continue reading. For local laptop installations, read here and then continue below the VMware installation for cool use cases.
If you’re going to run ScaleIO in a VMware environment, please follow the steps outlined here and here. When you do this for the first time it will probably take some time, but fear not, if you don’t want to go through the whole GUI setup you can actually make it very easy by editing the following file, upload it to your ScaleIO environment and run the automated installation. Yes, just configure a text file, upload it to a server, run a script and voila, you have a fully functional scale-out storage solution! Pretty cool IMHO.
Please make sure you read through the two installation posts above even if you’re going to use the edited configuration file, as they contain a lot of good information. When you’re done with that, you can edit the following for your environment and store it as site.cfg under /opt/scaleio/siinstall/ECS on one of the ScaleIO nodes, doesn’t matter which one. The template below configures 3 virtual SDS nodes that are also SDCs and gives access to a 2048GB large volume (of course you need to have the correct size of storage underneath, otherwise change it) to three ESX hosts using iSCSI. Yes, you need to configure iSCSI in your VMware environment for this to work. Also, if you want to try it out with more nodes (remember better experience with scale-out?) please do!
[global] virtual_ip = 192.168.0.10 sds = SDS-A;SDS-B;SDS-C sdc = SDC-A;SDC-B;SDC-C volumes = volume1 domains = [domains] pdomain = pool1 [initiators] esx01 = iqn.1998-01.com.vmware:esx01 esx02 = iqn.1998-01.com.vmware:esx02 esx03 = iqn.1998-01.com.vmware:esx03 [email_alert] email_to = firstname.lastname@example.org severity = error [smtp] host_ip = localhost port = 25 tls = no username = scaleio password = admin email_from = email@example.com [miscellaneous] encryption = no password = 0000000000 [mdm_primary] ip = 192.168.0.11 password = 0000000000 os = linux virtual_nic = eth0 [mdm_secondary] ip = 192.168.0.12 password = 0000000000 os = linux virtual_nic = eth0 [tb] ip = 192.168.0.13 password = 0000000000 os = linux [SDS:SDS-A] ip = 192.168.0.11 password = 0000000000 domain = pdomain devices = /dev/sdb pools = pool1 os = linux [SDS:SDS-B] ip = 192.168.0.12 password = 0000000000 domain = pdomain devices = /dev/sdb pools = pool1 os = linux [SDS:SDS-C] ip = 192.168.0.13 password = 0000000000 domain = pdomain devices = /dev/sdb pools = pool1 os = linux [SDC-A] ip = 192.168.0.11 password = 0000000000 os = linux iscsi = yes [SDC-B] ip = 192.168.0.12 password = 0000000000 os = linux iscsi = yes [SDC-C] ip = 192.168.0.13 password = 0000000000 os = linux iscsi = yes [volume1] size = 2048 hosts = SDC-A;SDC-B;SDC-C domain = pdomain initiators = esx01;esx02;esx03 pool = pool1
When you have the configuration file set up, just run the following in the /opt/scaleio/siinstall/ECS folder and you should see your ScaleIO environment start taking form:
./install.py --all -c site.cfg --license YOURLICENSEHERE
That’s about it for the VMware part. As I stated before, if you want to run it on your local laptop for demos and lighter functionality testing, please follow the blog post here to use Vagrant and VirtualBox to set up a fully functional ScaleIO environment. Then come back and continue reading.
Ok, so now what? You have a ScaleIO environment, what can you do with it? Well, if you’re running it in a VMware environment, the answer is simple. Connect your vSphere-hosts to the iSCSI IP, and create a VMFS volume of course! Then start storing your virtual machines on it. Easy peasy :)
If you’re running it locally on your laptop, you can start up another VM, install only the SDC on it, add it as an SDC for the ScaleIO volumes you have and connect it to the volumes. How about storing your MySQL database there? Maybe run your postfix mail server there? Or maybe set up a cool load balanced cluster of nginx web servers with one volume each, spreading the load across not only CPU and RAM but also disk? It’s entirely up to your imagination what type of applications you want to put on it – what interesting use cases can you come up with?