elasticsearch 集群

注意 我在构建集群的时候 遇到几个问题

启动Elasticsearch时:[failed to obtain node locks]

这个 问题解决 将映射文件 加权限

 参考 启动Elasticsearch时:[failed to obtain node locks]_maybe these locations are not writable or multiple_cuckoo_yang的博客-CSDN博客

在服务器配置docker ELK时发现 elasticsearch启动日志报错
nested: AccessDeniedException[/usr/share/elasticsearch/data/nodes/0]

这个问题 也是与上个问题 一样解决

参考 elasticsearch docker启动报错解决_docker run 5cfb284e152b -p 9200:9200 -p 9300:9300_Corgy.的博客-CSDN博客

 

failed to obtain node locks, tried [[/usr/share/elasticsearch/data]] 

修改node.max_local_storage_nodes
node.max_local_storage_nodes 这个配置限制了单节点上可以开启的ES存储实例的个数,修改这个参数等于2或者更多,

可以启动多个实例。每个实例都有一个node.lock,这样 [failed to obtain node locks] 的问题也解决了。

node.max_local_storage_nodes: 2 意思就是可以有两个字节点

参考 启动Elasticsearch时:[failed to obtain node locks]_maybe these locations are not writable or multiple_cuckoo_yang的博客-CSDN博客

 

服务器 上的映射文件

 

配置文件 内容如下

es1.yml

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 192.168.0.171
http.port: 9200
cluster.initial_master_nodes: ["192.168.0.171:9300"]
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.0.171:9300","192.168.0.171:9301","192.168.0.171:9302"]
discovery.zen.minimum_master_nodes: 2
node.max_local_storage_nodes: 2

 

es2.yml

cluster.name: elasticsearch-cluster
node.name: es-node2
network.bind_host: 0.0.0.0
network.publish_host: 192.168.0.171
http.port: 9201
cluster.initial_master_nodes: ["192.168.0.171:9300"]
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.0.171:9300","192.168.0.171:9301","192.168.0.171:9302"]
discovery.zen.minimum_master_nodes: 2
node.max_local_storage_nodes: 2

  

es3.yml

cluster.name: elasticsearch-cluster
node.name: es-node3
network.bind_host: 0.0.0.0
network.publish_host: 192.168.0.171
http.port: 9202
cluster.initial_master_nodes: ["192.168.0.171:9300"]
transport.tcp.port: 9302
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.0.171:9300","192.168.0.171:9301","192.168.0.171:9302"]
discovery.zen.minimum_master_nodes: 2
node.max_local_storage_nodes: 2

  

docker 构建 

构建之前 需要 建立好映射文件

/home/admin1/yyx/elasticsearch/log1 尤其是这个文件 需要加权限 chmod +777 /home/admin1/yyx/elasticsearch/log1
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300  \
-v /home/admin1/yyx/elasticsearch/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml  \
-v   /home/admin1/yyx/elasticsearch/log1:/usr/share/elasticsearch/logs \
-v /home/admin1/yyx/elasticsearch/data1:/usr/share/elasticsearch/data --name es01  elasticsearch:7.17.1

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301 \
-v /home/admin1/yyx/elasticsearch/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml  \
-v   /home/admin1/yyx/elasticsearch/log2:/usr/share/elasticsearch/logs \
-v /home/admin1/yyx/elasticsearch/data2:/usr/share/elasticsearch/data --name es02  elasticsearch:7.17.1


docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9202:9202 -p 9302:9302 \
-v /home/admin1/yyx/elasticsearch/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml  \
-v   /home/admin1/yyx/elasticsearch/log3:/usr/share/elasticsearch/logs \
-v /home/admin1/yyx/elasticsearch/data3:/usr/share/elasticsearch/data --name es03 elasticsearch:7.17.1

  

用docker 构建不够优雅 下面 是docker-compose 构建 

下面docker-compose.yml 内容

version: "2.1"
services:
   esmaster:
    image: elasticsearch:7.17.1
    container_name: esmaster
    ports:
      - "9200:9200" 
      - "9300:9300"
    volumes:
      - /home/admin1/yyx/elasticsearch/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - /home/admin1/yyx/elasticsearch/log1:/usr/share/elasticsearch/logs
      - /home/admin1/yyx/elasticsearch/data1:/usr/share/elasticsearch/data
   esnode1:
    image: elasticsearch:7.17.1
    container_name: es2
    ports:
      - "9201:9201" 
      - "9301:9301"
    volumes:
      - /home/admin1/yyx/elasticsearch/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - /home/admin1/yyx/elasticsearch/log2:/usr/share/elasticsearch/logs
      - /home/admin1/yyx/elasticsearch/data2:/usr/share/elasticsearch/data
   esnode2:
    image: elasticsearch:7.17.1
    container_name: es3
    ports:
      - "9202:9202" 
      - "9302:9302"
    volumes:
      - /home/admin1/yyx/elasticsearch/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - /home/admin1/yyx/elasticsearch/log3:/usr/share/elasticsearch/logs
      - /home/admin1/yyx/elasticsearch/data3:/usr/share/elasticsearch/data
View Code

docker-compose up -d

 运行还行

 

接下来 是验证阶段

连接成功

 edge 下搞个插件 咋也得搞个漂亮点的界面  添加插件

es-client

 

chrome 下载插件

ElasticSearch Head

 

 

 

posted on 2023-08-15 22:33  是水饺不是水饺  阅读(108)  评论(0)    收藏  举报

导航