ديف أوبس

إعداد خوادم Redis متعددة على أوبنتو

ضبط خواديم Redis متعددة على أوبنتو 14.04

يُعد Redis أحد أشهر أنظمة إدارة البيانات في الذاكرة، ويُستخدم على نطاق واسع في تطبيقات الويب الحديثة لتخزين البيانات مؤقتاً، وذلك لتسريع استرجاعها وزيادة الكفاءة في الأداء. ولكن في بعض الأحيان، قد يتطلب الأمر تشغيل عدة خوادم Redis على نفس الخادم لتحقيق تقسيم البيانات، أو لتوفير مستوى عالٍ من التوفر، أو لتوزيع الحمل بين أكثر من قاعدة بيانات واحدة. في هذا المقال، سنستعرض كيفية ضبط وتشغيل خواديم Redis متعددة على أوبنتو 14.04.

1. التحضير لتثبيت Redis

قبل أن نبدأ في تثبيت وتشغيل خواديم Redis متعددة، يجب أولاً التأكد من أن خادم أوبنتو 14.04 لديك يحتوي على كافة التحديثات الضرورية والبرمجيات المطلوبة.

1.1 تحديث النظام

أولاً، قم بتحديث حزم النظام لضمان أن جميع الحزم لديك محدثة:

bash
sudo apt-get update sudo apt-get upgrade
1.2 تثبيت Redis

بعد التحديث، يمكن تثبيت Redis من خلال مستودعات أوبنتو الرسمية باستخدام الأمر التالي:

bash
sudo apt-get install redis-server
1.3 التحقق من التثبيت

بعد التثبيت، يمكنك التحقق من أن Redis يعمل بشكل صحيح باستخدام الأمر التالي:

bash
redis-server --version

وإذا كان كل شيء على ما يرام، يجب أن يتم عرض نسخة Redis المثبتة.

2. تهيئة Redis لتشغيل خواديم متعددة

لتشغيل عدة خواديم Redis على نفس الخادم، سنحتاج إلى تعديل إعدادات التكوين الخاصة بـ Redis. بشكل افتراضي، يعمل Redis على المنفذ 6379، ولكننا سنحتاج إلى تغيير هذه الإعدادات لتشغيل عدة خواديم على منافذ مختلفة.

2.1 نسخ ملف التكوين

أولاً، من الأفضل أن تقوم بنسخ ملف التكوين الافتراضي لـ Redis لإنشاء إعدادات جديدة لكل خادم تريد تشغيله. استخدم الأمر التالي لنسخ ملف التكوين:

bash
sudo cp /etc/redis/redis.conf /etc/redis/redis_6380.conf sudo cp /etc/redis/redis.conf /etc/redis/redis_6381.conf
2.2 تعديل إعدادات المنفذ

بعد النسخ، سنحتاج إلى تعديل المنفذ في كل ملف تكوين على النحو التالي:

  • افتح ملف التكوين redis_6380.conf باستخدام محرر النصوص nano:

    bash
    sudo nano /etc/redis/redis_6380.conf
  • ابحث عن السطر الذي يحتوي على port 6379، وقم بتعديله إلى port 6380 لتحديد المنفذ الذي سيعمل عليه خادم Redis الأول.

    plaintext
    port 6380
  • احفظ الملف واخرج من المحرر.

ثم كرر نفس العملية لملف التكوين الثاني redis_6381.conf:

bash
sudo nano /etc/redis/redis_6381.conf

واستبدل port 6379 بـ port 6381.

2.3 تحديد ملفات السجل والملفات المؤقتة

من المهم أن نقوم بتحديد ملفات السجل والملفات المؤقتة لكل خادم على حدة لضمان عدم تداخل الملفات. في كل ملف تكوين، ابحث عن الأسطر التالية:

plaintext
logfile /var/log/redis/redis-server.log dir /var/lib/redis

قم بتعديل هذه الأسطر في كل ملف تكوين لتحديد مسارات مختلفة:

  • في redis_6380.conf:

    plaintext
    logfile /var/log/redis/redis-6380.log dir /var/lib/redis/6380
  • في redis_6381.conf:

    plaintext
    logfile /var/log/redis/redis-6381.log dir /var/lib/redis/6381
2.4 إعدادات أخرى يمكن تعديلها

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

3. تشغيل خواديم Redis متعددة

بعد تعديل ملفات التكوين، يمكن الآن بدء تشغيل كل خادم Redis باستخدام الأوامر التالية:

3.1 تشغيل خادم Redis على المنفذ 6380
bash
sudo redis-server /etc/redis/redis_6380.conf
3.2 تشغيل خادم Redis على المنفذ 6381
bash
sudo redis-server /etc/redis/redis_6381.conf

4. إعداد خواديم Redis للعمل معًا

إذا كنت ترغب في جعل خواديم Redis تعمل معًا بطريقة منسقة، يمكنك استخدام ميزة التوزيع (Sharding) أو النسخ المتعدد (Replication) لتوزيع البيانات عبر الخواديم المختلفة.

4.1 إعداد النسخ المتعدد

يمكنك تعيين خادم Redis واحد ليكون الماستر (Master) والخوادم الأخرى تستمع إليه كـ سلايف (Slave). لتحقيق ذلك، قم بتعديل إعدادات النسخ في ملفات التكوين.

  • في خادم Redis الماستر (على سبيل المثال، redis_6380.conf)، تأكد من أن السطر التالي غير مفعل أو تم تعيينه إلى قيمته الافتراضية:

    plaintext
    replicaof no one
  • في خوادم Redis السلايف (على سبيل المثال، redis_6381.conf)، قم بتفعيل النسخ عن طريق إضافة السطر التالي:

    plaintext
    replicaof 127.0.0.1 6380

5. إعداد Redis كمهمة تمهيدية (Service)

لضمان أن خوادم Redis تبدأ تلقائيًا عند بدء تشغيل النظام، يمكنك إنشاء خدمة Systemd لكل خادم. سنقوم بإنشاء ملفات خدمات منفصلة لكل خادم Redis:

5.1 إنشاء خدمة Systemd لخادم Redis

افتح ملف الخدمة الخاص بـ Redis:

bash
sudo nano /etc/systemd/system/redis_6380.service

ثم أضف التكوين التالي لتشغيل Redis باستخدام الملف الذي تم تكوينه سابقًا:

plaintext
[Unit] Description=Redis In-Memory Data Store After=network.target [Service] ExecStart=/usr/bin/redis-server /etc/redis/redis_6380.conf ExecStop=/usr/bin/redis-server /etc/redis/redis_6380.conf stop Restart=always User=redis Group=redis PIDFile=/var/run/redis/redis_6380.pid [Install] WantedBy=multi-user.target

احفظ الملف وأغلقه، ثم قم بتمكين الخدمة لتبدأ عند التمهيد:

bash
sudo systemctl enable redis_6380 sudo systemctl start redis_6380

كرر نفس العملية لخادم Redis الثاني (redis_6381.service)، مع تعديل المسارات حسب الحاجة.

6. التحقق من إعدادات Redis

بعد بدء تشغيل خوادم Redis، يمكنك التحقق من عملها بشكل صحيح عبر استخدام الأوامر التالية:

bash
redis-cli -p 6380 ping redis-cli -p 6381 ping

يجب أن تحصل على إجابة “PONG” إذا كان كل شيء يعمل بشكل صحيح.

7. إعداد الحماية

من المهم أيضًا تفعيل بعض إجراءات الأمان، مثل تحديد كلمة مرور للوصول إلى خوادم Redis، خاصة إذا كنت تخطط لتشغيلها في بيئة إنتاجية.

قم بفتح ملف التكوين الخاص بكل خادم وضمنه:

plaintext
requirepass your_secure_password

8. خاتمة

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