## Summary - Split k8s migration plan into phases folder for easier navigation - Added `tag:k8s` to Pulumi ACLs for Kubernetes workloads - Phase 1 work in progress ## Phase 1 Goals - Tailscale Kubernetes Operator - CloudNativePG Operator - PostgreSQL cluster for future app migrations ## Deployment and Testing - [ ] Review Phase 1 plan - [ ] `mise run tailnet-preview` to verify ACL changes - [ ] `mise run tailnet-up` to apply ACL changes - [ ] Create Tailscale OAuth client (manual) - [ ] Deploy operators and PostgreSQL cluster 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.tail8d86e.ts.net/eblume/blumeops/pulls/29
1.1 KiB
1.1 KiB
CloudNativePG Operator
Kubernetes operator for managing PostgreSQL clusters with high availability.
Source
- Helm chart:
cloudnative-pgfrom https://cloudnative-pg.github.io/charts - Documentation: https://cloudnative-pg.io/documentation/
Deployment
Managed via ArgoCD Application using Helm source (not kustomize). The Application points directly to the upstream Helm repository.
ArgoCD CLI Commands
# Check application status
argocd app get cloudnative-pg
# Trigger a sync
argocd app sync cloudnative-pg
# View deployment history
argocd app history cloudnative-pg
Verification
# Check operator pod is running
kubectl get pods -n cnpg-system
# Check operator logs
kubectl logs -n cnpg-system -l app.kubernetes.io/name=cloudnative-pg
# Check CRDs are installed
kubectl get crd | grep cnpg
Files
| File | Description |
|---|---|
values.yaml |
Helm values for customization |
README.md |
This file |
Notes
- The operator is deployed to
cnpg-systemnamespace - PostgreSQL clusters are created separately using the
ClusterCRD (see Step 7) - No secrets required for the operator itself