Mimari
podmaker, bir control plane artı deklaratif bir planı çalışan altyapıya çeviren ve onu reconcile eden bir dizi odaklı servistir.
Büyük resim
podmakerctl (CLI) Tarayıcı (panel) │ │ ▼ ▼ ┌───────────────────────── Control plane ─────────────────────────┐ │ workspace · IAM · plan · release · audit · vault connection │ └───────┬───────────────────────┬───────────────────────┬─────────┘ │ │ │ ▼ ▼ ▼ topology-planner vault-broker event-bridge (NATS↔SSE) │ │ │ ▼ ▼ ▼ cloud-broker vault-bridge-agent metrics-consumer (her bulut) (senin secret manager) (ClickHouse)Control plane
Control plane kayıt sistemidir: workspace’ler, kimlik, planlar, release’ler,
audit log ve vault-connection referansları. Panel UI’ı ve podmakerctl’in
konuştuğu Bearer-authed API’ı sunar; gerçek işi yapan workflow’ları tetikler.
Planlama ve provisioning
- topology-planner ayrıştırılmış bir planı deterministik bir aksiyon listesine çevirir ve her aksiyonu doğru controller’a dağıtır.
- cloud-broker, control-plane isteklerini provider adaptörlerine çeviren stateless bir çeviricidir (Hetzner, DigitalOcean, AWS, Azure, GCP — ve mevcut sunucular için BYO-SSH). Keşif ve provisioning’i halleder.
- Controller’lar her biri bir node tipini reconcile eder:
db-controller— veritabanları (primary/replica replikasyon)lb-controller— topoloji edge’lerinden render edilen nginx load balancercache-controller— Redis (replica’lar için Sentinel ile)mesh-controller— node’lar arası WireGuard özel mesh
Agent fabric
Her sunucu, ilk açılışta dahili bir CA (step-ca) ile enroll olan ve bölgesel bir agent-gateway’e mTLS üzerinden bağlanan bir agent çalıştırır. Agent, heartbeat’lerle sağlık ve metrik raporlar ve aynı kanaldan geri gönderilen komutları çalıştırır. Install, deploy ve config değişiklikleri her makineye böyle ulaşır.
Secret’lar
- vault-broker meta-cluster vault’una karşı kapsamlı, tam-zamanında lease’ler üretir ve cubbyhole içine sarar.
- vault-bridge-agent kendi ağında çalışır ve kendi secret manager’ına workspace başına izole proxy yapar.
Tam akış için Vault & Secrets.
Event ve metrik
- event-bridge NATS’i SSE’ye köprüler — panel canlı release ve log stream’i gösterir.
- metrics-consumer metrik stream’ini dayanıklı okur ve örnekleri ClickHouse’a batch’ler.
Köken
podmaker, tüm site-barındırma deneyimini — siteler, veritabanları, deploy’lar,
pipeline’lar, backup’lar — tek bir Go binary’sinden, tek bir Postgres
veritabanıyla çalıştıran tek-binary bir panel (cmd/podmaker) olarak başladı.
Yukarıdaki çok-servisli control plane, bu çekirdeğin çok-kiracılı, multi-cloud
evrimidir.