End-to-End DevSecOps CI/CD Pipeline with GitOps Continuous Deployment on AWS EKS

تفاصيل العمل

تم تطبيق workflows لـ GitHub Actions من أجل(secret scanning)، وتحليل أمان التطبيقات (SAST)، و(dependency/image scanning)، مما يضمن أمان سلسلة التوريد (supply chain security). واستُخدِمت بنية صور متعددة المراحل (multi-stage builds) مع صور أساسية آمنة ومُصغَّرة من Chainguard، وتم توليد قوائم مواد البرمجيات (SBOMs)، وتحديث ملفات manifest آلياً؛ ويقوم ArgoCD بمطابقة الحالة (reconciles state) لتحقيق نشر مستمر (Continuous Deployment) سلس على Kubernetes.

تم نشر البنية التحتية لشبكات EKS و VPC باستخدام Terraform (البنية التحتية ككود - Infrastructure as Code). تمت المحافظة على الحالة (state) في S3 مع قفل الحالة (state locking) لمنع التعديلات المتزامنة.

تم نشر حزمة المراقبة (monitoring stack) المكونة من (Prometheus, Grafana, Loki, Promtail, Alertmanager) وتم تحقيق التحجيم الأفقي متعدد الأبعاد للـ Pods (Horizontal Pod Autoscaling - HPA) باستخدام كل من المقاييس الأصلية (native) والمقاييس المخصصة (custom metrics) التي يعرضها محول مخصص (custom adapter)، مما يسمح للتطبيق بالتوسع ديناميكيًا بناءً على الأداء في الوقت الفعلي وخصائص عبء العمل.

تمت إدارة أعباء العمل ذات الحالة (Stateful workloads) عبر StatefulSets لكل من MySQL (الرئيسي-النسخ المتماثلة) مع تطبيق الاستنساخ ومزامنة البيانات (cloning and data sync implemented)، ومجموعة نسخ متماثلة لـ MongoDB (مع تطبيق الاكتشاف والمزامنة وتجاوز الفشل - discovery, sync, and failover implemented).

تم ضمان الأمان باستخدام Sealed Secrets لتخزين الأسرار بشكل آمن في مستودع ملفات manifest؛ وتم نشر Falco للاستفادة من eBPF للكشف عن التهديدات في وقت التشغيل (runtime threat detection) في الوقت الفعلي من خلال مراقبة استدعاءات النظام (syscalls)؛ وتم تكوين سياسات شبكة صارمة (strict network policies) لفرض الرفض الافتراضي (default-deny) والحد من اتصالات الخدمات.

تم تجميع جميع التنبيهات (حالة سير عمل GitHub Action Workflow، ومقاييس Alertmanager، وتهديدات أمان Falco) في قنوات Slack للتواصل الفوري للفريق والاستجابة السريعة.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
5
تاريخ الإضافة
المهارات