blumeops/plans/k8s-migration/P9_cleanup.md
Erich Blume a8f4d00294 K8s Migration Phase 1: Infrastructure Setup (#29)
## 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
2026-01-19 09:49:52 -08:00

780 B

Phase 9: Cleanup

Goal: Remove deprecated services, harden system

Status: Pending

Prerequisites: Phase 8 complete


Steps

1. Stop/remove unused brew services

  • postgresql@18
  • grafana
  • miniflux
  • forgejo

2. Update ansible playbook

  • Remove migrated service roles
  • Add k8s deployment references

3. Configure Velero backups (optional)

  • Install with MinIO on sifaka
  • Schedule daily cluster backups

4. Update zk documentation

  • New architecture
  • Runbooks
  • DR procedures

Plan Completion

When all phases are complete and verified:

# Rename this folder to indicate completion
git mv plans/k8s-migration plans/k8s-migration.complete
git commit -m "Complete k8s migration plan"