از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش نصب Elasticsearch در CentOS 7
سرفصلهای مطلب
Elasticsearch یک موتور جستجوی متن کامل و تجزیه و تحلیل متن باز توزیع شده است. از عملیات RESTful پشتیبانی می کند و به شما امکان می دهد حجم زیادی از داده ها را در زمان واقعی ذخیره، جستجو و تجزیه و تحلیل کنید. Elasticsearch یکی از محبوب ترین موتورهای جستجو است که برنامه های کاربردی را تقویت می کند که دارای الزامات جستجوی پیچیده مانند فروشگاه های بزرگ تجارت الکترونیک و برنامه های کاربردی تحلیلی هستند.
این آموزش روش نصب Elasticsearch را توضیح می دهد CentOS 7.
پیش نیازها
کاربری که وارد آن شده اید باید از امتیازات sudo برخوردار باشد تا بتواند بسته ها را نصب کند.
نصب Elasticsearch
روش توصیه شده برای نصب Elasticsearch در CentOS 7 با نصب بسته rpm از مخزن رسمی Elasticsearch است.
در زمان نگارش این مقاله، آخرین نسخه Elasticsearch است 6.7
و به جاوا 8 یا بالاتر نیاز دارد.
برای نصب OpenJDK 8 بر روی خود CentOS نوع سیستم:
sudo yum install java-1.8.0-openjdk-devel
نصب جاوا را با چاپ نسخه جاوا تأیید کنید:
java -version
خروجی باید چیزی شبیه به این باشد:
openjdk version "1.8.0_201"
OpenJDK Runtime Environment (build 1.8.0_201-b09)
OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)
اکنون که جاوا نصب شده است، مرحله بعدی اضافه کردن مخزن Elasticsearch است.
با استفاده از دستور زیر کلید GPG مخزن را وارد کنید:
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
ویرایشگر متن خود را باز کنید و فایل مخزن زیر را ایجاد کنید:
sudo nano /etc/yum.repos.d/elasticsearch.repo
محتوای زیر را در فایل قرار دهید:
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
فایل را ذخیره کنید و ویرایشگر متن خود را ببندید.
6.x
در دستور بالا با نسخه ای که نیاز دارید.اکنون می توانید بسته Elasticsearch را با تایپ کردن نصب کنید:
sudo yum install elasticsearch
پس از نصب process کامل است، سرویس را با اجرای زیر راه اندازی و فعال کنید:
sudo systemctl enable elasticsearch.service
sudo systemctl start elasticsearch.service
می توانید با ارسال یک درخواست HTTP به پورت 9200 تأیید کنید که Elasticsearch در حال اجرا است localhost با دستور curl زیر:
curl -X GET "localhost:9200/"
خروجی مشابه شکل زیر خواهد بود:
{
"name" : "fLVNqN_",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "6zKcQppYREaRH0tyfJ9j7Q",
"version" : {
"number" : "6.7.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "8453f77",
"build_date" : "2019-03-21T15:32:29.844721Z",
"build_snapshot" : false,
"lucene_version" : "7.7.0",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
ممکن است 5 تا 10 ثانیه طول بکشد تا سرویس شروع شود. اگر ببینید curl: (7) Failed to connect to localhost port 9200: Connection refused
، چند ثانیه صبر کنید و دوباره امتحان کنید.
برای مشاهده پیام های ثبت شده توسط سرویس Elasticsearch می توانید از دستور زیر استفاده کنید:
sudo journalctl -u elasticsearch
در این مرحله، Elasticsearch را روی خود نصب کرده اید CentOS سرور
پیکربندی Elasticsearch
داده های Elasticsearch در ذخیره می شود /var/lib/elasticsearch
دایرکتوری، فایل های پیکربندی در آن قرار دارند /etc/elasticsearch
.
به طور پیش فرض، Elasticsearch برای گوش دادن به آن پیکربندی شده است localhost فقط. اگر کلاینت متصل به پایگاه داده نیز بر روی همان در حال اجرا باشد host و شما در حال راه اندازی یک تک آهنگ هستید node خوشه شما نیازی به تغییر فایل تنظیمات پیش فرض ندارید.
دسترسی از راه دور
خارج از جعبه Elasticsearch، احراز هویت را اجرا نمی کند، بنابراین هر کسی که می تواند به API HTTP دسترسی داشته باشد، می تواند به آن دسترسی داشته باشد. اگر میخواهید اجازه دسترسی از راه دور به سرور Elasticsearch خود را بدهید، باید فایروال خود را پیکربندی کنید و اجازه دسترسی به پورت Elasticsearch 9200 را فقط از مشتریان قابل اعتماد بدهید.
شروع با CentOS 7، FirewallD جایگزین iptables به عنوان ابزار مدیریت فایروال پیش فرض می شود.
دستور زیر را اجرا کنید تا امکان ارزیابی از آدرس IP قابل اعتماد از راه دور در پورت وجود داشته باشد 9200
:
sudo firewall-cmd --new-zone=elasticsearch --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --zone=elasticsearch --add-source=192.168.121.80/32 --permanent
sudo firewall-cmd --zone=elasticsearch --add-port=9200/tcp --permanent
sudo firewall-cmd --reload
192.168.121.80
با آدرس IP راه دور شما.بعداً، اگر میخواهید اجازه دسترسی از یک آدرس IP دیگر را بدهید، استفاده کنید:
sudo firewall-cmd --zone=elasticsearch --add-source=<IP_ADDRESS> --permanent
sudo firewall-cmd --reload
هنگامی که فایروال پیکربندی شد، مرحله بعدی ویرایش پیکربندی Elasticsearch و اجازه دادن به Elasticsearch برای گوش دادن به اتصالات خارجی است.
برای انجام این کار، را باز کنید elasticsearch.yml
فایل پیکربندی:
sudo nano /etc/elasticsearch/elasticsearch.yml
خطی را که حاوی آن است جستجو کنید network.host
کامنت را بردارید و مقدار را به آن تغییر دهید 0.0.0.0
:
network.host: 0.0.0.0
اگر چندین رابط شبکه بر روی دستگاه خود دارید، میتوانید آدرس IP رابط را مشخص کنید که باعث میشود Elasticsearch فقط در رابط مشخص شده گوش کند.
برای اعمال تغییرات، سرویس Elasticsearch را مجددا راه اندازی کنید:
sudo systemctl restart elasticsearch
خودشه. اکنون می توانید از محل راه دور خود به سرور Elasticsearch متصل شوید.
نتیجه
شما Elasticsearch را با موفقیت بر روی خود نصب کرده اید CentOS 7. اکنون می توانید به رسمی مراجعه کنید Elasticsearch Documentation
page و یاد بگیرید که چگونه با Elasticsearch شروع کنید.
اگر مشکلی دارید یا بازخوردی دارید، در زیر نظر دهید.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-27 17:53:03