Register Clusters
During an installation performed using the installation script for single cluster deployment, the script registers the worker cluster.
Admin can add additional clusters to the EGS control plane to manage the GPU resources on the clusters.
Limit the cluster name and slice workspace name to 15 characters or fewer, as exceeding the limit results in a service export error.
Register a Worker Cluster
-
Go to k8s Clusters on the left sidebar.
-
On the Clusters page, click the Add Cluster button on the top-right corner.
Automated Method
To register a new worker cluster with the KubeSlice Controller, follow these steps:
-
Obtain the
kubeconfig
file of the worker cluster. -
Use the
kubeconfig
file to register the worker cluster with the controller. -
During the registration process, EGS automatically installs the Slice Operator on the worker cluster.
-
Keep in mind that each worker cluster can have only one Slice Operator installed on it.
To register cluster in automated mode:
-
Under Register Cluster, select the Automated mode.
-
Click Next to add the cluster details.
-
In the Add KubeConfig file section, enter the following information:
-
Enter the name of the cluster in the Name of the Cluster text box.
-
Drag and drop the kubeconfig file or Click here to upload the kubeconfig file.
-
The Enable auto eviction toggle button is disabled. Enable this button for auto eviction of low-priority GPRs.
When you enable auto eviction at the cluster level enables this feature on all the GPRs that you create on this cluster.
-
-
(Optional) Click Show advanced options and enter the following information:
- Enter the URL of Prometheus that is installed on your cluster in the Prometheus URL text box.
-
Click the Import Cluster button to register a cluster.
The status of the cluster changes from In progress to Registered after all the Slice Operator components are up and running. You can view the progress of the cluster registration by clicking the logs (file) icon.
Manual Method
Register a new worker cluster with the KubeSlice Controller by entering the cluster name, the cloud name, and the cluster Kube API endpoint parameters during cluster registration. The Node IP and the Prometheus URL are optional parameters.
Registration Inputs |
---|
Cluster Name |
Cloud Name |
Cluster Kube API Endpoint |
(Optional) Enter the Node IP |
(Optional) Enter the Prometheus URL |
To register a cluster:
-
Under Register Clusters, select the Manual mode.
-
Click Next to add the cluster details.
-
In the Add Cluster Details section, enter the following information:
-
Select the cloud from the Name of the Cloud drop-down list. The saved value is immutable.
-
Enter a name for a worker cluster in the Name of the cluster text box. The saved value is immutable.
-
Enter the control plane's
kube-apiserver
endpoint of the controller cluster in the Cluster Kube API Endpoint text box. Run this command on the cluster to get the endpoint:kubectl cluster-info
. -
The Enable auto eviction toggle button is disabled. Enable this button for auto eviction of GPRs.
infoYou can skip Step 4 and proceed to Step 6 to generate the values file.
-
-
Expand Show advanced options and enter the Prometheus URL and Grafana Dashboard URL in the corresponding text boxes.
Download the Slice Operator Values File
-
Click Generate Credentials to generate the values file. The values file is downloaded automatically. Save the file for later use.
The values file contains the worker secrets from the controller cluster, and the file is created with the cluster name that you entered in step 3.
- (Optional) In the Cluster Registration Procedure section, click the download link if the values file does not download automatically.
Copy the Helm Command
- Copy the Helm command to install the Slice Operator and Click Done.
Registration Status
The worker cluster's status on the Clusters page will be Awaiting User Action
until the Slice Operator is
installed on it. The status changes to Registered
after you install the Slice Operator
on the worker cluster, which shows that the cluster has been successfully registered.
Edit the Values File
Edit the values file you downloaded in step 5 of Register a Worker Cluster. Fill in the image pull secrets. Enter the username, password, and the email address. The email address is optional.
imagePullSecrets:
repository: https://index.docker.io/v1/ # image registry url. Modify if using a private registry
username: # username for image registry
password: # password for image registry
email: ""
The following is an example values file after you fill in the image pull secrets.
namespace: a3ViZXNsaWNlLWF2ZXNoYQ==
endpoint: aHR0cHM6Ly9DNjgwNTQ5MUNBNTI2MzVFM0YzNEUwQTFDRTRDMkY3RS5ncjcudXMtZWFzdC0xLmVrcy5hbWF6b25hd3MuY29t
ca.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1ekNDQWMrZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJeU1Ea3lNREEzTURZeE5Gb1hEVE15TURreE56QTNNRFl4TkZvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTXR2ClpXczQ1RVhicDdZMDJWdEJibUJITHBOTVN4VnpEQzBvWTh5N3R1YmJLWEJFRk9xbGVzU2trYWpmanJ5dGdTZzgKSmE2bXQ0TERjSlQrQ3FmYzMxYWN5RWpHdXlPeFM0Tmt4RGlBdkI0bHRyY2JLMmhnNkJmOWk1RDBTUzV5Rzh3WQpHZVV1bDkyOGlRcnVQeUxTY21wc0s3Y2sxL2FIQjAybDZpNmh5UWhyb1NMWSs5RHhobDdaVTBDMGpwTTQrZG1tClJ1cndVSEUvSGdFQ20yOUZuc3RiOTNZU2NsN3pERG4wdll1SVMrcWZoY2ZTSHR3VFRoZ1JkRlVtWStNUzM2dEYKSXBqNG8xT2xhdXRaMVZkUEJMbGRxUTdxTmlwVGtNbmZhTHA3U0h1QUUxSHV0N0xCOUxSMFAwQXlNU0NwbDV6QQpWWld1VVQ2cmw4TzZDMU5lUmY4Q0F3RUFBYU5DTUVBd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0hRWURWUjBPQkJZRUZCNnJkejFRa0NoU2ZtcjBRVU5CeGt3M3pKeFZNQTBHQ1NxR1NJYjMKRFFFQkN3VUFBNElCQVFBVWlaYnl2T1N6bVU5YnlWdVFreE9xaVZVdnBVUFlhZDJoZmJsejd0Z1krNWljYnR3SApoeDg1Rmp3WkZvRktkQVJiN1cxYnJnTG5OcXhDZEllWTVKZEkzTlBZRjZrVlc3ZmNMckUwK1BEWXhkc3dDZXdlCk9DSklUSFp3YjNQM05qMUNzTmVVaHg0Um4wd2FiYjlzS0xkUG5Bc0NRNFplTWxaalBSUllIeHg5QVU2ZWNxbXMKZWJWUkRpVTUzekJGd2tpSEhyZHRDTDNQQmxCZENvY0s5dXFQSi9nSXJDYVBrWGl3SlNZb0NrdWt4dm9rZk9xVgpONWd5QXFKL2o4RmkwUEh3UkVIUXNHVnVvajhxQjJzYUd4ZExhcTVWditsQVJpWktEVGhrVXJEeUE0YjB5c0w2CnZDUGtJRUl1ZE5SSGQ3eEJ6ckxPcVhVdXFGREJvTS92TFhaOQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
token: ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklqWkdZVEpwTlZWb1drcEhaaTF6VWpSa09WaENlRjlCUzNaSU1uQlhaMEZEY2xGTldrOXFOVUppWjJjaWZRLmV5SnBjM01pT2lKcmRXSmxjbTVsZEdWekwzTmxjblpwWTJWaFkyTnZkVzUwSWl3aWEzVmlaWEp1WlhSbGN5NXBieTl6WlhKMmFXTmxZV05qYjNWdWRDOXVZVzFsYzNCaFkyVWlPaUpyZFdKbGMyeHBZMlV0WVhabGMyaGhJaXdpYTNWaVpYSnVaWFJsY3k1cGJ5OXpaWEoyYVdObFlXTmpiM1Z1ZEM5elpXTnlaWFF1Ym1GdFpTSTZJbXQxWW1WemJHbGpaUzF5WW1GakxYZHZjbXRsY2kxbmEyVXRkMjl5YTJWeUxURXRkRzlyWlc0dE9EVjBiV01pTENKcmRXSmxjbTVsZEdWekxtbHZMM05sY25acFkyVmhZMk52ZFc1MEwzTmxjblpwWTJVdFlXTmpiM1Z1ZEM1dVlXMWxJam9pYTNWaVpYTnNhV05sTFhKaVlXTXRkMjl5YTJWeUxXZHJaUzEzYjNKclpYSXRNU0lzSW10MVltVnlibVYwWlhNdWFXOHZjMlZ5ZG1salpXRmpZMjkxYm5RdmMyVnlkbWxqWlMxaFkyTnZkVzUwTG5WcFpDSTZJalJpT0RWak5tWmpMV1ZrWXpFdE5HRTNZeTFpT0dWaUxUVmxNVEUyTURrd1lXRmhNaUlzSW5OMVlpSTZJbk41YzNSbGJUcHpaWEoyYVdObFlXTmpiM1Z1ZERwcmRXSmxjMnhwWTJVdFlYWmxjMmhoT210MVltVnpiR2xqWlMxeVltRmpMWGR2Y210bGNpMW5hMlV0ZDI5eWEyVnlMVEVpZlEuRVNkVm1vajA3OXBrSmkzbktGMFhuZE9sa2Q4aGJJdUNaLURpdG1UOGZkVmRkeGhPWEdfcVFSSXZqN05tb1JMUC1xdzJacHliZmgtYWJRVUtNSHFTTGM0aFNBMFhaTTI2UnprWUpRZU9NUE80dGdqdjVQaWNYRkJDbFo0Vk93d2V0WE5Ldi1TLVhiOWVYeHBGQjVDZUozVm0tZjlBV2xXZkMzLUg3aTBoZVlXaWdOSU85SEFFeU43b1RtYXV3WFRRRUg3YVlNOURpZmRreHNaTjZyeTlPZ09TbzJMcUQyc2F2bzNVSU5iX3d6bzdkc2t3T0NuZjdOQk1pMzJOYmZTZ2dBaFdNOUVFM0hyUzFXMWgzZEJLZURMZjEzNXVGZjB4N29NM2lfSUliTzNnZlhYaDVKN3UwS1RIYXNvVFRwVFJhY29NVWkzZ3lnaFN5R0Y0dmVXSzZB
cluster:
name: worker1
endpoint: https://34.86.154.17:6444
netop:
networkInterface: eth0
kubesliceNetworking:
enabled: true
imagePullSecrets:
repository: https://index.docker.io/v1/
username: Kumar
password: 5585799-5d5a-48fa-b805-f4a1ffb110
email: aveshaenterprise@gmail.com
Install the Slice Operator
You must install the Slice Operator on the cluster to register it with the KubeSlice Controller. Install the Slice Operator using the values or secrets file that you downloaded in step 5 of Register a Worker Cluster.
To install the Slice Operator:
-
Switch the context to the worker cluster using the following command:
kubectx <cluster name>
-
Run the command you copied in step 5 of Register a Worker Cluster.
Example
helm upgrade -i kubeslice-worker kubeslice/kubeslice-worker --namespace kubeslice-system --create-namespace -f /<path-to-file>/mars-secret.yaml
Validate the Installation
To validate the Slice Operator installation on a cluster, check the status of the pods that belong to the kubeslice-system namespace.
Use the following command to check if the pods are running:
kubectl get pods -n kubeslice-system
Example Output
NAME READY STATUS RESTARTS AGE
forwarder-kernel-94c8q 1/1 Running 0 8h
kubeslice-dns-679966fd4c-4ppdb 1/1 Running 0 8h
kubeslice-netop-plz52 1/1 Running 0 8h
kubeslice-operator-77fc84cb54-9j2jm 2/2 Running 0 4h36m
nsm-admission-webhook-k8s-864c87f5d4-cqlxn 1/1 Running 0 8h
nsm-install-crds-lbvrx 0/1 Completed 0 2m35s
nsmgr-zqzzg 2/2 Running 0 8h
registry-k8s-84f468f675-g9hzg 1/1 Running 0 8h
spire-install-clusterid-cr-488p6 0/1 Completed 0 2m21s
spire-install-crds-dcm75 0/1 Completed 0 2m28s
The status changes to Registered after all the Slice Operator components are up and running.
If the Node IP is not detected during cluster registration, the Clusters page displays an error icon for that cluster. You can update the correct Node IP by editing a cluster.
Edit a Cluster
To edit a cluster:
-
Go to k8s Clusters on the left sidebar.
-
On the Clusters page, click the edit icon for the cluster to change any configuration.
infoThe names of the cluster and the cloud are immutable.
-
Update the values. You can only edit the Cluster Kube API Endpoint and the Node IP under advanced options.
-
Click Edit Cluster to save the settings.
Detach a Worker Cluster
To detach a worker cluster from a slice workspace:
-
Go to Slice Workspaces on the left sidebar.
-
Click the > icon at the right for the slice workspace from which you want to detach a cluster.
-
Click the edit icon at the right.
-
Click the Edit Slice button.
-
In the Connect Clusters tab, under Slice Clusters, click the minus icon for the cluster you want to detach.
-
Enter DETACH, and then click the Detach Cluster button.
noteDetaching a cluster from a slice workspace might take some time, depending on the underlying resources.
Deregister a Cluster
You can only deregister or delete a cluster only after detaching it from its connected slice workspaces.
To delete or deregister a worker cluster:
-
Go to k8s Clusters on the left sidebar.
-
On the Clusters page, click the delete icon for the cluster that you want to delete.
-
Enter DELETE to confirm, and then click the Delete Cluster button.