ما هي أفضل مكدس المكونات لبناء مجمع السجل الموزع (مثل Splunk)؟

StackOverflow https://stackoverflow.com/questions/3096131

سؤال

أحاول العثور على أفضل المكونات التي يمكنني استخدامها لبناء شيء مشابه لـ Splunk من أجل تجميع السجلات من عدد كبير من الخوادم في شبكة الحوسبة. كما يجب توزيعها لأن لديّ عربات من السجلات كل يوم ولن تتمكن أي آلة واحدة من تخزين السجلات.

أنا مهتم بشكل خاص بشيء سيعمل مع روبي وستعمل على Windows وأحدث Solaris (نعم ، حصلت على حديقة حيوانات).

أرى العمارة على النحو التالي:

  • سجل الزاحف (نص روبي).
  • تخزين السجل الموزع.
  • محرك البحث الموزع.
  • الواجهة الأمامية خفيفة الوزن.

سجل الزاحف ومحرك البحث الموزع خارج الأسئلة - سيتم تحليل السجلات بواسطة برنامج Ruby Script وسيتم استخدام Elasticsearch لفهرسة رسائل السجل. الواجهة الأمامية هي أيضا سهلة للغاية للاختيار - سيناترا.

مشكلتي الرئيسية هي تخزين السجل الموزعة. نظرت إلى Mongodb و Couchdb و HDFS و Cassandra و HBase.

  • تم رفض MongoDB لأنه لا يعمل على سولاريس.
  • لا يدعم CouchDB Sharding (مطلوب SmartProxy لجعله يعمل ، لكن هذا شيء لا أريد أن أجربه).
  • تعمل كاساندرا بشكل رائع ، لكنها مجرد خنزير مساحة القرص وتتطلب تشغيل التزويد الذاتي كل يوم لنشر الحمل بين عقد كاساندرا.
  • بدت HDFs واعدة ولكن واجهة برمجة تطبيقات نظام الملفات هي Java فقط وكان Jruby ألمًا.
  • بدا HBase وكأنه أفضل حل حوله ولكن نشره والمراقبة هو مجرد كارثة - من أجل بدء HBase ، أحتاج إلى بدء HDFS أولاً ، وتحقق تحقق أيضًا من ذلك.

لذلك أنا عالق. هناك شيء يخبرني HDFS أو HBase هو أفضل شيء لاستخدامه كتخزين سجل ، لكن HDFs تعمل بسلاسة فقط مع Java و HBase هو مجرد كابوس نشر/مراقبة.

هل يمكن لأي شخص أن يشارك أفكاره أو تجربة بناء أنظمة مماثلة باستخدام مكونات وصفتها أعلاه أو بشيء مختلف تمامًا؟

هل كانت مفيدة؟

المحلول

أوصي باستخدام flume لتجميع بياناتك في hbase. يمكنك أيضا استخدام بالوعة البحث المرن لكي يحافظ Flume على فهرس البحث في الوقت الفعلي.

لمزيد ، انظر إجابتي على سؤال مماثل عن Quora.

نصائح أخرى

فيما يتعلق بـ Java و HDFS - باستخدام أداة مثل Beanshell ، يمكنك التفاعل مع متجر HDFS عبر JavaScript.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top