I just wanted to share this. As we know, ZPA connector is available as a Docker image. I just wanted to share that it is possible to deploy this in a Kubernetes cluster since Kubernetes natively supports orchestrating docker containers.
The official documentation at App Connector Deployment Guide for Docker | Zscaler lists 2 docker images - AMD64 and ARM64.
I deployed this successfully in a GKE cluster using the AMD64 image. To do you, you can deploy the zpa-connector as a Kubernetes Deployment workload. Here’s the deployment manifest that I used.
apiVersion: apps/v1
kind: Deployment
metadata:
name: zpa-connector
spec:
selector:
matchLabels:
app: zpa-connector
replicas: 3
template:
metadata:
labels:
app: zpa-connector
spec:
containers:
- name: zpa-connector
image: "zscaler/zpa-connector:latest.amd64"
env:
- name: ZPA_PROVISION_KEY
value: "<replace with your ZPA provisioning key>"
securityContext:
capabilities:
add: ["NET_ADMIN", "NET_BIND_SERVICE", "NET_RAW", "SYS_NICE", "SYS_BOOT", "SYS_TIME"]
It’s important you include securityContext.capabilities.add or the connector will fail to work properly. The capabilities listed there are taken right out of the help article in the URL above.