البرمجة

حل مشكلة master_not_discovered_exception في Elasticsearch

في الوقت الذي قمت فيه بتكوين إعدادات Elasticsearch الخاصة بك بشكل صحيح لتشكيل مجموعة من عقدة العمل، يبدو أن هناك مشكلة في عملية الانضمام بين العقدتين. الخطأ “master_not_discovered_exception” يشير إلى أن عقدة واحدة على الأقل ليست قادرة على اكتشاف عقدة الماستر في النظام.

تأكد من أن الإعدادات الخاصة بـ unicast host تحتوي على عناوين IP صحيحة للعقدتين، وتأكد من أن الاتصال بين العقدتين يعمل بشكل صحيح (لا توجد مشكلات في جدار الحماية أو الشبكة). يجب أن تكون القيمة الخاصة بـ “discovery.zen.minimum_master_nodes” تساوي الحد الأدنى لعدد العقد التي يجب أن تكون متصلة لتشكيل الماستر.

بالنسبة للعقدة الثانية، يبدو أنها تعتقد أنها ليست عقدة ماستر، ولكن يجب أن تكون عقدة الماستر هي العقدة الأولى التي انضمت إلى النظام (node1). تأكد من أن الإعدادات الخاصة بـ “node.master” صحيحة في كل عقدة.

بعد التحقق من هذه النقاط، قم بإعادة تشغيل Elasticsearch على كلا العقدتين وتحقق من السجلات لرؤية ما إذا كان هناك أي مشكلات أخرى تظهر.

المزيد من المعلومات

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

  1. تحقق من إعدادات الشبكة: تأكد من أن جميع العقد متصلة بشبكة متاحة ويمكنها التواصل بشكل صحيح مع بعضها البعض. قد تحتاج إلى فحص جدار الحماية للسماح بالاتصال بين العقد.

  2. التحقق من إعدادات العقد: تأكد من أن إعدادات كل عقدة صحيحة، بما في ذلك اسم العقدة، وإعدادات الشبكة (مثل network.host، http.port)، وإعدادات الاكتشاف (مثل discovery.zen.ping.unicast.hosts، discovery.zen.minimum_master_nodes)، وإعدادات السكربت (مثل script.inline، script.indexed)، وما إلى ذلك.

  3. تحقق من السجلات: قم بفحص سجلات تشغيل Elasticsearch (elasticsearch.log) للعقدتين لمعرفة ما إذا كانت هناك أي أخطاء أو تحذيرات تشير إلى مشكلة في الانضمام إلى العقدة الماستر.

  4. إعادة تشغيل العقد: جرب إعادة تشغيل Elasticsearch على كل من العقدتين بعد التحقق من الإعدادات وحل أي مشكلة محتملة. قد تحتاج إلى إعادة تكوين العقدة الماستر إذا لزم الأمر.

  5. استخدام أدوات الفحص: يمكنك استخدام أدوات مثل curl لإجراء طلبات HTTP مباشرة إلى عقد Elasticsearch لفحص حالته والتحقق من اتصاله بالعقدة الماستر.

  6. التحقق من حالة العقد: استخدم الأمر GET /_cat/nodes?v لعرض قائمة بالعقد وحالتها، بما في ذلك ما إذا كانت عقدة ماستر مكتشفة بشكل صحيح.

  7. التحقق من حالة العقدة الماستر: استخدم الأمر GET /_cat/master?v للتحقق من أن العقدة الماستر تعمل بشكل صحيح ومكتشفة بشكل صحيح من العقد الأول.

  8. التحقق من الإصدار: تأكد من أن جميع العقد تستخدم إصدار متوافق من Elasticsearch، حيث قد تكون هناك مشاكل في الاتصال بين إصدارات غير متوافقة.

بعد مراجعة هذه النقاط واتباع الخطوات المذكورة، يجب أن تكون قادرًا على تحديد سبب مشكلة master_not_discovered_exception وإصلاحها للسماح بتشكيل مجموعة Elasticsearch بنجاح.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر