11. Risks and Technical Debts

Table 1. Risks and technical debts
ID Risk

TR-001

The team is too small

The cluster is operated by a very small team ([CO-001 Small Team ], [MT02 Small Team Operability] . Operational knowledge (bootstrap procedure, Keycloak realm configuration, Bitwarden layout) is concentrated in very few people. Mitigation: keep as much as possible in this repository and in pandur-cluster-bootstrap/README.md rather than in undocumented manual steps.

TR-002

Hetzner Cloud Controller Manager was not GitOps-managed

(erledigt)

TR-003

cnpg-system Application manifests reference a non-existent path

(erledigt)

TR-004

Grafana ingress values requested the nginx ingress class

(erledigt)

TR-005

Single infrastructure provider dependency

The entire cluster — compute, network, load balancer, block storage, and (via Hetzner Robot/hidrive) part of the backup target — runs on Hetzner Cloud ([CT-001 Infrastructure Provider ]). An extended Hetzner outage or account issue affects availability ([RE01 24/7 Availability] with no fallback provider.

TR-006

Bitwarden Secrets Manager is the only secret backend

Every runtime secret in the cluster (database credentials, TLS private keys stored via ExternalSecret, OIDC client secrets, …​) is ultimately fetched from a single Bitwarden Secrets Manager organization ([CT-007 Secrets via External Secrets ], [SE02 No Local Secrets in Git] . An outage or misconfiguration of Bitwarden, or of the ClusterSecretStore, blocks provisioning of any new secret-backed resource cluster-wide, although already-materialized Kubernetes `Secret`s continue to work.