Для настройки Elasticsearch для включения автоматического запуска в CentOS 7 требуется диспетчер служб systemd.。
Сначала убедитесь, что у вас установлен Elasticsearch. Если он еще не установлен, вы можете выполнить следующие действия, чтобы установить его:
# Import the Elasticsearch PGP key
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
# Create a new repository file
echo '[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' | sudo tee /etc/yum.repos.d/elasticsearch.repo
# Install Elasticsearch
sudo yum install elasticsearch
Перед редактированием файла конфигурации рекомендуется сделать резервную копию исходного файла конфигурации:
sudo cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak
Затем отредактируйте по мере необходимости /etc/elasticsearch/elasticsearch.yml
документ:
sudo nano /etc/elasticsearch/elasticsearch.yml
Несколько примеров базовой конфигурации:
cluster.name: my-cluster
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
В установочный пакет Elasticsearch входит файл конфигурации службы systemd, но чтобы гарантировать нормальную работу службы, проверьте и включите ее:
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
Путь установки Elasticsearch по умолчанию: /usr/share/elasticsearch
。Файлы конфигурации обычно находятся в /etc/elasticsearch
。
тебе нужно быть внутри /etc/systemd/system/
Создайте каталог с именем elasticsearch.service
издокумент:
sudo nano /etc/systemd/system/elasticsearch.service
Вставьте в файл следующее:
[Unit]
Description=Elasticsearch
Documentation=https://www.elastic.co
Wants=network-online.target
After=network-online.target
[Service]
Environment=JAVA_HOME=/usr/share/elasticsearch/jdk
Environment=ES_HOME=/usr/share/elasticsearch
Environment=ES_PATH_CONF=/etc/elasticsearch
Environment=PID_DIR=/var/run/elasticsearch
Environment=ES_SD_NOTIFY=true
EnvironmentFile=-/etc/sysconfig/elasticsearch
WorkingDirectory=/usr/share/elasticsearch
User=elasticsearch
Group=elasticsearch
ExecStart=/usr/share/elasticsearch/bin/elasticsearch -p ${PID_DIR}/elasticsearch.pid --quiet
StandardOutput=journal
StandardError=inherit
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65535
# Specifies the maximum number of processes
LimitNPROC=4096
# Specifies the maximum size of virtual memory
LimitAS=infinity
# Specifies the maximum file size
LimitFSIZE=infinity
# Disable timeout logic and wait until process is stopped
TimeoutStopSec=0
# SIGTERM signal is used to stop the Java process
KillSignal=SIGTERM
# Java process is never killed
SendSIGKILL=no
# When a JVM receives a SIGTERM signal it exits with code 143
SuccessExitStatus=143
# Allow a slow startup before the systemd notifier module kicks in to extend the timeout
TimeoutStartSec=75
[Install]
WantedBy=multi-user.target
Перезагрузите демон systemd, включите и запустите службу Elasticsearch.
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
Убедитесь, что служба Elasticsearch запускается нормально:
sudo systemctl status elasticsearch
Вы должны увидеть вывод, аналогичный следующему:
● elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
Active: active (running) since ...
...
передний enable
Команда настроила Elasticsearch для автоматического запуска службы при загрузке. Это можно проверить с помощью следующей команды:
sudo systemctl is-enabled elasticsearch
Если вывод enabled
,Конфигурация прошла успешно.
sudo firewall-cmd --permanent --add-port=9200/tcp
sudo firewall-cmd --reload
/etc/elasticsearch/jvm.options
документ:sudo nano /etc/elasticsearch/jvm.options
Исправлять -Xms
и -Xmx
Параметры, например:
-Xms2g
-Xmx2g
Убедитесь, что значения этих двух параметров одинаковы, чтобы избежать фрагментации памяти.
Пройдите вышеуказанные шаги,Мы успешно установили и настроили Elasticsearch на CentOS 7.,И установите его как системную службу, чтобы обеспечить автоматический запуск при загрузке. Эта конфигурация гарантирует, что Elasticsearch запускается автоматически при запуске системы.,Повышена доступность системы и удобство управления.