يُعد Cockpit أحد أكثر الأدوات تطوراً وسهولة لإدارة ومراقبة خوادم لينكس عن بعد من خلال واجهة مرئية رسومية تعمل على متصفح الإنترنت، دون الحاجة إلى التعامل المباشر مع سطر الأوامر. تم تطوير هذه الأداة من قبل مشروع Fedora بدعم من Red Hat، وتهدف إلى تبسيط مهام إدارة النظام، خصوصًا للمسؤولين عن البنية التحتية الرقمية الذين يحتاجون إلى التحكم في عدة خوادم بشكل متزامن.
مقدمة حول Cockpit
Cockpit هو مشروع مفتوح المصدر يُمكّن مديري الأنظمة من التحكم بخوادمهم عبر واجهة ويب رسومية، توفر مراقبة فورية للأنظمة وتعرض مؤشرات الأداء والموارد، مثل المعالج والذاكرة والتخزين والشبكة، بالإضافة إلى وظائف الإدارة اليومية مثل تحديثات النظام، إدارة المستخدمين، العمليات، الخدمات، الجدار الناري، والتعامل مع حاويات Docker وPodman.
تم تصميم Cockpit ليكون خفيفًا من حيث استهلاك الموارد، ويُعد خيارًا مثاليًا للبيئات الإنتاجية وكذلك بيئات التطوير والاختبار. كما يدعم العمل على توزيعات متعددة من لينكس، منها RHEL، CentOS، Fedora، Debian، Ubuntu، وغيرها.
مزايا استخدام Cockpit
-
واجهة رسومية متكاملة: يمكن للمستخدمين تنفيذ المهام الإدارية بدون الحاجة إلى خبرة عميقة في سطر الأوامر.
-
دعم إدارة خوادم متعددة: من خلال ربط عدة خوادم في لوحة واحدة يمكن التنقل بينها بسهولة ومراقبة أدائها.
-
أمان متقدم: يدعم المصادقة عبر SSH ودمج المستخدمين من نظام التشغيل، مع إمكانية استخدام مفاتيح التشفير.
-
إدارة الحاويات: يوفر دعمًا مدمجًا لـ Docker وPodman، مما يسمح بمراقبة الحاويات وإدارتها بصريًا.
-
تشخيص الأعطال بسهولة: يسهل الوصول إلى سجلات النظام ومراقبة العمليات والتعرف على المشاكل بسرعة.
-
إدارة التخزين: يدير الأقراص، أنظمة الملفات، نقاط الربط، ويدعم LVM بطريقة بصرية.
-
التحديثات وإدارة الحزم: يمكن متابعة تحديثات النظام وتثبيت الحزم وتحديثها من خلال الواجهة مباشرة.
-
سهولة التثبيت والتشغيل: يمكن تثبيته خلال دقائق على أي نظام لينكس باستخدام مدير الحزم المناسب.
تثبيت Cockpit على توزيعات لينكس المختلفة
1. على RHEL / CentOS / AlmaLinux:
bashsudo yum install cockpit -y
sudo systemctl enable --now cockpit.socket
2. على Fedora:
bashsudo dnf install cockpit -y
sudo systemctl enable --now cockpit.socket
3. على Ubuntu / Debian:
bashsudo apt install cockpit -y
sudo systemctl enable --now cockpit
بعد تشغيل الخدمة، يمكن الوصول إلى لوحة Cockpit من المتصفح عبر الرابط:
cpphttps://:9090
مكونات الواجهة الرسومية لـ Cockpit
عند الدخول إلى Cockpit من المتصفح، ستجد واجهة مبوبة مقسمة حسب الوظائف التالية:
-
نظرة عامة على النظام: تعرض استخدام المعالج، الذاكرة، الشبكة، والتخزين.
-
السجلات: تمكن من تصفح رسائل النظام وتحذيراته وتسجيلات الخدمات.
-
المهام والخدمات: إدارة الخدمات (Systemd)، إيقافها، تشغيلها، إعادة تشغيلها.
-
المستخدمين: إضافة، تعديل، أو حذف المستخدمين والمجموعات.
-
التخزين: إدارة الأقراص، إنشاء وتجميع الأقسام، ربط أنظمة الملفات.
-
الشبكة: إدارة واجهات الشبكة، الجسور، الـ VLAN، وضبط IPv4 وIPv6.
-
التحديثات: التحقق من التحديثات وتطبيقها مباشرة.
-
الحاويات: إنشاء، تشغيل، مراقبة، وإيقاف الحاويات.
ربط عدة خوادم عبر Cockpit
من الميزات البارزة في Cockpit هي قدرته على الاتصال بخوادم متعددة والتحكم بها من خلال خادم مركزي. للقيام بذلك:
-
تأكد من تثبيت Cockpit على كل خادم.
-
من الخادم الرئيسي، قم بتسجيل الدخول إلى لوحة Cockpit.
-
اختر خيار “خوادم” من القائمة الجانبية.
-
أضف الخوادم البعيدة باستخدام عنوان IP والمصادقة عبر SSH.
-
بعد التحقق من الاتصال، ستظهر الخوادم ضمن قائمة جانبية ويمكن التنقل بينها.
تكامل Cockpit مع أدوات وأطر أخرى
-
Ansible: يدعم Cockpit التكامل مع Playbooks الخاصة بـ Ansible لتطبيق الإعدادات التلقائية على الأنظمة.
-
Kubernetes (عبر إضافات): توجد إضافات توفر واجهات إدارة لحاويات Kubernetes.
-
SELinux: يوفر واجهة لعرض إعدادات SELinux وإدارتها.
-
فرز وإدارة التحديثات المركزية: يمكن من خلال Cockpit إنشاء سيناريوهات لإدارة تحديثات أنظمة متعددة دفعة واحدة.
الجدول التالي يلخص بعض أهم الوظائف في Cockpit مقارنة بالطرق التقليدية
| الوظيفة | Cockpit (واجهة مرئية) | الطرق التقليدية (CLI) |
|---|---|---|
| عرض أداء الخادم | مباشر برسوم بيانية | عبر top أو htop |
| إدارة الخدمات | زر واحد للتشغيل/الإيقاف | systemctl start/stop |
| مراقبة الحاويات | واجهة رسومية لـ Podman/Docker | docker ps أو podman ps |
| تعديل الشبكة | محرر بصري لإعدادات الشبكة | تحرير ملفات /etc/network |
| إدارة المستخدمين | قوائم وواجهات تفاعلية | useradd، passwd، usermod |
| الاطلاع على السجلات | متصفح رسومي | journalctl |
| إدارة التحديثات | بزر واحد | dnf update أو apt upgrade |
الأمان في Cockpit
تعتمد Cockpit على طبقة TLS لتأمين الاتصال من المتصفح إلى الخادم. كما يدعم نظام المصادقة PAM الموجود في لينكس مما يضمن تكامل المصادقة مع نظام التشغيل، بما في ذلك استخدام مفاتيح SSH، وإمكانية دمج المصادقة الثنائية (2FA).
من التوصيات الأمنية:
-
تغيير المنفذ الافتراضي أو تقييد الوصول إلى IP محدد.
-
استخدام شهادات SSL موقعة من مصدر موثوق.
-
ربط الوصول بمدير هوية مركزي مثل LDAP أو FreeIPA.
التوسع باستخدام إضافات Cockpit
يتيح Cockpit تثبيت إضافات Modules لتوسيع إمكانياته، من أبرز هذه الإضافات:
-
Cockpit-pcp: لعرض وتحليل الأداء التاريخي باستخدام Performance Co-Pilot.
-
Cockpit-kdump: لإدارة وتحليل تقارير الأعطال.
-
Cockpit-machines: لإدارة الآلات الافتراضية باستخدام libvirt.
-
Cockpit-storaged: لتعزيز إدارة التخزين.
تُثبّت هذه الإضافات باستخدام مدير الحزم المناسب، على سبيل المثال:
bashsudo dnf install cockpit-pcp cockpit-kdump cockpit-machines -y
سيناريوهات الاستخدام الواقعي لـ Cockpit
-
إدارة مراكز البيانات: حيث تُستخدم Cockpit لمراقبة عشرات الخوادم في بيئة واحدة.
-
البيئات التعليمية: في مختبرات الحوسبة لتبسيط إدارة الأنظمة أمام الطلاب.
-
خوادم الشركات الصغيرة والمتوسطة: بدون الحاجة لفريق متخصص في سطر الأوامر.
-
بيئات التطوير DevOps: لرصد الأداء وتحديث الحاويات باستمرار.
-
مراقبة الخوادم السحابية: مثل Amazon EC2 أو DigitalOcean عبر منفذ آمن.
خاتمة تقنية
Cockpit يمثّل نقلة نوعية في أدوات إدارة خوادم لينكس، حيث يدمج بساطة الاستخدام مع قوة وأمان نظام التشغيل، ويوفر للمسؤولين بيئة شاملة لإدارة الخوادم بسهولة، بدون التضحية بالتحكم الكامل أو الموثوقية. بفضل دعمه للامتدادات والربط المتعدد، يمكن اعتباره خياراً عصرياً وفعالاً لأي بيئة تعتمد على أنظمة لينكس في البنية التحتية.
المراجع:
-
Red Hat Documentation
-
Fedora Project Wiki
-
Ubuntu Official Packages for Cockpit
-
Ansible Integration with Cockpit

