İçeriğe geç

Plan yaşam döngüsü

Bir plan, bir topolojinin YAML tanımıdır. Yaşam döngüsü onu bir mülakat cevabından reconcile edilmiş altyapıya götürür; arada doğrulanabilir devir teslimlerle.

1. Üret

Terminal window
pdctl plan generate

Kısa bir mülakat, üç maliyet arketipinde bir plan üretir:

  • ECONOMY — en küçük uygulanabilir ayak izi.
  • BALANCED — makul production varsayılanları.
  • PERFORMANCE — pay ve yedeklilik.

2. Harcamadan önce incele

Terminal window
pdctl plan estimate plan.yaml # aylık maliyet
pdctl plan inspect plan.yaml # node bazında analiz
pdctl plan validate plan.yaml # şema kontrolü

Alternatifleri karşılaştır, ya da iki plan dosyasını veya iki Git ref’ini diff’le:

Terminal window
pdctl plan compare a.yaml b.yaml
pdctl plan diff a.yaml b.yaml # iki dosya
pdctl plan diff --git-a main --git-b feature/bigger-db \
--path plan.yaml # iki Git ref

Bir topoloji canlıyken maliyetini bütçeye karşı projekte et:

Terminal window
pdctl plan budget <topology-id>

3. Özelleştir

Terminal window
pdctl plan customise plan.yaml # etkileşimli editör
pdctl plan inspect plan.yaml --ai # AI-açıklamalı döküm

4. Uygula ve izle

Terminal window
pdctl plan apply plan.yaml
pdctl plan watch <topology-id> # canlı SSE yayılım
pdctl plan dashboard <topology-id> \
--tail-logs --ai # canlı TUI + AI özet
pdctl plan show <topology-id>

Bir şey ters görünürse:

Terminal window
pdctl plan rollback <topology-id>

5. Publish, imzala, verify, replay

Cluster’lar arası tekrarlanabilir deploy için planı bundle’la. plan publish, manifest.sha256 artı provenance.json yazar ve cosign PATH’te olduğunda manifest’i imzalar:

Terminal window
pdctl plan publish plan.yaml # bundle + manifest + provenance + cosign
pdctl plan publish plan.yaml --keyless # Sigstore keyless (Fulcio + Rekor)

CI’da --keyless akışı GitHub Actions OIDC token’ını otomatik algılar, böylece bundle’lar anahtar yönetmeden imzalanır. Bundle içerik-adreslidir; eline geçen herkes geldiği kanala güvenmeden verify edip yeniden uygulayabilir:

Terminal window
pdctl plan verify ./bundle # dosyaları manifest.sha256’a karşı kontrol et
pdctl plan replay ./bundle # başka bir cluster’da yeniden uygula

Aynı topoloji birçok cluster’a böyle drift olmadan ulaşır: bir kez publish et, her yerde verify et, deterministik replay et. Multi-cluster planlar için publish adımı bir GitOps controller (ArgoCD / Flux) için cluster başına dilimler de üretebilir ve cluster’lar arası federation render eder — bkz. Kubernetes & Mesh.