stack.basicstack.de/infrastructure/README.md

51 lines
2 KiB
Markdown
Raw Permalink Normal View History

# Infrastructure
This directory contains cluster-wide infrastructure configurations that support all applications.
## Operational procedures (agent-facing)
- **[OS_UPDATE_PROCEDURE.md](OS_UPDATE_PROCEDURE.md)** — weekly rolling Ubuntu OS update for all cluster nodes (drain → apt → reboot → verify → uncordon → cluster health → next). Never touches k3s config.
- **[OS_UPDATE_ROUTINE.md](OS_UPDATE_ROUTINE.md)** — the Paperclip routine that fires the above weekly.
- **[K3S_OPERATIONS.md](K3S_OPERATIONS.md)** — k3s version upgrades (separate concern from OS updates).
- **[ADD_WORKER_NODE.md](ADD_WORKER_NODE.md)** — adding a worker node.
- **[CLUSTER_ACCESS.md](CLUSTER_ACCESS.md)** — SSH / kubectl access.
## Structure
### `networking/`
Network-level configurations including:
- **[Network Architecture](networking/NETWORK_ARCHITECTURE.md)** - Comprehensive network architecture documentation
- **[DNS Requirements](networking/DNS_REQUIREMENTS.md)** - DNS records and configuration guide
- Ingress controller configurations (Traefik)
- Network policies
- Load balancer configurations (k3s ServiceLB)
- Certificate management (cert-manager, TLS)
- Certificate reloading (Stakater Reloader)
### `monitoring/`
Observability infrastructure:
- Prometheus operator and configurations
- Grafana dashboards and datasources
- Logging stack (Loki, Promtail, etc.)
- Alert rules and notification channels
- Service monitors and pod monitors
## Purpose
Infrastructure configurations in this directory are shared across all applications. Changes here can affect the entire cluster, so:
1. Test thoroughly before applying
2. Document all changes
3. Consider the impact on existing deployments
4. Coordinate with other team members
## Adding Infrastructure Components
When adding new infrastructure components:
1. Create appropriate subdirectories if needed
2. Include clear documentation
3. Define dependencies and prerequisites
4. Provide rollback procedures
5. Update this README with the new component