تخطَّ إلى المحتوى

Capstone: Production-style SaaS Deployment

بناء منصة SaaS صغيرة على Kubernetes تثبت أنك تفهم التشغيل وليس YAML فقط.

  • Frontend.
  • Backend API.
  • PostgreSQL مع PVC.
  • Background worker.
  • CronJob لمهمة دورية.
  • Ingress مع TLS.
  • NetworkPolicy.
  • RBAC وServiceAccounts.
  • Helm chart.
  • Argo CD.
  • Monitoring plan.
  • Backup وrestore plan.
  • Runbook.
# Capstone Runbook
## Services
- frontend
- api
- worker
- postgres
## Deploy
argocd app sync capstone-prod
## Rollback
git revert <bad-commit>
argocd app sync capstone-prod
## Debug
kubectl -n capstone-prod get pods
kubectl -n capstone-prod logs deploy/api --tail=100
kubectl -n capstone-prod get endpoints
## Backup and restore
velero backup create capstone-prod --include-namespaces capstone-prod
flowchart LR
U[Users] --> I[Ingress TLS]
I --> FE[Frontend]
FE --> API[API]
API --> DB[(PostgreSQL PVC)]
API --> W[Worker]
C[CronJob] --> API
Git[Git] --> Argo[Argo CD]
Argo --> K[Kubernetes]

Lab: تسليم Capstone

المستوى: مبتدئ الوقت: مشروع طويل الأدوات: kubectl, helm, argocd, velero اختياري

الهدف: تشغيل المشروع وتوثيق قرارات Production.

  1. أنشئ chart أو manifests كاملة.
  2. شغل البيئة dev.
  3. أضف Ingress وTLS.
  4. أضف NetworkPolicy وRBAC.
  5. انقل النشر إلى Argo CD.
  6. نفذ rollout وrollback.
  7. اكتب runbook وreadiness checklist.
Sync Status: Synced
Health Status: Healthy
All core Pods: Running
Terminal window
argocd app delete capstone-dev
helm uninstall capstone-dev -n capstone-dev
kubectl delete namespace capstone-dev
  • أي شخص يستطيع تشغيل المشروع من README.
  • كل secret له مصدر واضح ولا يوجد secret صريح في Git.
  • كل workload مهم له resources وprobes.
  • rollback مجرب ومكتوب.
  • backup/restore موثق حتى لو كان محليا.
  • تستخدم Rubric مشروع التخرج للتقييم النهائي.