ArcGIS Enterprise

ArcGIS Enterprise on Kubernetes: Q&A from Esri User Conference 2022

At this year’s Esri User Conference in San Diego, we enjoyed re-engaging with customers, partners, friends, and colleagues! Attendees traveled to the “Mappiest Place on Earth” or connected virtually. We offered several technical sessions related to ArcGIS Enterprise on Kubernetes, which prompted a number of questions that we’ll address in this article.

If you don’t find an answer you were looking for, please also read the Esri 2022 User Conference Q&A on ArcGIS Enterprise, the product documentation, and the resource page for ArcGIS Enterprise, where you will find more information and demonstrations of the software. If your question isn’t addressed here or in the resources above, please contact your Esri representative.

Capabilities

Q: What’s new with 11.0?
A: The release of ArcGIS Enterprise 11.0 on Kubernetes is bringing important improvements that will strengthen DevOps integration, ease administration, and enhance scalability and performance of the software. Read the What’s new and Release notes topics from our documentation for more details. A few highlights of what’s coming:
– General availability to customers. No Enterprise Agreement will be required, and the software will be licensed through an annual subscription. Talk with your Esri representative for details.
Disconnected environments. Some of our customers need to deploy and run ArcGIS Enterprise disconnected from the internet. They can do this with Windows and Linux, and the 11.0 release on Kubernetes will support disconnected operations as well.
Horizontal pod autoscaling integration. Administrators can already monitor and tune individual services running on Kubernetes, but this new capability, also known simply as “autoscaling,” will allow administrators to tell the system in advance how and when it should add resources to services in response to changing demand. This helps ensure consistent performance while easing the burden on administrators.
Support for additional data sources. Starting with the 11.0 release on Kubernetes, the use of Oracle and SAP HANA for data storage will be supported.

Q: Are GIS Servers such as Image Server and GeoEvent Server available in Kubernetes deployment? If not, is there a timeline when these servers maybe available?
A: If you have an Image Server license, you can federate that service with your Kubernetes deployment to ease administration. GeoEvent Server is not available for federation in the Kubernetes and while we are evaluating customer interest, there is no timeline for when we will support this. Neither of these capabilities are containerized or offered on-board with Kubernetes (but, stay tuned!)

Q: What capabilities of ArcGIS Enterprise are supported on this format? It’s possible to federate traditional deployed servers (roles) to a Kubernetes base implementation? What are the differences from Windows or Linux?
A: Deploying ArcGIS Enterprise on Kubernetes gives you functionality analogous to advanced capabilities of GIS Server, Portal for ArcGIS, and ArcGIS Data Store, plus additional administrative tools to help you deploy, manage, and optimize your installation. You can also federate standalone GIS Servers and Image Servers into your Kubernetes deployment. At 10.9.1, new capabilities are summarized here, and also described in the What’s New blog article.

Q: You mentioned a single admin interface. Does it mean all those interfaces for portal admin, server admin, server manager, etc are combined?
A: Users, analysts, and GIS administrators will interact with the portal or via ArcGIS Pro in the same way as on Windows or Linux deployments. This includes access to usage reports, helping you understand activity within your organization.
However, some activities such as deploying, upgrading, monitoring, and tuning the system will feel very different for administrators. The administrative interface unique to Kubernetes, ArcGIS Enterprise Manager, empowers administrators to manage their deployment on Kubernetes. Usage metrics are also available to help administrators build dashboards, such as on Grafana, to help them further extend their ability to manage the environment.

Q: How does ArcGIS Enterprise on k8s support custom locator files?
A: ArcGIS Enterprise on Kubernetes fully supports geocoding services. Any locator that works in ArcGIS Pro can be published to an ArcGIS Enterprise on Kubernetes installation. Large locators may need to be published by reference; that is, copied onto a server with a datastore folder. Smaller locators may not be restricted and can be published by value without a data store. In this way the capabilities are similar as for traditional ArcGIS Server deployments. These capabilities have continued to evolve through the 10.9.1 release and beyond. We encourage you to reach out to your Esri account team for more details.

Q: Are SOI’s and SOE’s supported for the Kubernetes-based deployment?
A: We support the use of server object extensions and interceptors used on a Windows or Linux system, and these can be federated to a Kubernetes deployment. Currently, we do not support containerized custom applications running directly on Kubernetes where an SOI or SOE is being used.

Licensing

Q: How is licensing and software access handled with ArcGIS Enterprise on Kubernetes?
A: Starting with the 11.0 release, ArcGIS Enterprise on Kubernetes will be available via an annual subscription. This is unique to the Kubernetes deployment option and no changes in licensing are planned for deployments onto Windows or Linux. For our software running on Kubernetes, no Enterprise Agreement will be required, which makes the software generally available for being licensed to any customer. An annual subscription licenses the use of one ArcGIS Enterprise deployment in production, with additional options for staging or development use, or for very large deployments. Once licensed, deployment scripts are enabled on My Esri and access is granted to our containerized software. Please talk with your Esri representative for more details.

Q: Is this Kubernetes annual subscription included in developer licenses or is it a separate subscription? Is licensing changing for non-Kubernetes installations?
A: The new annual subscription licensing at 11.0 is specific to Kubernetes. Windows and Linux deployments will continue to follow existing licensing. Currently, Kubernetes licensing is not included with a developer subscription. There may be a limited-use evaluation of the software made available to eligible ArcGIS Enterprise customers; please check with your Esri representative.

Q: Are there licensing limits to the number of Pods or Nodes you can use, like how CPU cores are limited with a standard deployment?
A: Yes, when you license our software on Kubernetes through an annual subscription, there is a limit of 64 vCPU. While the comparison is not precise, you can consider this limit similar to about 32 cores of GIS Server but remember that the Kubernetes deployment brings additional capabilities beyond just the server component. This limit can be extended to additional blocks of 64 vCPU, through an additional fee added to the annual subscription.

Q: Will user types be included with the 11.0 annual subscription?
A: Starting with the 11.0 release, the annual subscription will include 100 Viewer named-user types and 25 Creator named-user types. Additional user types can be licensed to be used with your Kubernetes installation. These user types are unique to Kubernetes and not interchangeable with ArcGIS Enterprise installations onto Windows or Linux environments. We realize you may have further detailed questions about this, so please talk with your Esri representative for details.

Q: How will server roles such as Image Server going to be made available on Kubernetes?
A: With the 10.9.1 release, we included the ability to license basic imagery capabilities such as publishing by reference from a mosaic dataset, as a containerized service running within your Kubernetes deployment. This required uploading a valid Image Server license into your deployment. We also support federating a standalone Image Server or GIS Server with your Kubernetes deployment. These options will remain available with the 11.0 release. There are no immediate plans to enable federation of GeoEvent Server, GeoAnalytics Server, or Notebook server roles into an ArcGIS Enterprise on Kubernetes deployment.

Deploy and Upgrade

Q: Can we use a mixed deployment with Enterprise running on Kubernetes and on Windows or Linux?
A: Yes, we support federating GIS and Image Servers, so that you are able to run services on an existing ArcGIS Enterprise deployment and administer it within your Kubernetes environment. Such a hybrid setup is becoming a typical approach for customers that need time to migrate services, selectively and gradually, over to Kubernetes.

Q: How will we install Kubernetes on Azure? Will it be done through the Azure marketplace?
A: Access to our deployment scripts is through My Esri once you have been authorized to use the software, and the software container images are accessible through a privately managed organization on Docker Hub. We do not use cloud providers’ marketplaces to distribute our containerized software. The deploy script will be run on your installation machine which deploys the software to your cluster environment.

Q: I currently have a Windows deployment. Can I migrate to Kubernetes and import my deployment with webgisdr?
A: No, webgisdr is not supported for this migration. Unfortunately there is no automated migration or conversation of an ArcGIS Enterprise deployment on Linux or Windows, directly to Kubernetes. Customers can take advantage of scripting to set up services on Kubernetes, providing some level of automation. Check with your Esri representative to see if consulting support or examples of DevOps tools are available to help.

Q: Can the Kubernetes deployment connect to Active Directory?
A: Yes, you can secure access to your organization using Integrated Windows Authentication (IWA) and an Active Directory identify store, and further options exist. See the documentation for further details.

Q: How is Esri addressing the need for customers to use environments other than those currently supported: AWS, Azure, Google Cloud, or Red Hat OpenShift?
A: We recognize that our customers may want to run ArcGIS Enterprise, containerized, within environments such as Rancher or others. We are evaluating the right timing and resources needed to be able to extend support to other environments. While we have not published specific plans, this is considered a high priority for our team and we appreciate hearing from customers about their requirements to inform our plans.

Q: Can Kubernetes be used across multiple regions or availability zones?
A: Generally, customers asking about this are interested in improved resilience or availability. Configuring backups or provisioning clusters is possible, but there may be functional or performance limitations in your situation. These may include situations related to using static provisioning, balancing resources after a pod failure recovery, or where a stateful pod and the data it needs reside on different availability zones which may degrade I/O performance. We see customers wanting to use multiple availability zones but we do not yet support node affinity to assign workloads to specific nodes, and we do not support cross-region deployments. This is a sophisticated area with the technology continuing to evolve and we continue to investigate improvements for future releases. We recommend talking with your Esri professional services team to evaluate your design.

Data Management

Q: Is data using an Oracle source supported? What about SAP HANA?
A: Yes, starting with this 11.0 release we will also support databases using Oracle (via the Easy Connect [external link] naming method) and SAP HANA. Read User-managed data stores in ArcGIS Enterprise to learn more.

Q: Does ArcGIS Enterprise on Kubernetes support file geodb?
A: Yes, file geodatabases are supported. If you publish a hosted feature layer, only feature classes, tables, attachments, and relationship classes are published. Read What can you add to ArcGIS Enterprise to learn more.

Scale and Tune

Q: How does Kubernetes handle scaling of ArcSoc processes?
A: This is described in the documentation on Service Modes and works on Kubernetes similar to Windows or Linux. In shared mode, services can share process resources and perform the request. Resources no longer needed are returned to the system to be used by other service requests. A dedicated service has designated resources for requests specific to that service. This works similarly to the Windows or Linux deployments.
On Kubernetes, scaling capabilities are inherent to the technology and are highly elastic, ensuring performance of services is consistent regardless of demand. Increasing resources can be done through the ArcGIS Enterprise Manager and can pull directly from resources available to the cluster namespace; this is typically an efficient way to procure resources and much simpler and faster than having to procure, set up, and configure additional servers or virtual machines as with a traditional deployment. This is described in the documentation on Service Scaling.

Q: Is autoscaling of services available?
A: Yes. Starting with the 11.0 release, ArcGIS Enterprise on Kubernetes will support Horizontal Pod Autoscaling. This is a capability of Kubernetes which lets you set, in advance, thresholds that should trigger an automatic increase in service resources based on capacity available to your cluster namespace. These thresholds might be percent utilization of compute or memory usage, can be set to a maximum allocation and a rate at which resources are automatically allocated. They can also be set to draw resources back down if demand decreases. This is meant to complement, rather than replace, the monitoring and scaling that you perform specifically for each service based on demand levels. More information is available in the documentation on Service Scaling.

Q: Does ArcGIS Enterprise Manager suggest minimum and maximum pods based on service usage?
A: ArcGIS Enterprise Manager does not proactively recommend minimum or maximum ranges in this way. Rather it reports detailed information about current service levels, system health, and lets you scale in a granular fashion, the resources available to each service. This monitoring and response cycle is described in the documentation on Managing Service Deployments. The software also includes the ability to report on system usage and performance through Grafana dashboards, described in View statistics dashboards.

Q: Is there a way to estimate costs for resources when service usage grows to very high levels?
A: Our software does not directly give you cost estimates to estimate the impact on infrastructure costs in the event your service usage grows. You can see current usage levels using monitoring tools described in Manage service deployments. Cloud providers typically provide cost estimators in their management interfaces which could translate current and potential costs to an actual estimate. The licensing and pricing for ArcGIS Enterprise on Kubernetes also may be impacted for large and persistent changes in resource requirements; please talk with your Esri representative for more information.

Learn More

Q: Where can I learn more about the software, and are the Kubernetes sessions from the Esri User Conference available online?
A: The product documentation is a great place to start. User conference attendees with Digital Access can see recorded technical workshops directly from the conference website until October. Selected sessions are also available on Esri’s youtube channel. In both cases, search for “Kubernetes.” We also encourage you to review the ArcGIS Enterprise on Kubernetes resource page, where you will find articles, demonstrations, and links to additional information. Even more questions about Kubernetes are addressed in the Esri 2022 User Conference Q&A within the ArcGIS Enterprise topic, and finally the resource page for ArcGIS Enterprise has more information and demonstrations of the software.

About the author

Trevor Seaton is a Senior Principal Product Manager focusing on ArcGIS Enterprise on Kubernetes. His work emphasizes the delivery of cloud-native GIS software that excels in scalability, performance, and reliability. Trevor has led strategic initiatives in the sectors of software, aerospace, and philanthropy prior to joining Esri in 2019. He holds an MBA from the University of Washington and is pursuing a PhD in information systems at Claremont Graduate University. You can reach Trevor at tseaton@esri.com.

Connect:

Next Article

Engaging Volunteers for a Cause

Read this article