kubeslice-controller uses Kubebuilder, a framework for building Kubernetes APIs using custom resource definitions (CRDs).
The KubeSlice Controller orchestrates the creation and management of slices on worker clusters. It is strongly recommended to use a released version. Follow the instructions provided in this document.
For more information, see getting started with kind clusters.
- Docker installed and running in your local machine
- A running
kindcluster kubectlinstalled and configured- Follow the getting started from above to install
kubeslice-controllerandworker-operator.
If you have not added avesha helm repo yet, add it.
helm repo add avesha https://kubeslice.github.io/charts/Upgrade the avesha helm repo.
helm repo updateLatest docker image - kubeslice-controller
- Clone the latest version of kubeslice-controller from the
masterbranch.
git clone https://github.com/kubeslice/kubeslice-controller.git
cd kubeslice-controller- Adjust image name variable
IMGin theMakefileto change the docker tag to be built. Default image is set asIMG ?= aveshasystems/kubeslice-controller:latest. Modify this if required.
make docker-build- Loading kubeslice-controller image into your kind cluster (kind).
If needed, replace
aveshasystems/kubeslice-controllerwith your locally built image name in the previous step.
- Note: If you use a named cluster, you must specify the name of the cluster you wish to load the images into. See loading an image into your kind cluster.
kind load docker-image aveshasystems/kubeslice-controller --name cluster-nameExample
kind load docker-image aveshasystems/kubeslice-controller --name kind- Check the loaded image in the cluster. Modify node name if required.
- Note:
kind-control-planeis the name of the Docker container. Modify if needed.
docker exec -it kind-control-plane crictl images- Create chart values file
yourvaluesfile.yaml. Refer to values.yaml on how to adjust this and update thekubeslice-controllerimage to the local build image.
From the sample:
kubeslice:
---
---
controller:
---
---
image: aveshasystems/kubeslice-controller
tag: 0.1.1
Change it to:
kubeslice:
---
---
controller:
---
---
image: <my-custom-image>
tag: <unique-tag>
-
Deploy the updated chart.
make chart-deploy VALUESFILE=yourvaluesfile.yaml
kubectl get pods -n kubeslice-controllerSample output to expect
NAME READY STATUS RESTARTS AGE
kubeslice-controller-manager-5b548fb865-kzb7c 2/2 Running 0 102s
For more information, see uninstalling KubeSlice.
make chart-undeployApache License 2.0