Deploy the Cortex KSPM agent to on-premises Kubernetes clusters using Flux CD. Flux CD is a declarative GitOps continuous delivery tool that automates agent deployment and configuration synchronization from a Git repository.
Install the following Flux controllers:
Source Controller
Kustomize Controller
Helm Controller
Notification Controller
flux install
Verify that all controllers are running.
flux check #Expected output: ✔ helm-controller: deployment ready ✔ kustomize-controller: deployment ready ✔ notification-controller: deployment ready ✔ source-controller: deployment ready
Create the authentication secret.
# For username/password or token (HTTP) kubectl create secret generic gitlab-auth \ --namespace=flux-system \ --from-literal=username=<GIT_USERNAME> \ --from-literal=password=<GIT_PASSWORD_OR_TOKEN> #For SSH-based authentication flux create secret git gitlab-auth \ --namespace=flux-system \ --url=ssh://git@gitlab.example.com/kspm/kspm-gitops.git \ --private-key-file=<path-to-private-key>
Create a GitRepository source.
flux create source git kspm-gitops \ --url=https://gitlab.example.com/kspm/kspm-gitops.git \ --branch=main \ --interval=1m \ --secret-ref=gitlab-auth \ --namespace=flux-system
Verify the source is connected.
flux get source git kspm-gitops #Expected output: NAME REVISION SUSPENDED READY MESSAGE kspm-gitops main@sha1:abc123 False True stored artifact for revision 'main@sha1:abc123'
Deploy the connector.
```bash flux create kustomization kspm-agent \ --source=GitRepository/kspm-gitops \ --path="./charts/overlays" \ --prune=true \ --interval=5m ```