So this blogpost is a summary of what I presented on the MYCUGC Cloud XL Webinar series, if you don’t want to read the blogpost I have also attached the slidedeck here as well –> https://www.slideshare.net/mariussandbu/citrix-cloud-xl-running-ctirix-in-public-cloud this blogpost is basically a bit more in-depth and summary of the session itself. The session I highlighted how we can run Citrix in Public Cloud and especially on Google Cloud, AWS and Microsoft Azure, what kind of features are supported and what kind of considerations you need to have before doing a Citrix Cloud Deployment.
I have highligthed earlier a bit of the differences between the different Cloud Vendors in an earlier blogpost, but a short summary.
- Amazon Web Services: 17 Regions, with multiple availability zones which are used to spread infrastructure across to deliver highly available services. AWS has been using a Xen based hypervisor but is now moving towards KVM based hypervisor. AWS is of course the market leader with the IaaS segment and has many large customers and enterprises and also has a huge focus on DevOps, but also with the latest addition of VMware on AWS to provide the “best of both worlds” Has a big service catalogue with a lot of different service which other vendors do not support yet. Has limited integration with on-premises environment and therefore lacking native tools and services to do the migration for instance (it should be noted that they provide basic VM import features)
- Google Cloud Platform: 16 Regions with multiple availability zones similar to AWS. Does not have the same level of services compared to AWS but is more flexible when it comes to pure IaaS which allows us to mix CPU/GPU and Disk combination on the same type of virtual machine. We can also customize IaaS sizes so we are not bound to a specific “instance type” Also Google Cloud has entered a partnership with Nutanix, so it is interesting to see where that goes compared to VMware on AWS and Azure Stack
- Microsoft Azure: 50 Availble regions, (availability zones is in preview) but now we are mostly using Availability Sets which are mostly rack based availability. Has a long list of different services especially for Big Data and Analytics but of course DevOps is an important strategy for Microsoft to gain more developer focus. Also existing on-premises integrations both from an Idenitity/SQL/File perspective and also with Azure Stack is a big bet for Microsoft moving forward.
Now regardless of which cloud platform you choose for your workloads you need to make some consideration before starting any type of projects.
- Ensure optimal performance and lowest possible latency to a provider. (CloudHarmony can help out to measure latency to different cloud regions –> https://cloudharmony.com/status)
- Ensure that Cloud provider has support for workload (such as SAP and Oracle) is something that needs to be verified from a licensing perspective or support perspective.
- Ensure that you have sufficient quota. All cloud vendors have built-in fail-safes to ensure that customers don’t go bananas. Before starting on a project ensure that you raise that limit. This can also allow you to ensure that the cloud provider has sufficient capacity in the specific region.
- Ensure that the region you want to place your workloads actually has the different services or instance types that you want to use. All cloud providers have different regions and availability of services so make sure that you verify this as well.
- Ensure that you are deploying infrastructure using IaC (Either using the native built-in solutions such as Azure ARM, Google Deployment Manager, AWS Cloudformation or using Terraform HCL. This makes changes and deployment as lot easier and also from a documentation perspective.
Now there are also some security factors that come in to play here as well, but ill get back to that in a later blogpost. Now I want to show some of the differences and latest changes between the 3 providers from an IaaS perspective (More of the comparison is within the slidedeck)
Much is the same between the 3 different vendors, of course, there is a big difference when it comes to IaaS backup and DR features, where Microsoft is the only vendor which clearly has a big focus on this space since they provider DR between multiple clouds and also from on-premises as well. They also have better migration options using Azure Migrate (combined with ASR as well)
When it comes to Disk performance, Google is in a class of its own. Of course, Google has built the Google file system and therefore has a lot of experience in this field. Azure is lacking in this area when it comes to both performance and size in general.
Now when it comes to pricing (ofcourse pricing differs from region to region, in most cases where I did a price comparsion on straight pay-as-you-go I found that Google is the cheaper option. Of course when it comes to storage cost, AWS is the cheapest option with Azure behind but if we compare the IOPS and troughput we get on the same level there is some major differences between the different vendors.
So when it actually comes to Citrix Support and Public Cloud it is as of now, mostly support for AWS and Microsoft Azure from a provisioning perspective. Of course, they announced a lot of Google support as Synergy so that means that Citrix has 90 days to release some functionality or tech preview of the solution that they announce as well. Another issue with Google is that it as of now doesn’t have support for SD-WAN or Citrix NetScaler. This might be of course in order to get an appliance supported on cloud provider it is a long process to get a custom agent installed which the cloud provider framework uses to communicate with the appliance to get it certified in the marketplace.
Of course, all vendors have built-in identity solution and also (AWS with the latest SSO feature) to provider full SSO against a Citrix FAS environment using SAML. But again Citrix Cloud has some built-in Azure AD support both from a management perspective but also from an end-user perspective.
When it comes to running VDI in Public Cloud, Azure is the only logical choise as of now because of the current licensing restriction. Of course now in Azure you can use both EA and or CSP agreements to setup Windows 10 VDI enviroments in Microsoft Azure.
Now to summarize a bit of the content itself, as of now Microsoft Azure is the logical choice for Citrix deployment in Public Cloud. This also because many of the built-in integrations with Citrix and Azure such as MCS, Intune with NetScaler, Identity for end-users and the management plane but also from a licensing perspective since it allows you to run VDI. Also as mentioned earlier much of the Citrix Cloud backplane is running in Microsoft Azure (both using services such as Service Bus, and other components) but also the NGaaS service also consists of many Points of presence running in Microsoft Azure today. Combine this with customers which has Office365 (which also has better performance running in Microsoft Azure from a client perspective also gives a better performance boost.
AWS on the other hand, we have seen little investment from Citrix as of late. Of course the NetScaler team has been active to have the latest NetScaler AMI available but there hasn’t been alot of new documentation from the XenDesktop team to AWS. Might be because that AWS is focusing alot more on their own offerings with Workspaces and AppStream.
Now lastly I hope and think that Google Cloud will be the next big platform for Citrix, since they had some big announcements on Citrix Synergy and I’m a big fan of Coogle Cloud from a sysadmin perseptive, so just counting down.
Also I want to add some final comments, there are also other 3.party vendors which are now coming with support for public clouds from an storage and monitoring persepctive. Such as FSlogix, Liquidware and ControlUp which makes it easier as well to use 3.party combined with Citrix in a public cloud scenario.