- The Slice Router is a network service component that provides a virtual L3 IP routing functionality within a cluster for the Slice overlay network.
- Each slice in a cluster has one slice router with the possibility of a redundant pair option.
- The Slice Operator manages the lifecycle of a Slice Router by overseeing deployment, configuration, continuous monitoring, and management of the Slice Router.
- The Slice Router provides a full mesh network connectivity between the application pods and slice gateway pods in a cluster.
Please refer to our documentation on:
Try our example script in kind-based example.
Before you begin, make sure the following prerequisites are met:
- Docker is installed and running on your local machine.
- A running
kind
. kubectl
is installed and configured.- You have prepared the environment to install
kubeslice-controller
on the controller cluster andworker-operator
on the worker cluster. For more information, see Prerequisites.
To download the latest router-sidecar docker hub image, click here.
docker pull aveshasystems/kubeslice-router-sidecar:latest
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 update
-
Clone the latest version of router-sidecar from the
master
branch.git clone https://github.com/kubeslice/router-sidecar.git cd router-sidecar
-
Edit the
VERSION
variable in the Makefile to change the docker tag to be built. The image is set asdocker.io/aveshasystems/router-sidecar:$(VERSION)
in the Makefile. Modify this if required.make docker-build
-
You can load the router-sidecar docker image into the kind cluster.
kind load docker-image my-custom-image:unique-tag --name clustername
Example
kind load docker-image aveshasystems/router-sidecar:1.2.1 --name kind
-
Check the loaded image in the cluster. Modify the node name if required.
docker exec -it <node-name> crictl images
Example.
docker exec -it kind-control-plane crictl images
Update the chart values file, yourvaluesfile.yaml
that you have previously created.
Refer to the values.yaml to create yourvaluesfiel.yaml
and update the routerSidecar image subsection to use the local image.
From the sample:
routerSidecar:
image: docker.io/aveshasystems/kubeslice-router-sidecar
tag: 0.1.0
Change it to:
routerSidecar:
image: <my-custom-image>
tag: <unique-tag>
Deploy the Updated Chart
make chart-deploy VALUESFILE=yourvaluesfile.yaml
Verify the installation by checking the status of router-sidecar pods belonging to the kubeslice-system
namespace.
kubectl get pods -n kubeslice-system | grep vl3-slice-*
Example output
vl3-slice-router-red-5b9df8d4dd-hkgkj 2/2 Running 0 26m
Apache 2.0 License.