از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش نصب Elasticsearch در CentOS 8
سرفصلهای مطلب
Elasticsearch یک موتور جستجوی متن کامل و تجزیه و تحلیل متن باز توزیع شده است. از عملیات RESTful پشتیبانی می کند و به شما امکان می دهد حجم زیادی از داده ها را در زمان واقعی ذخیره، جستجو و تجزیه و تحلیل کنید. Elasticsearch یکی از محبوب ترین موتورهای جستجو است که برنامه های کاربردی را تقویت می کند که دارای الزامات جستجوی پیچیده مانند فروشگاه های بزرگ تجارت الکترونیک و برنامه های کاربردی تحلیلی هستند.
این آموزش نصب Elasticsearch را پوشش می دهد CentOS 8.
نصب جاوا
Elasticsearch یک برنامه جاوا است، بنابراین اولین قدم نصب جاوا است.
دستور زیر را به عنوان root یا user with sudo privileges برای نصب بسته OpenJDK اجرا کنید:
sudo dnf install java-11-openjdk-devel
نصب جاوا را با چاپ نسخه جاوا تأیید کنید:
java -version
خروجی باید چیزی شبیه به این باشد:
openjdk version "11.0.5" 2019-10-15 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode, sharing)
نصب Elasticsearch
Elasticsearch در استاندارد موجود نیست CentOS 8 مخزن. ما آن را از مخزن Elasticsearch RPM نصب خواهیم کرد.
وارد کردن GPG مخزن با استفاده از rpm
دستور:
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
ویرایشگر متن خود را باز کنید و فایل مخزن را ایجاد کنید /etc/yum.repos.d
فهرست راهنما:
sudo nano /etc/yum.repos.d/elasticsearch.repo
محتوای زیر را در فایل قرار دهید:
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
فایل را ذخیره کنید و ویرایشگر متن خود را ببندید.
7.6
. اگر می خواهید نسخه قبلی Elasticsearch را نصب کنید، آن را تغییر دهید 7.x
در دستور بالا با نسخه ای که نیاز دارید.اکنون که مخزن فعال است، بسته Elasticsearch را با تایپ کردن نصب کنید:
sudo dnf install elasticsearch
پس از نصب process کامل است، سرویس را شروع و فعال کنید:
sudo systemctl enable elasticsearch.service --now
برای تأیید اینکه Elasticsearch در حال اجرا است، استفاده کنید curl
برای ارسال درخواست HTTP به پورت 9200 در localhost:
curl -X GET "localhost:9200/"
خروجی چیزی شبیه به این خواهد بود:
{
"name" : "centos8.localdomain",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "V_mfjn2PRJqX3PlZb_VD7w",
"version" : {
"number" : "7.6.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "7f634e9f44834fbc12724506cc1da681b0c3b1e3",
"build_date" : "2020-02-06T00:09:00.449973Z",
"build_snapshot" : false,
"lucene_version" : "8.4.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"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 cluster، شما نیازی به تغییر فایل تنظیمات پیش فرض ندارید.
دسترسی از راه دور
خارج از جعبه Elasticsearch، احراز هویت را اجرا نمی کند، بنابراین هر کسی که می تواند به API HTTP دسترسی داشته باشد، می تواند به آن دسترسی داشته باشد. اگر میخواهید اجازه دسترسی از راه دور به سرور Elasticsearch خود را بدهید، باید فایروال خود را پیکربندی کنید و اجازه دسترسی به پورت Elasticsearch 9200 را فقط از مشتریان قابل اعتماد بدهید.
به عنوان مثال، اجازه دادن به اتصالات فقط از 192.168.121.80
، دستور زیر را وارد کنید:
دستور زیر را اجرا کنید تا امکان ارزیابی از آدرس 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 8.
برای کسب اطلاعات بیشتر در مورد Elasticsearch، به سایت رسمی مراجعه کنید مستندات
page.
اگر مشکلی دارید یا بازخوردی دارید، در زیر نظر دهید.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-28 04:39:02