Create the cluster enrollment first
- Open Collectors and create a Kubernetes cluster enrollment.
- Copy the cluster ID and one-time enrollment token.
- Create the namespace and store the token in a Kubernetes Secret, not a Helm values file.
Shell
kubectl create namespace pcapillary
kubectl -n pcapillary create secret generic pcapillary-bootstrap \
--from-literal=token='TOKEN_FROM_PCAPILLARY'Download collector release v0.2.3
Copy a direct package URL or a complete curl command for the target system.
| Target | Package | Copy |
|---|---|---|
| Kubernetes Helm chart | pcapillary-collector-0.2.3.tgz | |
| Checksums | SHA256SUMS |
Create reusable values and install the collector DaemonSet
Keep this file outside the downloaded chart and reuse it for every upgrade. The enrollment token remains in the Kubernetes Secret because Helm stores values in release history.
collector-values.yaml
backend:
url: https://pcapillary.example.com
cluster:
id: CLUSTER_ID_FROM_PCAPILLARY
bootstrap:
existingSecret: pcapillary-bootstrapShell
VERSION=0.2.3
RELEASE_BASE=https://github.com/qwerty-iot/pcapillary-releases/releases/download
curl -fLO "$RELEASE_BASE/v$VERSION/pcapillary-collector-$VERSION.tgz"
curl -fLO "$RELEASE_BASE/v$VERSION/SHA256SUMS"
grep "pcapillary-collector-$VERSION.tgz" SHA256SUMS | sha256sum --check -
helm upgrade --install pcapillary-collector ./pcapillary-collector-$VERSION.tgz \
--namespace pcapillary \
--values collector-values.yaml
kubectl -n pcapillary rollout status daemonset/pcapillary-collectorThe default runs on every schedulable Linux node, tracks all namespaces, uses host networking, and captures the configured host interface. It does not enter pod network namespaces.
Confirm the collector is online
- Return to Collectors.
- Confirm the expected version, Kubernetes nodes, and interfaces appear.
- Review the DaemonSet logs if a collector remains offline.
- Run a short test capture after registration succeeds.