A CLI tool for inspecting VPP instances running anywhere
711
VPP-probe is a command-line tool for inspecting and monitoring of VPP instances running in any kind of environment (Kubernetes, Docker, Local). It aims to help during debugging of issues that occur in the distributed systems containing several VPP instances.
You can get vpp-probe by downloading a pre-compiled binary, using the official Docker image or building it from source.
Go to GitHub Releases and download a binary pre-compiled for your system.
Go to DockerHub Tags for list of available tags.
# Pull the latest image
docker pull ligato/vpp-probe
# Print version
docker run --rm -it ligato/vpp-probe version
To install vpp-probe from source simply run:
# Install the latest version
go install go.ligato.io/vpp-probe@latest
# if you have Go older than 1.16 run: GO111MODULE=on go get go.ligato.io/vpp-probe
# Print version
vpp-probe version
Where is your VPP running?
Basic commands for VPP running in a Kubernetes pod
# Discover VPP instances in a cluster
vpp-probe --env=kube discover
# Execute a command on all VPP instances
vpp-probe --env=kube exec -- "vppctl show counters"
# Trace packets on all VPP instances for the duration of ping command
vpp-probe --env=kube trace "kubectl exec -it mypod -- ping -c 1 10.10.1.1"
Specify target cluster(s) (kubeconfig/context)
# Run on different cluster by providing custom kubeconfig and/or context
vpp-probe --kubeconfig="my.kubeconfig" <command>
vpp-probe --kubecontext="kind-2" <command>
# Run on multiple clusters by adding another kubeconfig/context separated by comma
vpp-probe --kubeconfig="kubeconfig1,kubeconfig2" <command>
vpp-probe --kubecontext="kind-2,kind-3" <command>
When running vpp-probe from Docker image
# Run from Docker image
docker run -it --net=host --volume "$HOME/.kube/config:/.kube/config" ligato/vpp-probe --env=kube <command>
Basic commands for VPP running in a Docker container
# Discover VPP instances in Docker
vpp-probe --env=docker discover
# Execute a command on all VPP instances
vpp-probe --env=docker exec -- "vppctl show counters"
# Trace packets on all VPP instances for the duration of ping command
vpp-probe --env=docker trace "docker exec -it mycontainer ping -c 1 172.17.0.3"
Specify a different Docker daemon
# Run on different docker host
vpp-probe --dockerhost="/var/run/docker2.sock" <command>
When running vpp-probe from Docker image
# Run from Docker image
docker run -it --net=host --volume "/var/run/docker.sock:/var/run/docker.sock" ligato/vpp-probe --env=docker <command>
Basic commands for VPP running locally
# Discover VPP instances running as local process
vpp-probe --env=local discover
# Execute a command on all VPP instances
vpp-probe --env=local exec -- "vppctl show counters"
# Trace packets on all VPP instances for the duration of ping command
vpp-probe --env=local trace "ping -c 1 192.168.1.1"
When running vpp-probe from Docker image
# Run from Docker image
docker run -it --net=host --pid=host --volume "/run/vpp:/run/vpp" ligato/vpp-probe --env=local <command>
For more detailed usage information, read docs/USAGE.md
# Run integration tests
go test ./test/integration
# Run e2e tests
go test ./test/e2e
For more information about testing, read docs/TESTING.m
Read docs/DEVELOP.md for information about vpp-probe development.
Content type
Image
Digest
sha256:35428a648…
Size
13.7 MB
Last updated
over 3 years ago
docker pull ligato/vpp-probe