في عالم رقمي متشعّب، كثيراً ما تعجز أدوات البحث التقليدية عن تلبية احتياجات المستخدمين المتقدمة. يأخذك هذا الدليل للتعرف على Elasticsearch، محرك بحث وتحليل بيانات قوي. باستخدام Ubuntu، سنوضح لك كيفية تثبيت Elasticsearch على Ubuntu 22.04، مما يجعل استرجاع البيانات وتحليلها أكثر كفاءةً للمطورين ومحللي البيانات وعلماء البيانات الناشئين على حدٍّ سواء.
إذا كنت مستعداً للغوص في عالم Elasticsearch واستثمار بياناتك بالكامل، فلنبدأ بمعلومات أساسية عن Elasticsearch قبل الدخول في خطوات التثبيت. بنهاية هذا الدليل، ستمتلك بيئة Elasticsearch مكتملة وجاهزة للعمل على نظامك Ubuntu.
ما هو Elasticsearch؟
لنستعرض التعريف الأساسي لـ Elasticsearch ونتعمق في واجهة برمجية RESTful قبل الشروع في شرح طريقة استخدامه. Elasticsearch محرك بحث وتحليل بيانات مبني على Apache Lucene. يتميز بقدرته على التعامل مع كميات ضخمة من البيانات وتقديم نتائج البحث بسرعة عالية. يُستخدم على نطاق واسع في حالات مثل تحليل السجلات والبحث النصي الكامل والتحليل الفوري، ويخزّن Elasticsearch البيانات بأسلوب موزّع عبر تقسيمها إلى أجزاء (shards) تتوزع على عقد متعددة داخل مجموعة (cluster). هذا النهج الموزّع يضمن توافر البيانات باستمرار وتحمّل الأعطال.
Elasticsearch معروف بواجهة API الخاصة به القائمة على REST، إذ تتيح للمستخدمين التفاعل مع Elasticsearch عبر طلبات HTTP مباشرة. تُنظَّم هذه الطلبات عادةً على شكل حمولات JSON، وتدعم عمليات مثل الفهرسة والبحث والتحديث وحذف المستندات.
تلتزم API القائمة على REST بمبادئ نقل الحالة التمثيلية (REST)، وهو أسلوب معماري لتصميم التطبيقات الشبكية. وتعتمد على الأساليب القياسية في HTTP كـ GET وPOST وPUT وDELETE وغيرها للتفاعل مع موارد Elasticsearch.
لفهرسة مستند جديد، أرسل طلب POST يحتوي على المستند بصيغة JSON إلى نقطة النهاية /index_name/_doc أما للبحث في المستندات، فأرسل طلب GET مع معاملات البحث إلى نقطة النهاية /index_name/_search لاسترداد النتائج.
علاوة على ذلك، توفر API القائمة على REST إمكانات استعلام واسعة، إذ تدعم عمليات بحث معقدة باستخدام أنواع متعددة من الاستعلامات والمرشحات والتجميعات وخيارات الفرز، بما في ذلك تخصيص الصلة بالموضوع وإجراء عمليات البحث النصي الكامل والبحث الجغرافي. كما يوفر Elasticsearch مكتبات عميل بلغات برمجية متعددة لتسهيل التكامل مع التطبيقات. خلاصة القول، تجعل البنية الموزعة لـ Elasticsearch مقترنةً بـ API السهلة القائمة على REST منه أداة فعّالة لبناء حلول البحث والتحليلات.
دليل Elasticsearch: كيفية تثبيت Elasticsearch على Ubuntu
حان الوقت للتعرف على طريقة تثبيت Elasticsearch على Ubuntu. سأشرح في البداية خطوات تثبيت Elasticsearch على Ubuntu 22.04 بأسلوب تفصيلي سهل المتابعة والتطبيق، ثم سأستعرض بعض الوظائف الأساسية للأداة حتى تتمكن من استخدامها بسرعة إن لم تكن على دراية بها مسبقاً. لنبدأ.
الخطوة 1: تحديث Ubuntu
قبل البدء بتثبيت Elasticsearch على Ubuntu، من المستحسن التحقق من تحديثات حزم النظام وتثبيتها. نفِّذ الأمرين التاليين في الطرفية لإجراء التحديث:
sudo apt update
sudo apt upgrade
الخطوة 2: تثبيت Java
يعمل Elasticsearch على Java، لذا يجب تثبيته على Ubuntu لضمان سير عملية التثبيت بسلاسة. OpenJDK هو إصدار مفتوح المصدر من Java، أسهل في التثبيت وغالباً أفضل أداءً. استخدم الأمر التالي لتثبيت Java عبر OpenJDK:
sudo apt install openjdk-11-jdk
الخطوة 3: تنزيل Elasticsearch
بعد تحديث النظام وتثبيت Java، أصبحنا جاهزين لبدء تثبيت Elasticsearch على Ubuntu. ابدأ بزيارة الموقع الرسمي لـ Elasticsearch للحصول على رابط التنزيل الأحدث، ثم استخدم الأمر "wget" لتنزيل Elasticsearch. إليك مثالاً خطوة بخطوة:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.0-amd64.deb
الخطوة 4: تثبيت Elasticsearch على Ubuntu وضبط الإعدادات
بعد اكتمال تنزيل Elasticsearch على Ubuntu، حان وقت تثبيت الملفات المنزَّلة. نفِّذ الأمر التالي لبدء هذه الخطوة:
sudo dpkg -i elasticsearch-7.14.0-amd64.deb
سيحدد الأمر ملف Elasticsearch المنزَّل ويبدأ بفك ضغطه لتثبيت Elasticsearch على Ubuntu. بعد اكتمال التثبيت، عليك تحديد ما إذا كنت تريد أن يستجيب Elasticsearch للجهاز المحلي فقط. بينما يكون الوصول غير مقيد افتراضياً، يفضل كثيرون تقييده. لتعديل هذا الإعداد، افتح الملف المحدد في محرر نصوص:
sudo nano /etc/elasticsearch/elasticsearch.yml
ثم ابحث في الملف عن السطر الذي يبدأ بالعبارة "# network.host" وإزالة الـ # في بداية السطر. سيؤدي هذا إلى تعيين القيمة على localhost لتقييد Elasticsearch بحيث يستمع فقط على الجهاز المحلي. إذا كنت لا تريد إجراء هذا التغيير الشائع، فتجاوز الجزء الثاني من الخطوة الرابعة.
الخطوة ٥: تشغيل Elasticsearch واختباره
يمكنك الآن تشغيل البرنامج بعد اكتمال العملية بنجاح وتثبيت Elasticsearch Ubuntu 22.04. شغّل خدمة Elasticsearch باستخدام سطر الأوامر التالي:
sudo systemctl start elasticsearch
انتظر حتى يكتمل تحميل البرنامج. يمكنك أيضاً تفعيله تلقائياً عند بدء تشغيل النظام باستخدام هذا الأمر:
sudo systemctl enable elasticsearch
للتحقق من أن تثبيت Elasticsearch يعمل بشكل صحيح مع الخادم، نفّذ الأمر التالي. يرسل هذا الأمر طلب HTTP إلى الخادم ويُعيد استجابة JSON. إذا تلقيت هذه الاستجابة، فهذا يعني أن تثبيت Elasticsearch نجح ويعمل كما هو متوقع. تذكر أن تُدخل هذا السطر في المتصفح، لا في الطرفية:
http://localhost:9200
الخطوة ٦: تأمين Elasticsearch على Ubuntu
بعد اكتمال تثبيت Elasticsearch Ubuntu، تجدر الإشارة إلى أن مجموعة Elasticsearch الخاصة بك قد تحتوي سريعاً على بيانات حساسة تخص مشاريعك وخوادمك، ولا تريد أن تقع في الأيدي الخطأ. لذلك، من المهم تأمين Elasticsearch فور الانتهاء من الجزء الرئيسي من هذا الدليل. تبدأ الخطوة الأولى في تأمين نسخة Elasticsearch بفتح ملف الإعدادات التالي في محرر نصوص مرة أخرى:
sudo nano /etc/elasticsearch/elasticsearch.yml
ابحث عن السطر التالي وأزل # في البداية:
xpack.security.enabled: true
سيؤدي هذا إلى تفعيل الإجراءات الأمنية الأساسية لـ Elasticsearch. احفظ التغييرات واخرج من المحرر. حان الآن وقت تحديد كلمات المرور للمستخدمين المدمجين في Elasticsearch. استخدم هذا الأمر لفتح الصدفة التفاعلية لـ Elasticsearch:
sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
هنا ستُطلب منك إنشاء كلمة مرور لكل مستخدم مدمج في Elasticsearch. احرص على أن تكون كلمات المرور صعبة التخمين دون أن تكون عسيرة الحفظ. أما الخطوة الأخيرة فهي تفعيل جدار الحماية لتعزيز أمان Elasticsearch، وإن كانت هذه الخطوة اختيارية ولا تُعدّ ضرورية في جميع الحالات:
sudo apt install ufw
sudo ufw enable
بمجرد فتح جدار الحماية وتفعيله، استخدم الأسطر التالية لتقييد الاتصالات على المنفذين اللذين يستخدمهما Elasticsearch فقط، وذلك لمنع أي حركة مرور واردة غير مرغوب فيها أو قد تشكّل خطرًا:
sudo ufw allow 9200
sudo ufw allow 9300
أخيرًا، أعد تشغيل Elasticsearch لتأكيد التغييرات:
sudo systemctl restart elasticsearch
تهانينا! لقد نجحت في تثبيت Elasticsearch على Ubuntu وتعزيز أمانه. للبدء في استخدام Elasticsearch والاستفادة من API الـ REST الخاصة به، تأكد من إدخال بيانات الاعتماد الصحيحة (اسم المستخدم وكلمة المرور) للحسابات التي أنشأتها. احرص دائماً على تحديث Elasticsearch واتباع أفضل ممارسات الأمان للحفاظ على بيئة آمنة.
خلاصة القول
تثبيت Elasticsearch على Ubuntu يفتح أمامك إمكانات أوسع للبحث في البيانات وتحليلها. باتباع دليل التثبيت وتطبيق إعدادات الأمان، تضمن حماية بياناتك. بعد تشغيله، تتيح لك واجهة REST API الخاصة بـ Elasticsearch التعامل بسهولة مع العمليات المختلفة، من فهرسة المستندات والبحث فيها إلى تحديثها. قد يستغرق إتقان Elasticsearch بعض الوقت، لكن توثيقه المفصّل يساعدك على فهم ميزاته المتقدمة. ابدأ باستخدام Elasticsearch على Ubuntu واستفد من سرعته وميزاته الواسعة للحصول على رؤى أعمق من بياناتك.
قبل أن تغادر، هل تريد الارتقاء باستخدامك لـ Elasticsearch على Ubuntu؟ يمكنك الآن الحصول على قدرات Cloudzy المتميزة من Linux VPSباستخدام الإصدار Ubuntu من Linux VPS، يمكنك استضافة خادم مُعزَّز بـ Elasticsearch في أكثر من ١٢ موقعاً حول العالم، مما يضمن لك زمن استجابة منخفضاً، مع حماية كاملة من إجراءات الأمان لدينا. استخدم مجموعة واسعة من طرق الدفع العادية والمجهولة للحصول على Ubuntu VPS, مع معدل تشغيل يبلغ 99.95%، وظّف ما تعلمته في هذا البرنامج التعليمي Elasticsearch إلى أقصى حد!
الخيار الواضح
غالبية خوادم Linux تعمل بـUbuntu، فلماذا لا تفعل الأمر نفسه؟ اكتشف ما يجعل الجميع يختارون Ubuntu واحصل على VPS Ubuntu مُحسَّن.
احصل على Ubuntu VPSالأسئلة الشائعة
ما الفرق بين Elasticsearch وApache Lucene؟
Elasticsearch مبني على Apache Lucene، مكتبة بحث نصي كامل الميزات. تتولى Lucene مهام الفهرسة والبحث الأساسية، غير أن Elasticsearch يُضيف إليها قدرات الحوسبة الموزعة والتوسع الأفقي وواجهة REST API سهلة الاستخدام، مما يجعله مناسبًا بشكل مثالي للبيئات الموزعة.
كيف تتعامل Elasticsearch مع تكرار البيانات والتحمل ضد الأعطال؟
يحقق Elasticsearch التكرار في البيانات والتحمل من الأعطال من خلال بنيته الموزعة. يقسّم البيانات إلى أجزاء متعددة ويوزعها على عقد متعددة داخل الكتلة. يحتوي كل جزء على تكرار مدمج، مما يضمن نسخ البيانات عبر عقد متعددة. في حال فشل أي عقدة، يستطيع Elasticsearch استرداد البيانات من الأجزاء المنسوخة على العقد الأخرى، مما يضمن توافرًا عاليًا.
هل يمكن استخدام Elasticsearch للتحليلات الفورية؟
نعم، Elasticsearch مناسب تمامًا لتحليلات البيانات الفورية. تتيح قدراته في الفهرسة شبه الفورية تحديث البيانات واسترجاعها بسرعة. وبالدمج مع إمكانات التجميع القوية، يُتيح Elasticsearch تحليل البيانات وعرضها بشكل سريع، مما يجعله خيارًا شائعًا لحالات الاستخدام المتعلقة بالتحليل الفوري.
هل يمكن استخدام Elasticsearch للبيانات الجغرافية المكانية؟
نعم، يوفر Elasticsearch دعمًا قويًا للبيانات الجغرافية المكانية. يتضمن ميزات مثل الفهرسة والبحث الجغرافي المكاني، مما يُمكّن المستخدمين من فهرسة المستندات باستخدام الإحداثيات الجغرافية، وإجراء حسابات المسافات، وتطبيق مرشحات وتجميعات مبنية على الموقع. وقدراته الجغرافية المكانية موثقة توثيقًا جيدًا ومعترف بها على نطاق واسع في المجال.
هل يمكنني استخدام Elasticsearch لتسجيل السجلات وتحليلها؟
بالتأكيد. يُستخدم Elasticsearch على نطاق واسع لتحليل السجلات والتسجيل المركزي. عبر استيعاب السجلات في Elasticsearch، يمكنك البحث فيها وتحليلها وعرضها بشكل شبه فوري. وبالدمج مع أدوات مثل Logstash وKibana، يُشكّل Elasticsearch حزمة ELK (Elasticsearch، وLogstash، وKibana)، وهي حزمة شائعة لإدارة السجلات وتحليلها.