如何基于Docker快速搭建Elasticsearch集群?( 二 )
文章插图
修改内核参数【如何基于Docker快速搭建Elasticsearch集群?】登录到每一台服务器 , 修改内核参数
vi /etc/sysctl.conf
修改以下参数 , 如果没有 , 则添加vm.max_map_count=262144
刷新参数sysctl -p
启动elasticsearchnode-1执行docker run -d \--name=elasticsearch \--restart=always \-p 9200:9200 \-p 9300:9300 \-e node.name=node-1 \-e network.publish_host=192.168.31.149 \-e network.host=0.0.0.0 \-e discovery.seed_hosts=192.168.31.149,192.168.31.181,192.168.31.233 \-e cluster.initial_master_nodes=192.168.31.149,192.168.31.181,192.168.31.233 \-e cluster.name=es-cluster \-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \elasticsearch:7.5.1
环境变量说明:- node.name 节点名称 , 集群模式下每个节点名称唯一
- network.publish_host 用于集群内各机器间通信,对外使用 , 其他机器访问本机器的es服务 , 一般为本机宿主机IP
- network.host 设置绑定的ip地址 , 可以是ipv4或ipv6的 , 默认为0.0.0.0 , 即本机
- discovery.seed_hosts es7.0之后新增的写法 , 写入候选主节点的设备地址 , 在开启服务后 , 如果master挂了 , 哪些可以被投票选为主节点
- cluster.initial_master_nodes es7.0之后新增的配置 , 初始化一个新的集群时需要此配置来选举master
- cluster.name 集群名称 , 相同名称为一个集群 ,三个es节点须一致
- ES_JAVA_OPTS 设置内存 , 如内存不足 , 可以尝试调低点
docker run -d \--name=elasticsearch \--restart=always \-p 9200:9200 \-p 9300:9300 \-e node.name=node-2 \-e network.publish_host=192.168.31.181 \-e network.host=0.0.0.0 \-e discovery.seed_hosts=192.168.31.149,192.168.31.181,192.168.31.233 \-e cluster.initial_master_nodes=192.168.31.149,192.168.31.181,192.168.31.233 \-e cluster.name=es-cluster \-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \elasticsearch:7.5.1
注意:修改node.name和network.publish_host参数即可node-3执行
docker run -d \--name=elasticsearch \--restart=always \-p 9200:9200 \-p 9300:9300 \-e node.name=node-3 \-e network.publish_host=192.168.31.233 \-e network.host=0.0.0.0 \-e discovery.seed_hosts=192.168.31.149,192.168.31.181,192.168.31.233 \-e cluster.initial_master_nodes=192.168.31.149,192.168.31.181,192.168.31.233 \-e cluster.name=es-cluster \-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \elasticsearch:7.5.1
注意:修改node.name和network.publish_host参数即可修改配置文件默认的elasticsearch不允许跨域 , 因此elasticsearch head插件无法连接 。 需要修改配置文件才行!
拷贝数据文件
登录node-1 , node-2 , node-3分别执行:
mkdir -p /data/elk7docker cp elasticsearch:/usr/share/elasticsearch /data/elk7/
- 文件系统(02):基于SpringBoot管理Xml和CSV
- Chiplet如何开拓半导体技术的未来
- 如何编写JAVA小白第一个程序
- 如何进行不确定度估算:模型为何不确定以及如何估计不确定性水平
- 学大数据是否有前途 如何系统掌握大数据技术
- Python爬虫入门第一课:如何解析网页
- 小辣椒要移花接木,金立要借尸还魂,抄袭现象如何破
- 如何使用 lshw 查看 Linux 设备信息
- 华为科普:芯片是如何设计的
- 网络安全:如何使用MSFPC半自动化生成强大的木码?「下集」