For the latest Clusters CLI information, see the Clusters CLI topic.
Clusters and workloads are deployed in the Customer's Org in the context of a Project. Users can use RCTL to fully automate the lifecycle management of clusters. Specifically, the operations listed in the table below can be fully automated using RCTL.
You can also import a cluster into the Project based on a version controlled cluster spec that you can store in a Git repository. This enables users to develop automation for reproducible infrastructure.
./rctl create cluster -f cluster-spec.yml
An illustrative example of the cluster spec YAML file is shown below
kind:Clustermetadata:# set the name of the clustername:demo-imported-cluster-01# specific the project name to create the clusterproject:defaultproject# cluster labelslabels:env:devtype:ml-workloadsspec:# type can be "imported"type:imported# location, can be custom or predefinedlocation:aws/eu-central-1# blueprint below is optional, if not specified, default value is "default"blueprint:default# blueprintversion below is optional, if not specified, latest version in the blueprint will be used"blueprintversion:v1
Unified/Split YAML
Both unified and split yaml specs are supported to create cluster(s) via RCTL
Use this command to create a cluster object in the configured project in your Organization. You can optionally also specify the cluster blueprint during this step.
Use this command to retrieve the list of clusters available in the configured project. In the example shown below, there are four clusters in this project.
Use this command to retrieve the a specific cluster available in the configured project.
./rctl get cluster <cluster-name>
Below is the illustrative example of the "demo-spot-eks" cluster information of the current project:
./rctl get cluster demo-spot-eks
+---------------+-----------------------------+-----------------------------+---------+--------+---------------+
| NAME | CREATED AT | MODIFIED AT | TYPE | STATUS | BLUEPRINT |
+---------------+-----------------------------+-----------------------------+---------+--------+---------------+
| demo-spot-eks | 2020-08-11T16:54:25.750659Z | 2020-09-23T04:05:00.720032Z | aws-eks | READY | eks-blueprint |
+---------------+-----------------------------+-----------------------------+---------+--------+---------------+
Or you can use below command to get more cluster information in json or yaml format
Users can use RCTL to download the Kubeconfig for clusters in the configured project. All access will be performed via the Controller's Zero Trust Kubectl access proxy.
./rctl download kubeconfig [flags]
By default, a unified Kubeconfig for all clusters in the project is downloaded. If required, users can download the Kubeconfig for a selected cluster.
RCTL provides an option for the users to wait and block the long-running operations. When an automation pipeline logic becomes extremely convoluted, enabling the --wait flag helps to block and keep pulling the cluster ready status.