elasticsearch7集群Linux部署流程
1、下載并安裝ES
1.1創(chuàng)建部署目錄
mkdir /data/soft/es
1.2在線下載安裝
需要服務(wù)器支持外網(wǎng)環(huán)境,若不支持,請(qǐng)選擇離線安裝當(dāng)時(shí),手動(dòng)去官網(wǎng)下載安裝包
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.0-linux-x86_64.tar.gz tar -zxvf elasticsearch-7.4.0-linux-x86_64.tar.gz
離線安裝
在es官網(wǎng)自行下載需要的版本,地址:https://www.elastic.co/cn/downloads/elasticsearch
2、ES安裝環(huán)境配置
2.1指定ES啟動(dòng)時(shí)的JDK
cd /data/soft/es/elasticsearch-7.4.0 vi bin/elasticsearch
添加以下內(nèi)容:
# 指定jdk11 export JAVA_HOME=/data/soft/es/elasticsearch-7.4.0/jdk export PATH=$JAVA_HOME/bin:$PATH
注意: Elasticsearch-7.4.0及新版本需要在JDK11環(huán)境下運(yùn)行
2.2 系統(tǒng)配置文件修改
- 【1】修改文件句柄限制
vi /etc/security/limits.conf
在最后添加:
* soft nofile 655360 * hard nofile 655360
- 【2】修改虛擬內(nèi)存映射限制
vi /etc/sysctl.conf
添加配置:
vm.max_map_count=655360
執(zhí)行命令立即生效:
sysctl -p
3、配置ES運(yùn)行內(nèi)存
方法一:通過環(huán)境變量配置
vi /etc/profile
添加:
export ES_HEAP_SIZE=10g
提示: "10g"根據(jù)服務(wù)器運(yùn)行內(nèi)存配置,通常為服務(wù)運(yùn)行內(nèi)存的1/3到1/2
立即生效:
source /etc/profile
方法二:啟動(dòng)時(shí)傳遞參數(shù)
./bin/elasticsearch -Xmx10g -Xms10g
4、修改ES配置文件
4.1 主節(jié)點(diǎn)配置
修改 elasticsearch-7.4.0/config/elasticsearch.yml:
# 集群名稱 cluster.name: es # 節(jié)點(diǎn)名稱 node.name: node-1 # 是否是主節(jié)點(diǎn) node.master: true # 是否允許該節(jié)點(diǎn)存儲(chǔ)索引數(shù)據(jù) node.data: true # 數(shù)據(jù)目錄(自行指定) path.data: /data/soft/es/data # 日志目錄() path.logs: /data/soft/es/logs # 允許遠(yuǎn)程訪問 network.host: 部署機(jī)器IP # 端口 transport.tcp.port: 19300 http.port: 19200 # 集群內(nèi)同時(shí)啟動(dòng)的數(shù)據(jù)任務(wù)個(gè)數(shù),默認(rèn)是2個(gè) cluster.routing.allocation.cluster_concurrent_rebalance: 16 # 添加或刪除節(jié)點(diǎn)及負(fù)載均衡時(shí)并發(fā)恢復(fù)的線程個(gè)數(shù),默認(rèn)4個(gè) cluster.routing.allocation.node_concurrent_recoveries: 16 # 初始化數(shù)據(jù)恢復(fù)時(shí),并發(fā)恢復(fù)線程的個(gè)數(shù),默認(rèn)4個(gè) cluster.routing.allocation.node_initial_primaries_recoveries: 16 # 集群主機(jī)列表(如果是單機(jī)部署,只需要填寫一個(gè)當(dāng)前服務(wù)器IP,集群部署,有幾個(gè)集群,就需要填寫幾個(gè)服務(wù)器IP) discovery.seed_hosts: ["集群ip1", "集群ip2"] # 允許跨域訪問 http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-headers: Authorization # 安全配置 xpack.security.enabled: true xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: none xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12 # 配置主節(jié)點(diǎn)名稱 cluster.initial_master_nodes: ["node-1"]
4.2 次節(jié)點(diǎn)配置
修改 elasticsearch-7.4.0/config/elasticsearch.yml:
# 集群名稱 cluster.name: es # 節(jié)點(diǎn)名稱 node.name: node-2 # 是否是主節(jié)點(diǎn) node.master: false # 是否允許該節(jié)點(diǎn)存儲(chǔ)索引數(shù)據(jù) node.data: true # 數(shù)據(jù)目錄 path.data: /data/soft/es/data # 日志目錄 path.logs: /data/soft/es/logs # 允許遠(yuǎn)程訪問 network.host: 部署機(jī)器IP # 端口 transport.tcp.port: 19300 http.port: 19200 # 集群內(nèi)同時(shí)啟動(dòng)的數(shù)據(jù)任務(wù)個(gè)數(shù) cluster.routing.allocation.cluster_concurrent_rebalance: 16 # 添加或刪除節(jié)點(diǎn)及負(fù)載均衡時(shí)并發(fā)恢復(fù)的線程個(gè)數(shù) cluster.routing.allocation.node_concurrent_recoveries: 16 # 初始化數(shù)據(jù)恢復(fù)時(shí),并發(fā)恢復(fù)線程的個(gè)數(shù) cluster.routing.allocation.node_initial_primaries_recoveries: 16 # 集群主機(jī)列表(如果是單機(jī)部署,只需要填寫一個(gè)當(dāng)前服務(wù)器IP,集群部署,有幾個(gè)集群,就需要填寫幾個(gè)服務(wù)器IP) discovery.seed_hosts: ["集群ip1", "集群ip2"] # 允許跨域訪問 http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-headers: Authorization # 安全配置 xpack.security.enabled: true xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: none xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
5、設(shè)置用戶信息
# 創(chuàng)建用戶組es groupadd es # 創(chuàng)建新用戶es并指定用戶組 useradd -g es es # 更改文件夾權(quán)限 chown -R es:es /data/soft/es
6、啟用X-Pack驗(yàn)證,生成證書
切換到es用戶:
cd /data/soft/es/elasticsearch-7.4.0/ bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
重要:
證書保存路徑為 /data/soft/es/elasticsearch-7.4.0/config,集群中所有節(jié)點(diǎn)的 elastic-certificates.p12 證書必須保持一致。
在主節(jié)點(diǎn)上生成證書后,需要拷貝到次節(jié)點(diǎn)對(duì)應(yīng)的路徑下。
7、啟動(dòng)Elasticsearch
切換到es用戶:
后臺(tái)啟動(dòng):./elasticsearch -d
8、手動(dòng)設(shè)置密碼
在es用戶下執(zhí)行:
cd /data/soft/es/elasticsearch-7.4.0/bin ./elasticsearch-setup-passwords interactive
設(shè)置以下用戶密碼(示例密碼均為:eom@123):
elastic apm_system kibana logstash_system beats_system remote_monitoring_user
9、防火墻配置
# 查看防火墻狀態(tài) systemctl status firewalld.service # 查詢端口是否開放 firewall-cmd --query-port=19200/tcp # 開放19200端口 firewall-cmd --zone=public --add-port=19200/tcp --permanent # 移除端口 firewall-cmd --permanent --zone=public --remove-port=19200/tcp # 重啟防火墻 firewall-cmd --reload # 查看開放的端口號(hào) firewall-cmd --zone=public --list-ports
10、瀏覽器驗(yàn)證
訪問服務(wù)器ip:es端口:輸入賬號(hào)密碼訪問
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux中設(shè)置SSH免密碼(密鑰)登錄的具體步驟
SSH是一種加密的網(wǎng)絡(luò)協(xié)議,廣泛用于遠(yuǎn)程管理服務(wù)器和安全傳輸文件,通常在使用SSH時(shí)需要輸入密碼進(jìn)行驗(yàn)證,但通過配置免密登錄,我們可以省去每次輸入密碼的麻煩,所以本文給大家介紹了Linux中設(shè)置SSH免密碼(密鑰)登錄的具體步驟,需要的朋友可以參考下2025-07-07
linux服務(wù)器下完美解決無法刪除虛擬主機(jī)文件或文件夾
大家在使用Linux的虛擬主機(jī)時(shí)候有沒有出現(xiàn)過通過FTP無法刪除網(wǎng)站路徑中的一些文件夾和文件,FTP工具軟件會(huì)提示Permission Denied(沒有權(quán)限),或者 550刪除目錄操作失敗2016-08-08
inotify+rsync實(shí)現(xiàn)實(shí)時(shí)同步的方法
下面小編就為大家分享一篇inotify+rsync實(shí)現(xiàn)實(shí)時(shí)同步的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2017-12-12
CentOS6.3添加nginx系統(tǒng)服務(wù)的實(shí)例詳解
這篇文章主要介紹了CentOS6.3添加nginx系統(tǒng)服務(wù)的實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家掌握這部分內(nèi)容,需要的朋友可以參考下2017-10-10
linux 安裝setup.py程序的實(shí)現(xiàn)方法
今天小編就為大家分享一篇linux 安裝setup.py程序的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06

