A basic Datacenter Interconnect (DCI) lab for with leaf/spine switches powered by SR Linux and DC Gateway and P routers powered by Nokia 7750 SR OS.
In this lab, you will see two DC fabrics with VXLAN/EVPN and a WAN network that interconnects them with BGP-VPN.
There are clients connected to Leaf routers(see the topology below) in every site to test the connectivity in the fabric as well as inter-dc.
This lab requires containerized images of both SR Linux and SROS and a valid vSIM license for SROS. SR Linux container image is automatically pulled from the public repository upon deploying the lab. (See the topology file) SROS container image is available via a Nokia private repository, but can also be derived from an vSIM VM image via VRNETLAB.
From within the cloned directory run:
sudo clab deploy -c
helm upgrade --install --create-namespace --namespace c9s \
clabernetes oci://ghcr.io/srl-labs/clabernetes/clabernetes
alias clabverter='sudo docker run --user $(id -u) \
-v /opt/nokia:/opt/nokia \
-v $(pwd):/clabernetes/work --rm \
ghcr.io/srl-labs/clabernetes/clabverter:latest'
clabverter --stdout --naming non-prefixed --disableExpose \
| kubectl apply -f -
The netcheck.sh
script will run ping from client1 in DC1 to other clients. That will validate connectivity within and between the dc fabrics.
./netcheck.sh
Automated ping tests from client1 towards client2, client3 and client4 can be done with:
./netcheck-c9s.sh
The output will show the success or failure of the ping tests for each destination.
To run the ping tests manually, use the following command:
kubectl exec -it -n c9s-dci <pod-name-for-client1> -- docker exec -it client1-dc1 ping 10.0.0.4
sudo clab destroy -c
kubectl delete namespace c9s-dci
If you wish to also uninstall the clabernetes:
helm uninstall -n c9s clabernetes && \
kubectl delete namespace c9s
pcapc9s.sh <host-with-kubectl> c9s-dci client4 eth1
sed -ir 's/([a-zA-Z0-9]+)_dc/\1-dc/g' dci.clab.yml