本片主要是Elasticsearch集群搭建、以及Head插件、Kibana可视化软件在集群模式下的简单使用
Elasticsearch.yml配置
1.集群名称,同一集群内的节点名称要一致 cluster.name: ke-es-app 2.节点名称,可以一台机器多个节点,也可以一台机器一个节点 node.name: node-1 3.集群分片数据保存目录 path.data: /opt/es/data 4.集群日志目录 path.logs: /opt/es/logs 5.内存满了不写入硬盘的swap分区,防止硬盘IO拖垮内存性能,从而影响集群效率 bootstrap.memory_lock: true 6.当前node加入集群用以下ip,并触发引导检查 network.host: 192.168.244.191 7.服务端口 9200-9300 http.port: 9201 8.客户端通信端口 transport.port: 9301 9.预备成为master节点 (配合node.master: true) discovery.seed_hosts: ["192.168.244.191:9301", "192.168.244.19:9302"] 10.初始化的master节点,只能选其中一个 (配合node.master: true),一般配置节点名称
cluster.initial_master_nodes: ["node-1", "node-2"] 11.跨域 http.cors.enabled: true http.cors.allow-origin: "*" 12.master节点、或者备用 node.master: true 13.数据节点 node.data: false
启动注意点
1.启动前关闭防火墙 2..删除日志和数据目录信息 /opt/es/data /opt/es/logs 3.使用非root用户并给权限 a. useradd esuser b. passwd esuser c. 123456789 d. chgrp -R esuser ./es e. chown -R esuser ./es f. chmod 777 es 4.遇到报错解决方式: 启动linux配置 https://my.oschina.net/cangy/blog/2253269 5.启动 a. su esuser b. /opt/es/elasticsearch-7.6.2/bin/elasticsearch 6.技巧:先跑一套es机器,在克隆其他节点
Docker启动ES
-- 1.服务隔离 2.操作方便 3.对es来说操作docker相当麻烦,不建议使用
docker run -p 9200:9200 -p 9300:9300 --name es elasticsearch:7.6.2 docker ps -a 查看容器, docker logs -f container_id #如果没有日志输出就是内存不够,需要加大内存 docker exec -it es /bin/bash 进入docker容器内部 pwd 查看es容器默认位置 /usr/share/elasticsearch 查看es配置 cat config/elasticsearch.yml #不能再容器内修改 1.将docker内的配置文件拷贝出来进行修改, 退出容器在linux进行拷贝 docker cp container_id:/usr/share/elasticsearch/config/elasticsearch.yml /opt/es/config cd /opt/es/config vim elasticsearch.yml #如下图 2.修改完copy进去 docker cp /opt/es/config/elasticsearch.yml container_id:/usr/share/elasticsearch/config/elasticsearch.yml
3.重新启动docker
docker start container_id