Before deploying ArcGIS Enterprise on Kubernetes to an RKE2 cluster, you must prepare a cluster that meets ArcGIS Enterprise system requirements.
Preparing the cluster includes steps that are common across supported environments such as setting up the Kubernetes cluster and corresponding nodes, and steps that are environment specific such as creating a storage class and handling ingress to the application.
Note:
For users deploying to an RKE2 cluster configured using the RKE2 CIS Hardening Guide, the ArcGIS Enterprise on Kubernetes namespace must allow the baseline pod security standard. For more information, see Pod Security Standards.
Review the following steps and refer to Rancher documentation for more detailed instructions on how to prepare your environment.
- Create a RKE2 cluster.
There are many methods by which an RKE2 cluster can be deployed. For on-premises deployments, refer to Rancher's documentation. For disconnected deployments, refer to Rancher's Air-Gap Install documentation.
- Update kubectl configuration.
After creating the cluster, an admin kubeconfig file is generated at /etc/rancher/rke2/rke2.yaml. Follow Rancher's documentation to configure kubectl on your machine.
- Create storage classes.
By default, RKE2 does not come with any storage classes. It's the responsibility of the cluster administrator to create a storage provider and associated storage classes to be used by ArcGIS Enterprise on Kubernetes. For more information, see System storage.
It's recommended that you have a default storage class with the reclaimPolicy set to Delete. It's also a best practice to have a second storage class where the reclaimPolicy is set to Retain for backup purposes.
- Optionally, create an ingress object to route traffic to the arcgis-ingress-nginx service.
RKE2 includes an out-of-the-box ingress controller that can be used to pass traffic to the ingress controller shipped with ArcGIS Enterprise on Kubernetes. To take advantage of the RKE2 Ingress Controller, an ingress object should be created to route traffic to the bundled application ingress controller. See Cluster-level ingress controllers for more information.
Note:
When running the deployment script, you must answer yes to the cluster-level ingress controller question to ensure that the arcgis-ingress-controller service will not be exposed outside the cluster subnet and will be created as the ClusterIP type.