This example shows kernel to kernel example where we exclude prefixes used by 2 service endpoints on the client side.
NSC and NSE are using the kernel
mechanism to connect to its local forwarder.
Make sure that you have completed steps from basic or memory setup.
Deploy NSC, services and NSEs:
kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes-client?ref=7a2735f6f8c8ed02d058c1a6a2f04846a3d88cad
Wait for applications ready:
kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-exclude-prefixes-client
kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-1 -n ns-exclude-prefixes-client
kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-2 -n ns-exclude-prefixes-client
Ping from NSC to NSE1:
kubectl exec pods/alpine -n ns-exclude-prefixes-client -- ping -c 4 172.16.1.96
Ping from NSC to NSE2:
kubectl exec pods/alpine -n ns-exclude-prefixes-client -- ping -c 4 172.16.1.98
Ping from NSE1 to NSC:
kubectl exec deployments/nse-kernel-1 -n ns-exclude-prefixes-client -- ping -c 4 172.16.1.97
Ping from NSE2 to NSC:
kubectl exec deployments/nse-kernel-2 -n ns-exclude-prefixes-client -- ping -c 4 172.16.1.99
Delete ns:
kubectl delete ns ns-exclude-prefixes-client