Connecting EGIS to TC Cloud Components
Background
Attempts to use Azure file shares with the COTS product ArcGIS Enterprise have yielded poor results. After consulting with Microsoft, it’s become known that Azure file shares will be orders of magnitude slower than hosting a file server ourselves. From Adiy Qasrawi:
There is one supported scenario where you can create a File Server Cluster in IaaS and it is described in this link here: https://blogs.msdn.microsoft.com/clustering/2017/02/14/deploying-an-iaas-vm-guest-clusters-in-microsoft-azure/
There are many use cases for clustering in Azure described in the post. The one relevant to your setup is the one for a File Server using Storage Replica.
Couple of notes about this setup:
Failover Clustering requires an Active Directory Domain and Domain Services so you will need to setup a Domain Controller in your VNET and have the clustered VMs join the domain.
Failover Clustering for File Services is only available as an Active / Passive configuration. Only 1 VM can serve the requests for your application at a time.
A noted alternative to look into is called Azure Files Premium, again from Adiy:
Azure Files Premium was what I referred to earlier today. It was announced in September to provide enhanced performance and a number of other features such as ACL. This blog post compares what you have today with Azure Files vs. the announced features: https://azure.microsoft.com/en-us/blog/a-new-era-for-azure-files-bigger-faster-better/
The announced features are available today, but unfortunately not in Canada. If you’d like to evaluate whether it’ll address your requirements, the following blog post explains the how: https://azure.microsoft.com/en-us/blog/premium-files-pushes-azure-files-limits-by-100x/
The product team is expecting GA by the end of Q2 of 2019 which does not probably align with your timelines.
While we can evaluate this option, it won’t be available before our scheduled MVP release of Q1 2019.
File shares
In order to provide capacity and robustness the EGIS platform is clustering some of its component servers. The deployment of these cloned servers requires the use of shared folders for synchronisation. As a COTS product we have no control over that requirement.
With the failure of Azure files to suite our needs we are looking for a reliable and performant alternative, and consider Microsoft’s recommendation to be the best option available.
Requirements
UNC access, or mapped drive
Failover to DR (eventual goal)
Domain controller
The notes from Microsoft indicate the need for a domain controller to make the clustering work, and the Cloud Team has indicated that a TC Cloud domain controller already exists.
It’s unclear what impact joining our EGIS VMs to this controller would have on our current architecture. For example, the network topology of VNETs and subnets and their current address ranges.
At least on our production platform our users will authenticate with their TC/CloudTC accounts.
Disaster Recovery
The EGIS team plans to host a Disaster Recovery instance of the platform in a different region than our production instance. While complete DR planning won’t happen until our single instance architecture is complete, it is worth considering when discussing using a common TC file share.
The use of a centralized file share would require that our files be available in a DR situation.
Deploying in production
EGIS is currently scheduled to deploy a MVP before the end of March, 2019. While not an immediate concern we recognize that increased collaboration with the cloud team will be required to make this happen. When the details of file sharing and domain controllers are clear, and our platform has been updated and tested, we will begin the process of deploying a production instance. ETA mid-February 2019.