The following steps provide a guide to deploy the NDT prototype (using cluster with Kind), including the Edge (using cluster microk8s). It is necessary to establish the connections between the network machines and the edge before deploying the steps. Follow the steps below:
You must first install the necessary packages, including KNE and Kind. For example previous steps required:
- Install go
- Install Docker
- Install kubectl
- Install kind
kne deploy deploy/kne/kind-bridge.yamlYou can find more information in the official repository: KNE. After successfully setting up KNE and Kind, you may move on to the next steps:
Run the following commands on the host machine to create and bring up the VXLAN interface:
sudo ip link add vxlan-1 type vxlan id 96 dev enp1s0 dstport 47 remote <remote-ip-host-L2S-M>
sudo ip link set vxlan-1 up
sudo brctl addif br-6200aa9847f8 vxlan-1
3.1. Update Network Interface (peer_intf) In the gateway2.yaml file, update the peer_intf field to eth0 for link 2, which refers to the connection between the pod and its host machine
- uid: 2
peer_pod: localhost
local_intf: eth2
local_ip: 10.0.1.20/24
peer_intf: eth0
3.2. Update Image Pull Policy (imagePullPolicy)
In the gateway deployment file (gateway2.yaml), add the IfNotPresent image pull policy. This prevents re-downloading the image if it’s already available on the node, saving time and bandwidth for repeated deployments.
image: ghcr.io/yennym3/gateway:latest
imagePullPolicy: IfNotPresent
It is necessary to load the images used by the server, gateway and cEOS(routers) in the network into a kind cluster there is a 3 step process:
-
Pull the desired images:
docker pull ghcr.io/yennym3/server:latest docker pull ghcr.io/yennym3/gateway:latest
-
Load the images gatweway/server into the
kindcluster:kind load docker-image ghcr.io/yennym3/server:latest --name=kne kind load docker-image ghcr.io/yennym3/gateway:latest --name=kne
-
Load the cEOS (Arista) image into the kind cluster:
NOTE:
ceos:latestis the default image to use for a node of vendorARISTA. It's necessary to download the image from the official Arista website to access the cEOS image. In this demo, the tested version is 4.29.2F
cat cEOS-lab-4.29.2F.tar | docker import - ceos
kind load docker-image ceos:latest --name=kneYou can check a full list of images loaded in your kind cluster using:
docker exec -it kne-control-plane crictl imagesCreate a VXLAN interface with the following command, replacing with the IP address of the remote host:
sudo ip link add vxlan-1 type vxlan id 96 dev enp1s0 dstport 47 remote <remote-ip-host-KNE>
sudo ip link set vxlan-1 up
Once you have configured the connection between the machines, you can continue with the guide to proceed with the scenario deployment