Email: info@developit.ir

elasticsearch چیست؟ آموزش نصب elasticsearch در لینوکس


elasticsearchelasticsearch، یک موتور جستجو و تحلیلگر توزیع شده است که با رابط کاربری وب(HTTP) و الگوی استاندارد JSON برای انتقال داده ها کار میکند. 

برای جستجو امکان ترکیب و استفاده از انواع مختلف مثل داده های ساخت یافته، غیر ساخت یافته، geometric و... وجود داره. همه چیز رو داخل خودش index میکنه و در کمترین زمان ممکن به درخواست ها پاسخ میده. بسیار مقیاس پذیره و قابلیت اجرا روی یک لپ تاپ یا صدها سرور با داده های بسیاز زیاد رو داره. به منظور کنترل، نظارت و مدیریت API مورد نیاز رو در اختیار ما قرار میده و همچنین پایداری و انعطاف پذیری بالایی داره و در هنگام بروز مشکلات سخت افزاری یا شبکه، خرابی رو تشخیص میده و کلاسترُ داده ی خودش رو حفط میکنه تا قابل استفاده باشن. برای مسائل امنیتی امکان تعریف نام کاربری و کلمه عبور و همچنین اعمال مجوز و نقش در کلاستر وجود داره.

کتابخانه های elasticsearch برای زبان های برنامه نویسی زیادی نوشته شدن تا به وسیله ی این کتابخانه ها برنامه نویس بتونه ازش استفاده کنه. و اگر دیتای زیادی داخل hadoop دارید میتونید یک موتور جستجو و تحلیلگر real time هم در کنارش داشته باشید. با استفاده از کتابخانه هایی که به این منظور پیاده سازی شدن امکان اتصال elasticsearch به hadoop فراهم شده.

 

برای نصب elasticsearch ابتدا اون رو از elastic.co دانلود، داخل سرور خود قرار داده و از حالت فشرده خارج کنید...

وارد پوشه اون بشید و فایل اجرایی elasticsearch رو در مسیر bin اجرا کنید:

./bin/elasticsearch

به طور پیش فرض elasticsearch روی IP و پورت  127.0.0.1:9200 اجرا شده و قابل استفاده است.

توجه داشته باشید، در نسخه 5 به دلیل مسائل امنیتی امکان اجرای سرویس  elasticsearch با یوزر root وجود نداره پس از یک نام کاربری دیگه جهت اجرای اون استفاده کنید.

ممکن هست هنگام اجرای سرویس با سه خطای رایج زیر مواجه بشین:

1) خطای max file descriptors

راه حل: فایل limits.conf در مسیر etc/security را با یک ویرایشگر باز کرده و دو خط زیر رو برای نام کاربری که elasticsearch رو با اون اجرا کردین به انتهای فایل اضافه کنید:

<username>       hard        nofile        65536
<username>       soft        nofile        65536

2) خطای max number of threads

راه حل: داخل ترمنیال با نام کاربری که تصمیم دارید elasticsearch رو با اون اجرا کنید لاگین کرده و قبل از اجرای خود elasticsearch دستور زیر رو اجرا کنید:

ulimit -u 2048

3) خطای vm.max_map_count

راه حل: با یوزر root مقدار اون را تغییر میدیم:

sysctl -w vm.max_map_count=262144

 

 

این مطلب آخرین بار در تاریخ 16:06 - 1396/04/29 ویرایش شده است.

ارسال نظر
2 نظر
سجاد در تاریخ 21:55 - 1395/09/08 نوشته:
من دنبال همچین چیزی میگشتم ای کاش آموزش نصبش داخل ویندوز رو هم بگین یک دنیا ممنون

محمد در تاریخ 17:22 - 1395/09/06 نوشته:
خدا خیرتون بده مطالب سطح بالایی رو به اشتراک میذارید

عضویت در خبرنامه
جهت اطلاع از آخرین فعالیت های من لطفا در خبرنامه عضو شوید