Security Overview
This slice covers the active security control-plane applications declared under lumie-infra/security/**. These workloads provide operator access, admission policy, and runtime detection. They are managed as a separate ArgoCD app-of-apps from the application layer under lumie-infra/applications/**.
Scope and ownership
Source paths
| Path | Role |
|---|---|
lumie-infra/security/application.yaml | ArgoCD app-of-apps entrypoint for the security slice |
lumie-infra/security/kustomization.yaml | Enumerates the security applications |
lumie-infra/security/teleport/** | Access plane and Teleport app proxying |
lumie-infra/security/kyverno/** | Admission policies and mutate guardrails |
lumie-infra/security/falco/** | Runtime threat detection |
Boundaries
- This slice owns the security applications only; Vault and cert-manager are called out in
security/kustomization.yamlas moved elsewhere. - External Secrets is no longer part of this slice; the repo uses Vault Secrets Operator instead.
- Teleport app access is part of the security slice even when it exposes tools documented under Operations Applications or other platform areas.
Runtime map
Security roles in the platform
Teleportis the operator access plane for browser apps and Kubernetes access.Kyvernoapplies admission-time mutation and audit-mode validation policies.Falcodetects node and container runtime behavior and forwards events to Loki.
Common operational patterns
- Every security
Applicationenables automated sync, pruning, and self-healing. - Some historical namespace metadata still carries Goldilocks labels, but Goldilocks and VPA are no longer deployed.
- Several components rely on external upstream charts, with Lumie-specific contracts expressed only in local values and manifest overlays.
- The most important cross-slice dependencies are Vault Static Secrets, the shared
infra-dbcluster, and Teleport access paths declared for non-security apps.
Common failure modes
- The ArgoCD app stays healthy while a cross-slice dependency is broken, such as a missing Vault secret or bad database credential.
- Upstream chart upgrades can change security defaults or generated object names without a visible diff in local manifests.
- Some security controls are intentionally audit-only, so policy violations remain possible even when the control plane is healthy.
- Some disabled app folders remain in the repository as historical artifacts;
security/kustomization.yamlis the source of truth for what is deployed.
Verification
kubectl get applications.argoproj.io -n argocd teleport teleport-agent kyverno falco
kubectl get pods -n teleport
kubectl get pods -n kyverno
kubectl get pods -n falco
Pages in this slice
- Kyverno
- Falco
- Teleport
- Applications overview for the non-security tools exposed through Teleport