Extension for istio envoy to allow trace personal data between rest microservices in kubernetes
This helm chart is used to deploy the envoy filter in a target kubernetes-namespace.
- Add the helm chart repository (if not already done):
helm repo add hawk https://privacyengineering.github.io/hawk-helm-charts/
- Install the istio service mesh using
istioctl
with the demo profile:istioctl install --set profile=default -y
- Create the namespace where hawk is intended to be applied:
kubectl create namespace sock-shop
- Create
values.yaml
and modify to your needs (see default values invalues.yaml
and the documentation for Parameters):cat <<EOF > values.yaml # example values.yaml hawkEnvoyPlugin: namespace: sock-shop hawkServiceApiUrl: http://hawk-service.hawk.svc.cluster.local/api httpbin: true EOF
- Install hawk envoy plugin and all it's services:
helm dependency update helm install -f values.yaml sock-shop-hawk-ep hawk/hawk-envoy-plugin --namespace hawk-envoy-plugin --create-namespace
- Install the rest of the demo architecture:
kubectl apply -f ./02.sock-shop/
- Kubernetes 1.16+
- Helm 3.0+
- Istio 1.6+
- Hawk
Name | Description | Value |
---|---|---|
hawkEnvoyPlugin.namespace |
The target namespace to collect tracing data from | "sock-shop" |
hawkEnvoyPlugin.hawkServiceApiUrl |
Hawk Service Api Url in url-schema | http://hawk-service.hawk.svc.cluster.local/api |
hawkEnvoyPlugin.httpbin |
Whether a httpbin-namespace should be created for testing purposes | true |
To test the plugin, the helm-chart uses the httpbin-namespace, which is created by the helm chart.
Note: The httpbin-namespace is only created if the hawkEnvoyPlugin.httpbin
parameter is set to true
.
helm test -n hawk-envoy-plugin sock-shop-hawk-ep --logs