Это 14-й день моего участия в августовском испытании обновлений. Узнайте подробности события:Испытание августовского обновления
текст
Шаг 1: Создайте обычного пользователя
Примечание. ES не может быть запущен пользователем root и должен быть установлен и запущен обычным пользователем.
Здесь мы используем пользователя hadoop для установки нашего сервиса es.
Шаг 2: Загрузите и загрузите сжатый пакет, затем разархивируйте его.
Загрузите и загрузите установочный пакет es в /opt/bigdata/soft на сервере node01. Сервер node01 использует пользователя es для выполнения следующих команд.
[hadoop@node01 ~]$ cd /opt/bigdata/soft/
[hadoop@node01 soft]$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.7.0.tar.gz
[hadoop@node01 soft]$ tar -zxf elasticsearch-6.7.0.tar.gz -C /opt/bigdata/install/
Шаг 3: Измените файл конфигурации
Изменить elasticsearch.yml
Сервер node01 использует пользователя hadoop для изменения файла конфигурации.
cd /opt/bigdata/install/elasticsearch-6.7.0/config/
mkdir -p /opt/bigdata/install/elasticsearch-6.7.0/logs/
mkdir -p /opt/bigdata/install/elasticsearch-6.7.0/datas
vim elasticsearch.yml
cluster.name: myes
node.name: node01
path.data: /opt/bigdata/install/elasticsearch-6.7.0/datas
path.logs: /opt/bigdata/install/elasticsearch-6.7.0/logs
network.host: 192.168.52.100
http.port: 9200
discovery.zen.ping.unicast.hosts: ["node01", "node02", "node03"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"
Изменить jvm.option
Измените файл конфигурации jvm.option, чтобы настроить размер памяти кучи jvm. Node01 использует пользователя es для выполнения следующих команд для настройки размера памяти кучи jvm, каждый человек настраивает в соответствии с размером памяти своего собственного сервера.
cd /opt/bigdata/install/elasticsearch-6.7.0/config
vim jvm.options
-Xms2g
-Xmx2g
Шаг 4: Распространите инсталляционный пакет на другие серверы
node01 использует пользователя es для распространения установочного пакета на другие серверы.
cd /opt/bigdata/install/
scp -r elasticsearch-6.7.0/ node02:$PWD
scp -r elasticsearch-6.7.0/ node03:$PWD
Пятый шаг: node02 и node03 изменяют файл конфигурации es
Node02 и node03 также необходимо изменить файл конфигурации es Node02 использует пользователя hadoop для выполнения следующей команды для изменения файла конфигурации es.
cd /opt/bigdata/install/elasticsearch-6.7.0/config/
vim elasticsearch.yml
cluster.name: myes
node.name: node02
path.data: /opt/bigdata/install/elasticsearch-6.7.0/datas
path.logs: /opt/bigdata/install/elasticsearch-6.7.0/logs
network.host: 192.168.52.110
http.port: 9200
discovery.zen.ping.unicast.hosts: ["node01", "node02", "node03"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"
node03 использует хауп
cd /opt/bigdata/install/elasticsearch-6.7.0/config/
vim elasticsearch.yml
cluster.name: myes
node.name: node03
path.data: /opt/bigdata/install/elasticsearch-6.7.0/datas
path.logs: /opt/bigdata/install/elasticsearch-6.7.0/logs
network.host: 192.168.52.120
http.port: 9200
discovery.zen.ping.unicast.hosts: ["node01", "node02", "node03"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"
Шаг 6. Измените конфигурацию системы, чтобы решить проблему при запуске
Потому что сейчас для установки службы es используются обычные пользователи, а у службы es больше требований к ресурсам на сервере, включая размер памяти, количество потоков и т.д. Так что нам нужно развязать ограничения ресурсов для обычных пользователей
Решить проблему запуска 1: Максимальное количество открытых файлов для обычных пользователей ограничено
Описание сообщения об ошибке:
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
Поскольку ES необходимо создавать большое количество индексных файлов и открывать большое количество системных файлов, нам необходимо снять ограничение на максимальное количество открытых файлов в системе Linux, иначе ES при запуске выдаст ошибку. Три машины используют пользователя es для выполнения следующих команд, чтобы снять ограничение на открытие файловых данных.
sudo vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
Решить проблему запуска 2: ограничить количество потоков запуска для обычных пользователей
Три машины выполняют следующие команды, чтобы открыть максимальное количество файлов
sudo vi /etc/sysctl.conf
vm.max_map_count=655360
fs.file-max=655360
Выполните следующую команду, чтобы она вступила в силу
sudo sysctl -p
Примечание. После того, как две вышеупомянутые проблемы будут изменены, обязательно повторно подключитесь к Linux, чтобы изменения вступили в силу. Закройте инструмент secureCRT или XShell, а затем снова откройте инструмент для подключения к Linux.
После повторного подключения выполните следующую команду, когда появится этот результат, вы готовы запустить ES
[hadoop@node01 ~]$ ulimit -Hn
131072
[hadoop@node01 ~]$ ulimit -Sn
65536
[hadoop@node01 ~]$ ulimit -Hu
4096
[hadoop@node01 ~]$ ulimit -Su
4096
Шаг 7: Запустите службу ES
Три машины используют пользователя hadoop для выполнения следующей команды для запуска службы es.
nohup /opt/bigdata/install/elasticsearch-6.7.0/bin/elasticsearch 2>&1 &
После успешного запуска jsp может увидеть сервисный процесс es и получить доступ к странице
Может видеть некоторую информацию после запуска es
Примечание. Если какая-либо служба компьютера не запускается, перейдите по пути /opt/bigdata/install/elasticsearch-6.7.0/logs того компьютера, чтобы просмотреть журнал ошибок.