Quint on Kubernetes is early access. The Quint images for Kubernetes (
quint-sidecar, quint-qhelper and quint-node-installer), the Helm charts and the admission webhook are not available for download. Your Quint contact gives you each of them, with the image digests for your release, so talk to your Quint contact before you plan an install. This does not apply to the agent-base image for Docker.What it gives you
- The agent reaches the internet only through Quint. Its proxy settings point at Quint’s proxy on
127.0.0.1:9090, and any traffic that goes anywhere else is dropped. - The agent can’t reach or tamper with Quint. Quint’s containers run as a separate user, the agent sees Quint’s files read-only, and the admission webhook refuses
kubectl execandkubectl attachinto Quint’s containers. - The agent is cut off if Quint stops. Quint starts first, and the agent container starts only after Quint passes its startup check. If Quint stops or finds the setup was bypassed, the pod stays cut off from the network.
The Kubernetes setups
The Standard and Restricted setups need the Quint admission webhook, which checks every pod in a governed namespace before Kubernetes creates it. The charts, the Quint images and the webhook all come from your Quint contact.
Requirements
These apply to the Standard and Restricted setups. For a pod built from agent-base, see On Kubernetes.- Kubernetes 1.33 or newer.
- containerd 2.0 or newer on every node that runs governed pods.
- Linux nodes with nftables and cgroup v2. Quint pods always carry
kubernetes.io/os: linux. - An agent image that runs as a non-root user. You give its user ID as
agentUID, and it can’t be0or10001(Quint’s own user). An image whose entrypoint needs root does not run unchanged.
Networking for the restricted setup
The node installer chains Quint’s network plugin after your cluster’s own network plugin. The restricted setup works with these:Network policies
The Quint sidecar must reach the Quint API,https://api.quintai.dev unless you set quint.apiURL, and Quint’s ingest address, which you can change with quint.ingestURL. If a Kubernetes NetworkPolicy blocks the sidecar from reaching them, the sidecar can’t enrol, the agent container never starts, and every protected pod in that namespace is cut off. Add an egress rule that lets the Quint sidecar reach the Quint API.
The sidecar also needs the cluster DNS service. If you turn on record delivery, it needs the admission webhook’s Service address too. See Record delivery.
Status recorded for runs
Quint records a status on each run. The Workloads page does not show it. To learn a run’s status, ask your Quint contact.
A run is never recorded as contained without the webhook’s record. To get records, the webhook needs the API server’s client certificate and record delivery turned on, and Quint must have registered your webhook’s key. Until all three are in place, every run is unverified. See The Quint admission webhook.