Table of contents
Make sure you have the following dependencies to run NSM:
- A Kubernetes Cluster - good options include:
In addition, to build NSM you will need:
You can build all of the containers needed for NSM, including a bunch of handle Network Service Endpoints (NSEs) and NSCs (Network Service Clients) that are useful for testing, but not part of the core with:
And if you are using the Kind machinery to run your K8s cluster (described a bit further down), you really want to use the following:
make k8s-save will build your containers and save them in
scripts/vagrant/images where they can be loaded by the Kins K8s cluster.
You can also selectively rebuild any component, say the
After installing you can verify it with
Network Service Mesh provides a handy Kind setup for running a small K8s cluster. Once you’ve done
make k8s-save, you can deploy to it with:
make k8s-save # build and save the NSM docker containers make kind-start # start up an nsm cluster named kind export KUBECONFIG="$(kind get kubeconfig-path --name="nsm")" # Point kubectl at your kind instance make k8s-load-images # load NSM docker containers into kind make helm-init # initialize helm make helm-install-nsm # install the nsm infrastructure
- icmp-responder - A simple example that connects an App Pod Client to a Network Service.
bash make helm-install-icmp-responder
- vpp-icmp-responder - A simple example that connects a vpp based Pod to a Network Service using memif.
bash make helm-install-vpp-icmp-responder
- vpn - An example that simulates an App Pod Client connecting to a Network Service implemented as a chain simulating a VPN Use Case
bash make helm-install-vpn
You can check to see things are working properly by typing:
which will try pinging from NSCs to NSEs.
You can remove the effects of helm-install-% with:
Table of contents