Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
chaosblade — مجموعة أدوات سهلة الاستخدام وقوية لتجارب هندسة الفوضى.(أداة حقن تجارب الفوضى بسيطة وسهلة الاستخدام وقوية، مفتوحة المصدر من Alibaba) | Kitploit
أدوات/GitHubGitHub/chaosblade-io/chaosblade
أمن البنية التحتية السحابيةأمن الحاوياتDevSecOpsهندسة الفوضى
GitHubchaosblade-io/chaosblade

chaosblade

مجموعة أدوات سهلة الاستخدام وقوية لتجارب هندسة الفوضى.(أداة حقن تجارب الفوضى بسيطة وسهلة الاستخدام وقوية، مفتوحة المصدر من Alibaba)

عرض المستودع
6.5k1.0kمنذ 6 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
الموقع الإلكتروني

الشعار

Chaosblade: مجموعة أدوات هندسة فوضى سهلة الاستخدام وقوية

Build Status Financial Contributors on Open Collective codecov license CII Best Practices

النسخة الصينية README
ويكي: DeepWiki

🔥🔥🔥 تحديث رئيسي: تم إصدار وكيل Chaosblade - Blade AI

صورة يعمل Blade AI كطبقة وكيل ذكي داخل نظام ChaosBlade البيئي: على المستوى الأساسي، يستدعي ChaosBlade لتنفيذ حقن الأعطال؛ وعلى المستوى العلوي، يتضمن قدرات تنسيق مثل فهم النية، والتدقيق الأمني، والتحقق من التأثير، والاسترداد الآمن، وإعداد التقارير المنظمة—مما يحول تدريبات الأعطال من عملية "كتابة الأوامر يدويًا" إلى عملية تُنجز عبر "التفاعل الحواري".

للحصول على معلومات مفصلة، يرجى الرجوع إلى: Blade AI README

  • الإصدار: blade-ai-v0.1.0
  • فرع الكود: blade-ai-v0.1.0

مقدمة

ChaosBlade هي أداة حقن تجريبي مفتوحة المصدر من Alibaba تتبع مبادئ هندسة الفوضى ونماذج تجارب الفوضى لمساعدة المؤسسات على تحسين تحمل الأخطاء في الأنظمة الموزعة وضمان استمرارية الأعمال أثناء عملية انتقال المؤسسات إلى السحابة أو الانتقال إلى الأنظمة السحابية الأصلية.

Chaosblade هو مشروع مفتوح المصدر داخلي من MonkeyKing. يعتمد على ما يقرب من عشر سنوات من اختبارات الأعطال وممارسات التدريب في Alibaba، ويجمع بين أفضل الأفكار والممارسات من أعمال المجموعة.

ChaosBlade ليس سهل الاستخدام فحسب، بل يدعم أيضًا سيناريوهات تجريبية غنية. وتشمل السيناريوهات:

  • الموارد الأساسية: مثل وحدة المعالجة المركزية والذاكرة والشبكة والقرص والعمليات وغيرها من السيناريوهات التجريبية؛
  • تطبيقات Java: مثل قواعد البيانات وذاكرة التخزين المؤقت والرسائل وJVM نفسه والخدمات المصغرة وما إلى ذلك. يمكنك أيضًا تحديد أي أسلوب فئة لحقن سيناريوهات تجريبية معقدة متنوعة؛
  • تطبيقات C ++: مثل تحديد أي طرق أو أسطر تعليمات برمجية تجريبية لحقن التأخير، أو العبث بالمتغيرات وقيم الإرجاع؛
  • الحاويات: مثل قتل الحاوية، وسيناريوهات تجريبية لوحدة المعالجة المركزية والذاكرة والشبكة والقرص والعمليات داخل الحاوية؛
  • المنصات السحابية الأصلية: على سبيل المثال، سيناريوهات تجريبية لوحدة المعالجة المركزية والذاكرة والشبكة والقرص والعمليات على عُقد منصة Kubernetes، وسيناريوهات تجريبية لشبكة Pod وPod نفسه مثل قتل Pods، وسيناريوهات تجريبية للحاويات مثل سيناريو حاوية Docker المذكور سابقًا؛

إن تغليف السيناريوهات حسب المجال في مشاريع مستقلة لا يسمح فقط بتوحيد السيناريوهات في المجال، بل يسهل أيضًا التوسع الأفقي والرأسي للسيناريوهات. باتباع نموذج تجارب الفوضى، يمكن استدعاء chaosblade cli بشكل موحد. المشاريع المضمنة حاليًا هي:

  • chaosblade: أداة إدارة تجارب الفوضى، وتتضمن أوامر إنشاء التجارب، وتدمير التجارب، والاستعلام عن التجارب، وتجهيز البيئات التجريبية، وإلغاء البيئات التجريبية. وهي أداة تنفيذ تجارب الفوضى. تشمل طرق التنفيذ CLI وHTTP. توفر أوامر كاملة ووصفًا للسيناريوهات التجريبية ومعاملات السيناريو، والتشغيل بسيط وواضح.
  • chaosblade-spec-go: تعريف نموذج تجارب الفوضى بلغة Golang، والسيناريوهات المنفذة باستخدام لغة Golang يسهل تنفيذها بناءً على هذه المواصفات.
  • chaosblade-exec-os: تنفيذ السيناريوهات التجريبية للموارد الأساسية.
  • chaosblade-exec-docker: تنفيذ سيناريوهات تجارب حاويات Docker، ويتم توحيدها عبر استدعاء Docker API.
  • chaosblade-exec-cri: تنفيذ سيناريوهات تجارب الحاويات، ويتم توحيدها عبر استدعاء CRI.
  • chaosblade-operator: يتم تنفيذ سيناريوهات تجارب منصة Kubernetes، ويتم تعريف تجارب الفوضى بطريقة CRD القياسية في Kubernetes. من السهل جدًا استخدام طريقة تشغيل موارد Kubernetes لإنشاء السيناريوهات التجريبية وتحديثها وحذفها، بما في ذلك استخدام kubectl وclient-go وغيرها، وكذلك استخدام أداة chaosblade cli المذكورة أعلاه.
  • chaosblade-exec-jvm: تنفيذ سيناريوهات تجارب تطبيقات Java، باستخدام تقنية Java Agent للتثبيت الديناميكي، دون أي اعتماد على الوصول، واستخدام بدون تكلفة. كما يدعم إلغاء التثبيت وإعادة تدوير الموارد المختلفة التي ينشئها Agent بالكامل.
  • chaosblade-exec-cplus: تنفيذ سيناريوهات تجارب تطبيقات C ++، باستخدام تقنية GDB لتنفيذ حقن السيناريوهات التجريبية على مستوى الدوال وأسطر التعليمات البرمجية.
  • chaosblade-box: يمتلك إمكانات منصة هندسة الفوضى ومنصة اختبار المرونة. لمزيد من المعلومات حول إمكانات منصة اختبار المرونة، راجع فرع main2.

بدء سريع

يساعدك هذا الدليل على تنفيذ أول حقن للأعطال على Kubernetes في أقل من 5 دقائق باستخدام ChaosBlade. سنقوم بحقن خطأ ضغط على وحدة المعالجة المركزية في Pod كمثال بسيط.

المتطلبات الأساسية

قبل أن تبدأ، تأكد من أن لديك:

  • الوصول إلى kubectl لمجموعة Kubernetes قيد التشغيل (يعيد kubectl cluster-info النجاح)
  • مساحة أسماء مستهدفة تحتوي على Pod واحد قيد التشغيل على الأقل (الافتراضي: default)
  • تثبيت ChaosBlade:
    • تنزيل مجموعة أدوات CLI الخاصة بـ chaosblade وفك ضغطها (يجب أن يكون ملف blade الثنائي في PATH الخاص بك)
    • نشر chaosblade-operator في مجموعتك (مطلوب لسيناريوهات Kubernetes)

ثبّت المشغل باستخدام Helm:

root@kitploit:~
helm install chaosblade-operator chaosblade-operator-<version>.tgz --namespace chaosblade --create-namespace

تحقق من أن المشغل قيد التشغيل:

root@kitploit:~
kubectl get pods -n chaosblade

حقن أول خطأ لديك (ضغط وحدة المعالجة المركزية)

شغّل خطأ تحميل كامل لوحدة المعالجة المركزية ضد Pod في مساحة الأسماء default:

root@kitploit:~
blade create k8s pod-cpu fullload   --cpu-percent 80   --kubeconfig ~/.kube/config   --names <pod-name>   --namespace default

إذا نجح الحقن، يعيد ChaosBlade نتيجة JSON تحتوي على uid للتجربة. احفظ هذا uid للتحقق من الحالة أو تدمير التجربة لاحقًا:

root@kitploit:~
{"code":200,"success":true,"result":"<experiment-uid>"}

التحقق من حالة التجربة

root@kitploit:~
blade status <experiment-uid>

الاسترداد (تدمير الخطأ)

استعد دائمًا بعد التدريب لاستعادة الهدف إلى وضعه الطبيعي:

root@kitploit:~
blade destroy <experiment-uid>

وهكذا تكون قد أكملت دورة كاملة من الحقن والتحقق والاسترداد. لاستكشاف المزيد من السيناريوهات، شغّل blade create k8s -h أو راجع ممارسة هندسة الفوضى في البيئات السحابية الأصلية.

أوامر CLI

يمكنك تنزيل أحدث مجموعة أدوات chaosblade من Releases وفك ضغطها واستخدامها. إذا كنت تريد حقن سيناريوهات أعطال متعلقة بـ Kubernetes، فستحتاج إلى تثبيت chaosblade-operator. للحصول على وثائق الاستخدام الصينية المفصلة، يرجى الاطلاع على chaosblade-help-zh-cn .

يدعم chaosblade طرق الاستدعاء عبر CLI وHTTP. الأوامر المدعومة هي كما يلي:

  • prepare: الاسم المستعار هو p، وهو التحضير قبل تجربة هندسة الفوضى، مثل تدريب تطبيقات Java، حيث تحتاج إلى إرفاق وكيل الجافا. على سبيل المثال، لتدريب تطبيق اسمه business، نفّذ blade p jvm --process business على المضيف المستهدف. إذا نجح الإرفاق، يتم إرجاع uid للاستعلام عن الحالة أو إلغاء الوكيل.
  • revoke: الاسم المستعار هو r، لإلغاء التحضير السابق لتجربة هندسة الفوضى، مثل فصل وكيل الجافا. الأمر هو blade revoke UID
  • create: الاسم المستعار هو c، لإنشاء تجربة هندسة فوضى. الأمر هو blade create [TARGET] [ACTION] [FLAGS]. على سبيل المثال، إذا أردت تنفيذ تأخير 3 ثوانٍ لاستدعاء مستهلك Dubbo لواجهة xxx.xxx.Service، فإن الأمر المنفذ هو blade create dubbo delay --consumer --time 3000 --Service xxx.xxx.Service. إذا نجح الحقن، يتم إرجاع uid التجربة للاستعلام عن الحالة وتدمير التجربة.
  • destroy: الاسم المستعار هو d، لتدمير تجربة هندسة فوضى، مثل تدمير تجربة تأخير Dubbo المذكورة أعلاه، والأمر هو blade destroy UID
  • status: الاسم المستعار هو s، للاستعلام عن مرحلة التحضير أو حالة التجربة، والأمر هو blade status UID أو blade status --type create
  • server: تشغيل خادم الويب، وكشف خدمة HTTP، واستدعاء chaosblade عبر طلبات HTTP. على سبيل المثال، نفّذ على الجهاز المستهدف xxxx: blade server start -p 9526 لتنفيذ تجربة تحميل كامل لوحدة المعالجة المركزية:

استخدم الأمر blade help [COMMAND] أو blade [COMMAND] -h لعرض المساعدة

تجربة العرض التوضيحي

قم بتنزيل صورة chaosblade التجريبية وجرّب استخدام مجموعة أدوات blade

demo.gif

أمر تنزيل الصورة:

root@kitploit:~
docker pull chaosbladeio/chaosblade-demo

شغّل حاوية العرض التجريبي:

root@kitploit:~
docker run -it --privileged chaosbladeio/chaosblade-demo

بعد دخول الحاوية، يمكنك قراءة ملف README.txt لتنفيذ تجربة الفوضى. استمتع بها.

السحابة الأصلية

chaosblade-operator هذا المشروع هو أداة حقن تجارب فوضى للمنصات السحابية الأصلية. يتبع نموذج تجارب الفوضى لتوحيد السيناريوهات التجريبية ويعرّف التجربة كموارد Kubernetes CRD، مما يربط نماذج التجارب بخصائص موارد Kubernetes، ويجمع بشكل ودي للغاية بين نماذج تجارب الفوضى والتصميم التصريحي لـ Kubernetes. وبالاعتماد على نماذج تجارب الفوضى لتطوير السيناريوهات بسهولة، يمكنه أيضًا دمج مفاهيم تصميم Kubernetes بشكل جيد، عبر kubectl أو كتابة كود لاستدعاء Kubernetes API مباشرة لإنشاء تجارب الفوضى وتحديثها وحذفها، ويمكن لحالة الموارد أن تشير بوضوح إلى حالة تنفيذ التجربة، كما يوحّد حقن الأعطال في Kubernetes. بالإضافة إلى استخدام الطرق المذكورة أعلاه لتنفيذ التجارب، يمكنك أيضًا استخدام طريقة chaosblade cli لتنفيذ سيناريوهات تجارب kubernetes والاستعلام عن حالة التجربة بسهولة كبيرة. للحصول على التفاصيل، يرجى قراءة الوثيقة الصينية: ممارسة هندسة الفوضى في البيئات السحابية الأصلية

البناء

انظر BUILD.md للحصول على التفاصيل.

الأخطاء والملاحظات

لإبلاغ الأخطاء وطرح الأسئلة والمناقشات، يرجى تقديمها عبر GitHub Issues.

يمكنك أيضًا التواصل معنا عبر:

  • مجموعة Dingding (موصى بها للصينيين): 23177705
  • مجموعة Slack: chaosblade-io
  • غرفة Gitter: مجتمع chaosblade
  • البريد الإلكتروني: [email protected]
  • تويتر: chaosblade.io

المساهمة

نرحب بكل مساهمة، حتى لو كانت مجرد علامة ترقيم. راجع تفاصيل CONTRIBUTING. بالنسبة لسلم الترقية للطلاب المشاركين في المجتمع بشكل محدد، انظر: (Contributor Ladder)

تسجيل الأعمال

النية الأصلية لمشروعنا مفتوح المصدر هي خفض الحاجز أمام تطبيق هندسة الفوضى في المؤسسات، لذلك نولي قيمة عالية لاستخدام المشروع في المؤسسات. نرحب بالجميع هنا ISSUE. بعد التسجيل، ستتم دعوتك للانضمام إلى المجموعة البريدية للشركات لمناقشة المشكلات التي تواجهها هندسة الفوضى أثناء تطبيقها في الشركة ومشاركة تجارب التطبيق.

المساهمون

مساهمو الكود

هذا المشروع موجود بفضل جميع الأشخاص الذين يساهمون. [المساهمة].

الترخيص

Chaosblade مرخص بموجب رخصة Apache الإصدار 2.0. راجع LICENSE للحصول على النص الكامل للترخيص.

تنزيل الأداة
curl "http://xxxx:9526/chaosblade?cmd=create%20cpu%20fullload"