goldmane/README.md
Goldmane is a flow aggregation service. It provides a central, aggregated view of network flows in a Kubernetes cluster.
Some key packages:
The following provides an example of how to interact with Goldmane APIs on a Calico cluster from your local machine.
To connect to the Goldmane gRPC API in a production Calico cluster, you will need a few things:
You can fetch these from a typical Calico cluster, for example the following commands collect calico/node client credentials for use:
kubectl get secret -n calico-system node-certs --template='{{index .data "tls.key"}}' | base64 -d > tls.key
kubectl get secret -n calico-system node-certs --template='{{index .data "tls.crt"}}' | base64 -d > tls.crt
kubectl get secret -n calico-system goldmane-key-pair --template='{{index .data "tls.crt"}}' | base64 -d > ca.crt
Goldmane itself is accessible via port-forwarding:
kubectl port-forward -n calico-system svc/goldmane 7443:7443
You can now write code using the API defined in proto/api.proto, and access Goldmane APIs directly at localhost:7443. It may be useful to use the existing client code at pkg/client/flowservice.go as a starting point.