The steps described below capture the steps needed to import a cluster manually using the Web Console. Watch a video showcasing the Import of an existing AWS EKS Cluster into the Controller.
Existing clusters may already have an Ingress Controller deployed. We strongly recommend that users create a "custom" cluster blueprint with the managed Ingress Controller addon disabled before importing the cluster into the controller.
- The minimum supported version for imported clusters is Kubernetes v1.14.1.
- Ensure you have created a custom blueprint with the managed ingress controller addon disabled if your existing cluster already has an Ingress controller. This will avoid port conflicts with the managed Ingress controller addon in the default cluster blueprint.
Step 1: Start Import¶
- In the Web Console, click on New Cluster
- Select "Import Existing Kubernetes Cluster" and click Continue
- Select "Environment" based on where the cluster is provisioned
- Select "Kubernetes Distribution"
- Give it a name and click on "Continue"
Below illustration shows an example of importing an existing EKS cluster.
Step 2: Provide Cluster Details¶
In the wizard on the Web Console,
- Select a location for the cluster from the dropdown
- Select the blueprint from the drop-down (the default blueprint will be used if nothing is specified)
- If a custom blueprint is selected select the version for the blueprint
Step 2.1: Proxy Configuration¶
Required only if the cluster is running behind a forward proxy
- Select "Enable Proxy" if the cluster is behind a forward proxy.
- Configure the http proxy with the proxy information (ex: http://proxy.example.com:8080)
- Configure the https proxy with the proxy information (ex: http://proxy.example.com:8080)
- Configure No Proxy with Comma separated list of hosts that need connectivity without proxy. Kubernetes Service IP (from the default namespace) has to be included.
- Configure the Root CA certificate of the proxy if proxy is terminating non MTLS traffic
- Enable "TLS Termination Proxy" if proxy is terminating non MTLS traffic and it is not possible to provide the Root CA certificate of the proxy.
Step 3: Register Cluster¶
You will now be presented with a cluster registration step where the user has to deploy a uniquely generated Bootstrap YAML file to their cluster using "KubeCTL"
This process initiates the registration process of the imported cluster with the Controller, deploys all the required software components for the k8s operator, and configured cluster blueprint
- Download the YAML file generated for the cluster
- Deploy the YAML file to your Kubernetes cluster using "kubectl" command
kubectl apply -f desktop-bootstrap.yaml
- You must have cluster-admin privilege to import the cluster into the controller
- Refer Step 2: Import Cluster for more details
If successful, you should see output similar to the image below
Once registration begins, and the k8s operator and cluster blueprint add-on components are successfully deployed,
- The cluster will check in with the controller
- The namespaces will be synchronized
Finally, the configured blueprint will be applied to the imported cluster
Blue indicates the deployment in progress
- Green indicates the Deployment successful
Red Indicated the failed schedules
Hover over the colored indication to view the name of the associated Add-ons, Namespace, and Status
The below cluster status indicates the successful provisioning. The page gets refreshed as per the seconds set in the Auto Refresh
Once all the steps are complete and if the import process was successful, you should see details about the cluster on the Web Console. The imported cluster is now managed by the Controller
On successful import cluster provision, users can view the detailed operations and workflow of the import cluster by clicking the Operation Status Ready icon. The screen shows all the stages that occurred during cluster deployment