Proxy Service with Kubernetes
Deploying Qpoint Proxy as a Service in Kubernetes
This guide explains how to deploy the Qpoint Proxy as a service in your Kubernetes cluster and configure pods to route traffic through it using qpoint-init. This approach allows you to route traffic through the Qpoint Proxy for multiple pods or applications without needing to deploy it as a sidecar in each pod.
Prerequisites
Kubernetes cluster
kubectl
command-line toolHelm installed
Qpoint registration token (obtainable from app.qpoint.io)
Install Qpoint Helm Repository
First, add the Qpoint Helm repository:
Deploy Qpoint Proxy
Deploy Qpoint Proxy using Helm. Replace $TOKEN
with your actual registration token:
You can find all configurable options with:
Verify the Deployment
Check if the Qpoint Proxy service is running:
You should see the Qpoint Proxy pod in the "Running" state and the service exposed.
Configure Pods to Use the Proxy
To route traffic through the Qpoint Proxy service, you'll use the qpoint-init container to set up iptables rules. Add the following to your pod specifications:
Note: The main container also needs the NET_ADMIN capability for the iptables rules to take effect.
Example Pod Configuration
Here's a complete example of a pod configured to use the Qpoint Proxy service:
Testing the Proxy
To test if the proxy is working:
Apply the example pod configuration:
Exec into the pod:
Make a request:
This request should be routed through the Qpoint Proxy service.
Notes
The Qpoint Proxy service is accessible cluster-wide at
qpoint-proxy.qpoint.svc.cluster.local
.Adjust the namespace in the service address if you deployed Qpoint Proxy to a different namespace.
You may need to configure network policies to allow traffic from your pods to the Qpoint Proxy service.
For SSL inspection, you'll need to install and configure custom CA certificates. Refer to the Qpoint documentation for details on certificate management.
The qpoint-init container sets up iptables rules to route traffic through the proxy.
Both the init container and the main container require the NET_ADMIN capability for the iptables rules to work correctly.
This setup allows you to use the Qpoint Proxy as a centralized service for multiple pods or applications in your Kubernetes cluster, with traffic routing handled transparently by qpoint-init.
Last updated