I just posted about using the EMC-provided Python script to install and configure ScaleIO on Windows. Using this script makes these steps much easier, especially in very large environments (you can find that post here). One of the next logical questions is concerning firewall requirements and this process. To achieve this automation, the script is going all over the place connecting to servers, copying files, starting services and issuing configuration commands. Therefore it is hitting a variety of network ports on the target hosts. So let’s talk about what exactly those ports are.
In previous posts I have discussed installing and configuring EMC ScaleIO on Windows using manual methods. In VMware or pure Linux environments I have used the provided Python script/wizard to help automate the installation and configuration of ScaleIO. Mostly due to the fact that using this script is much simpler and less-error prone than using the manual methods. And in my opinion, at least, should be the preferred method of installation when possible.
Two posts in two days. Phew! So much to talk about, but this is a quick one. In my previous post I wrote about installing ScaleIO on Windows hosts via a manual/user-controlled process using the CLI and running the MSI install file on each server. In larger environments this may not be practical where an automated deployment solution is required. Furthermore, it is invariably necessary to also deploy the software in a “silent” unattended mode so that end-users do not need to interact with the installer. Luckily this is a pretty simple process in Windows environments using the MSI ScaleIO installer.
A few weeks ago the latest version of ScaleIO was released (version 1.21) and one of the major new features of it was official Windows Server support. ScaleIO 1.21 supports the following flavors of Windows:
- Windows Server 2008 R2
- Windows Server 2012
- Windows Server 2012 R2
Let’s talk about snapshots and ScaleIO.
First how does snapshot-ing work with ScaleIO? ScaleIO offers the ability to snapshot a single volume at a time or cloning multiple volumes at once. Importantly, ScaleIO, when snapshot-ing multiple volumes at once, those copies will be consistent with each other at the time of creation. A consistency group is created when a snapshot command includes multiple volumes–this is helpful for situations where multiple VMs on multiple volumes need consistent copies but the source applications may not be able to be quiesced at the time. ScaleIO does not though prevent you from deleting one snapshot in a consistency group–you may manage those volumes after the fact however you wish.
In my previous post I wrote about expanding a ScaleIO volume in a VMware environment. During that procedure there is a requirement to correlate the EUI of the device hosting the VMFS to the ScaleIO identifier so that you can ensure that you actually expand the correct volume. Especially important in large environments. So I thought is there a way to script this correlation in a simple fashion to save you some work? Can the whole process be automated?
The answer to both is yes!
In my last blog post I wrote about how to provision a new volume from ScaleIO to your VMware environment so the next logical step is what do you do when that volume is completely consumed. Well you have to options; provision a new volume or expand an existing one. Since the former option was covered in my last post, let’s look at the second option.
VMware vSphere has offered the ability to dynamically expand VMFS volumes since, well, vSphere was introduced (version 4.0). VMFS Volume Grow allows ESXi to recognize when a physical device has expanded in capacity and enables an administrator to non-disruptively expand the VMFS volume to take advantage of the extra space without resorting to using messy extents.
I recently posted about adding capacity to a ScaleIO storage pool, so the next logical step is provisioning a new volume. In this post, I am going to cover the straight-forward act of creating a new volume from a storage pool, mapping it to a ScaleIO Data Client (SDC) and then presenting it to the VMware cluster.
The first step is to assure we have enough space to configure a new volume of the size we desire. GUI or CLI will suffice:
When initially installing/configuring ScaleIO in a VMware environment the creation of a storage pool and adding capacity to it is included in the setup process. Obviously every time you want to add a storage pool, add capacity or simply create a new volume you don’t want to have to run the setup process again–that would be silly. And of course you do not have to, nor should you. So how do you add more capacity without adding additional nodes? Let’s find out!
My current environment has four ESXi hosts and one SDS/SDC VM per host (my SDCs and SDSs are the same VM in my environment). Each SDS currently has one virtual disk using the full capacity of a VMFS on top of a physical disk. The plan is to double the capacity of each SDS by adding a new physical disk to each ESXi host and presenting the full capacity (minus the space on the disk reserved for VMFS metadata) via a virtual disk to each SDS. The below image shows the current environment for one ESXi host and also how it will look after the capacity is added.
I’ve started recently playing a lot with EMC ScaleIO (version 1.2 just came out) and deployed it in my VMware environment. VERY easy to deploy and use.
During my investigation of the product I noticed in the vSphere Client that my ScaleIO datastore was marked as supported for VAAI. I looked around for some documentation saying so and I haven’t been able to find any off the bat (if anyone does let me know).