前言
提示:上文我们已经安装了elasticsearch:7.12.0和kibana:7.12.0
一、设置Elasticsearch挂载目录
设置文件夹
#存放配置文件的文件夹
mkdir -p /home/elasticsearch-7.12.0/esnode-1/config
mkdir -p /home/elasticsearch-7.12.0/esnode-2/config
mkdir -p /home/elasticsearch-7.12.0/esnode-3/config
#存放数据的文件夹
mkdir -p /home/elasticsearch-7.12.0/esnode-1/data
mkdir -p /home/elasticsearch-7.12.0/esnode-2/data
mkdir -p /home/elasticsearch-7.12.0/esnode-3/data
#存放运行日志的文件夹
mkdir -p /home/elasticsearch-7.12.0/esnode-1/log
mkdir -p /home/elasticsearch-7.12.0/esnode-2/log
mkdir -p /home/elasticsearch-7.12.0/esnode-3/log
#存放IK分词插件的文件夹
mkdir -p /home/elasticsearch-7.12.0/esnode-1/plugins
mkdir -p /home/elasticsearch-7.12.0/esnode-2/plugins
mkdir -p /home/elasticsearch-7.12.0/esnode-3/plugins
对文件加设置开放权限
chmod 777 /home/elasticsearch-7.12.0/esnode-1/data
chmod 777 /home/elasticsearch-7.12.0/esnode-2/data
chmod 777 /home/elasticsearch-7.12.0/esnode-3/data
chmod 777 /home/elasticsearch-7.12.0/esnode-1/plugins
chmod 777 /home/elasticsearch-7.12.0/esnode-2/plugins
chmod 777 /home/elasticsearch-7.12.0/esnode-3/plugins
chmod 777 /home/elasticsearch-7.12.0/esnode-1/log
chmod 777 /home/elasticsearch-7.12.0/esnode-2/log
chmod 777 /home/elasticsearch-7.12.0/esnode-3/log
chmod 777 /home/elasticsearch-7.12.0/esnode-1/config
chmod 777 /home/elasticsearch-7.12.0/esnode-3/config
chmod 777 /home/elasticsearch-7.12.0/esnode-2/config
二、创建多个yml到data目录
在每个节点的config下创建elasticsearch.yml文件
- 创建节点1的elasticsearch.yml
cd /home/elasticsearch-7.12.0/esnode-1/config
vim elasticsearch.yml
elasticsearch.yml文件内容
cluster.name: my-es
node.name: node-1
node.master: true
node.data: true
node.max_local_storage_nodes: 4
path.data: /usr/share/elasticsearch/data
path.logs: /usr/share/elasticsearch/log
network.host: 0.0.0.0
network.publish_host: 192.168.28.129
http.port: 9201
transport.tcp.port: 9301
discovery.seed_hosts: ["192.168.28.129:9301","192.168.28.129:9302","192.168.28.129:9303"]
cluster.initial_master_nodes: ["node-1","node-2","node-3"]
gateway.recover_after_nodes: 3
- 创建节点2的elasticsearch.yml
cd /home/elasticsearch-7.12.0/esnode-2/config
vim elasticsearch.yml
elasticsearch.yml文件内容
cluster.name: my-es
node.name: node-2
node.master: true
node.data: true
node.max_local_storage_nodes: 4
path.data: /usr/share/elasticsearch/data
path.logs: /usr/share/elasticsearch/log
network.host: 0.0.0.0
network.publish_host: 192.168.28.129
http.port: 9202
transport.tcp.port: 9302
discovery.seed_hosts: ["192.168.28.129:9301","192.168.28.129:9302","192.168.28.129:9303"]
cluster.initial_master_nodes: ["node-1","node-2","node-3"]
gateway.recover_after_nodes: 2
- 创建节点3的elasticsearch.yml
cd /home/elasticsearch-7.12.0/esnode-3/config
vim elasticsearch.yml
elasticsearch.yml文件内容
cluster.name: my-es
node.name: node-3
node.master: true
node.data: true
node.max_local_storage_nodes: 4
path.data: /usr/share/elasticsearch/data
path.logs: /usr/share/elasticsearch/log
network.host: 0.0.0.0
network.publish_host: 192.168.28.129
http.port: 9203
transport.tcp.port: 9303
discovery.seed_hosts: ["192.168.28.129:9301","192.168.28.129:9302","192.168.28.129:9303"]
cluster.initial_master_nodes: ["node-1","node-2","node-3"]
gateway.recover_after_nodes: 2
三、放行端口
- 放行相关端口
firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --zone=public --add-port=9201/tcp --permanent
firewall-cmd --zone=public --add-port=9202/tcp --permanent
firewall-cmd --zone=public --add-port=9300/tcp --permanent
firewall-cmd --zone=public --add-port=9301/tcp --permanent
firewall-cmd --zone=public --add-port=9302/tcp --permanent
#这个是kibana端口,等会会用到
firewall-cmd --zone=public --add-port=5601/tcp --permanent
- 更新防火墙规则
firewall-cmd --complete-reload
- 查看当前所开放的端口
firewall-cmd --zone=public --list-ports
三、安装并启动es节点
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301 -v /home/elasticsearch-7.12.0/esnode-1/config/elasticsearch-7.12.0.yml:/usr/share/elasticsearch-7.12.0/config/elasticsearch-7.12.0.yml -v /home/elasticsearch-7.12.0/esnode-1/plugins:/usr/share/elasticsearch-7.12.0/plugins -v /home/elasticsearch-7.12.0/esnode-1/data:/usr/share/elasticsearch-7.12.0/data -v /home/elasticsearch-7.12.0/esnode-1/log:/usr/share/elasticsearch-7.12.0/log --name es-esnode-1 elasticsearch-7.12.0:7.12.0
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9202:9202 -p 9302:9302 -v /home/elasticsearch-7.12.0/esnode-2/config/elasticsearch-7.12.0.yml:/usr/share/elasticsearch-7.12.0/config/elasticsearch-7.12.0.yml -v /home/elasticsearch-7.12.0/esnode-2/plugins:/usr/share/elasticsearch-7.12.0/plugins -v /home/elasticsearch-7.12.0/esnode-2/data:/usr/share/elasticsearch-7.12.0/data -v /home/elasticsearch-7.12.0/esnode-2/log:/usr/share/elasticsearch-7.12.0/log --name es-esnode-2 elasticsearch-7.12.0:7.12.0
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9203:9203 -p 9303:9303 -v /home/elasticsearch-7.12.0/esnode-3/config/elasticsearch-7.12.0.yml:/usr/share/elasticsearch-7.12.0/config/elasticsearch-7.12.0.yml -v /home/elasticsearch-7.12.0/esnode-3/plugins:/usr/share/elasticsearch-7.12.0/plugins -v /home/elasticsearch-7.12.0/esnode-3/data:/usr/share/elasticsearch-7.12.0/data -v /home/elasticsearch-7.12.0/esnode-3/log:/usr/share/elasticsearch-7.12.0/log --name es-esnode-3 elasticsearch-7.12.0:7.12.0
三、检测集群是否的搭建成功
打开浏览器,输入地址http://192.168.28.129:9201/_cat/nodes?pretty
http://192.168.28.129:9201/_cat/nodes?pretty
搭建成功会出现
四、创建Kibana的YML文件
前面我们已经创建过Kibana的yml文件,目录是
/data/elk7/kibana/config/kibana.yml,如果还未创建,可自行创建
vim /data/elk7/kibana/config/kibana.yml
erver.port: 5601
server.host: "0.0.0.0"
server.name: "kibana-192.168.28.129"
elasticsearch.hosts: ["http://192.168.28.129:9201","http://192.168.28.129:9202","http://192.168.28.129:9203"]
i18n.locale: "zh-CN"
xpack.monitoring.ui.container.elasticsearch.enabled: true
五、安装并启动Kibana容器
输入命令,指定network网络
docker run -d -p 5601:5601 -v /home/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml --network es-net --name kibana1 kibana:7.12.0
六、登录网址进行验证
http://192.168.28.129:5601