The Zen of Atlantis USX on Citrix XenServer: Part II Setup (Redux)
What is Atlantis USX software defined storage? How does it work on Citrix XenServer? What does the impact of hyper converged on Citrix XenDesktop/XenApp workloads? If I'm using Citrix XenServer for non-VDI workloads, is software defined storage applicable to me? This is (an updated) Part I in a blog series looking to answer such questions and provide insight into the possibilities of reducing the costs of delivering a virtualised Citrix Workspace environment, while improving the user experience.
Atlantis USX is software defined storage platform, designed to abstract different storage types and increase the efficiency of hardware based storage. Atlantis USX is a pure software solution, the USX software can be used with Citrix XenServer (and/or VMware vSphere) deployed on your own choice of server hardware be it HP, Dell, IBM, Cisco, SuperMicro.. or whatever.
Atlantis USX can be used to pool SAN, NAS, DAS and even RAM storage. It can accelerate storage performance while at the same time, increasing storage capacity. With USX, you can transition seamlessly from costly shared storage systems to lower cost hyper-converged systems and public cloud storage.
Back in 2015 I started this series with USX 2.2 on XenServer 6.5. In this updated version, I'm going to take a look again at using Atlantis USX in a Citrix XenServer environment: this time, with Atlantis USX v3.5.1, and XenServer 7.0 as Atlantis USX 3.x is available on the Citrix XenServer 6.5/7.0 HCL.
The USX & XenServer blog series is going to cover the following:-
- Part I - The Test Environment & Import AMC for USX 3.5
- Part II - Atlantis USX Setup
- Part III - Creating a Simple In Memory Volume
- Part IV - Creating a Simple Flash Volume
- Part V - Creating a Simple Hybrid Volume
- Part VI - Creating an All Flash Volume
- Part VII - Creating a Hybrid Volume
- Part VIII - Management
- Part IX - Maintenance
You don't have to watch them in a box-set marathon. It'd help with the story arc if you did, but its more Star Trek than Game of Thrones.
Atlantis USX on Citrix XenServer - A Recap
Atlantis USX (Unified Software-Defined Storage) is a software solution that accelerates performance and consolidates storage, increasing effective storage capacity to support a range of virtualised workloads such as servers hosting business-critical applications, file storage, all components of a Virtual Desktop Infrastructure (VDI) and Server Based Computing (SBC) environment.
The test setup we're using is three (3) Citrix XenServer 6.5 hosts configured in a pool. Each host is has both local disk for capacity and SSD disk for performance/storage. Each host has 4 cores and 32GB RAM. Note these are virtualised hosts
In Part I, we discussed the types of virtual volumes available, their uses, and imported the initial software appliance - the Atlantis USX Management Console - into the pool. This is fine for testing although in a production configuration we'd have multiple AMC consoles, and those consoles would not be hosted on hosts running virtual volumes.
We then connected to the platform using a web browser... and then we left it there.
[ ^^^ that's how to write an episode cliff hanger.. that right there... ]
Planning for a USX Environment
It is not unusual to dive right in for a test deployment - but for production, remember to review the Documentation Center's Pre-Deployment checklist. You'll be looking to determine at least the following high level topics :-
- What storage types (VDI, SQL, Exchange, File Services, for example) do you require
- What storage protocol(s) do you need (USX supports NFS, iSCSI and SMB makes a tech preview in 3.5.1)?
- Is HA required?
- What storage formance characteristic do you need?
- What networks are you using, and what IP addresses are available?
- What raw storage do you have to use?
To an extent, a lot of these questions are automatically answered in Atlantis HyperScale and the USX Community Edition which have automated pre-defined install routines. But let's be honest, for a lot of you when you're kicking the tyres, various amount of the above points will be overlooked while setting up a Proof of Concept Lab because you'll only read the manual when you can actually smell burning.
Atlantis USX on Citrix XenServer - Setting Global Preferences
Within a USX deployment, first you'd plan the deployment and read the documentation <taps nose>, then you'd import the .ovf to create the USX Management Appliance - then connect to that USX Manager with a web browser: which we did in Part I
As a first configuration step we'll configure preferences. Preferences set by the admin user are applied to every volume created while they are in effect.
If you want certain preferences enabled only for specific volumes, you can enable the preferences before creating the volume, then reset them when you are done. Each volume is deployed with the settings that are in effect when it is created.
In the video, we will :-
- Enable Advanced Settings so we see all options when creating a volume
- The VM Manager refresh interval to be 3 minutes, because it's Test, we're impatient, and this is as low as it goes.
- The Max Memory Allocation to be 90% - so that we can deploy some Simple In Memory Volumes that utilise RAM for primary storage.
You can, of course programatically, set preferences using the Atlantis REST API.
Atlantis USX on Citrix XenServer - Initial Configuration of Atlantis USX
There are four mandatory steps to carry out before you can create your first virtual Volume, with an optional pre-deployment check.
- Add A VM Manager: here you'll provide at least XenServer pool to select resources from. The VM Manager requires the IP address and admin credentials of at the XenServer's Pool master. You can add in multiple Pools if required. It is possible to add in VMware vSphere pools as well - although as of the 3.5.1 release such a mixed hypervisor configuration is not officially supported (although it does work, more on that later - get your use cases ready people).
- Select Hypervisors and Storage: You then select which XenServer hosts in the pool you'd like to use for USX. You can choose them all, of some of them. What we also need to do is identify is which disk/flash resources to use. And indeed, of those resources, which storage is Flash based and which is Disk based. SSD can be used within USX either for capacity use, or as a replacement for RAM for performance when optimising disk. As such, you have to identify what is what because XenServer keeps that a secret. It would be recommended to name your SSD resources explicitly (as in the example) - because trying to remember which Local Storage is disk and which Local Storage is SSD can be tricky.
- Add Network Profile(s) As mentioned in Part I for XenServer on USX there is a manual installation for USX of the management console: but all volume components are automatically deployed. USX will create the VM, assign appropriate CPU and memory resources and create the network interfaces. To ensure that the networking is configured correctly, you create Network profiles. Network Profiles allows you to define which XenServer networks are used for storage or management, the IP addresses/mask/gateways to use. In the example we create two networks - one Management , one Storage aligned to a management and storage network in the XenServer pool.
- Pre-Deployment Check - this is an optional stage to verify the configuration of the hypervisors and networking.
- Add Name Template(s) USX automatically deploys all volume components. In the Naming Template you must define naming templates for Service VMs and Volume services (even if think you're not going to use them all... because you will, we know it.. you know it). Service VMs are used by pooled volumes to present individual host resources to be pooled together. You can also define Fast Clone naming templates (as is shown in the video) but we'll talk about them later.
Once those steps are complete you're all set to create your first virtual volume - which is the next part.
Want to see all that preference setting in action? Click on the video below.