> 文档中心 > ElasticSearch集群搭建

ElasticSearch集群搭建

ElasticSearch集群搭建-以3台为例

  • 环境准备
  • 配置文件
    • docker-compose.yml
    • 启动命令
  • 验证是否搭建成功
  • 说明

环境准备

  1. VmWare WorkStation 16.2.3
  2. Ubuntu 22.04
  3. Docker
  4. docker-compose工具

配置文件

docker-compose.yml

version: '3'services:  es01:    image: elasticsearch:7.11.2    container_name: es01    environment:      - node.name=es01      - cluster.name=es-docker-cluster      - bootstrap.memory_lock=true      - "ES_JAVA_OPTS=-Xms256m -Xmx256m"      - discovery.seed_hosts=es02,es03      - cluster.initial_master_nodes=es01,es02,es03    ulimits:      memlock: soft: -1 hard: -1    volumes:      - ${HOME}/docker/es01_data:/usr/share/elasticsearch/data    ports:      - 9200:9200      - 9300:9300    networks:      - elastic  es02:    image: elasticsearch:7.11.2    container_name: es02    environment:      - node.name=es02      - cluster.name=es-docker-cluster      - bootstrap.memory_lock=true      - "ES_JAVA_OPTS=-Xms256m -Xmx256m"      - discovery.seed_hosts=es01,es03      - cluster.initial_master_nodes=es01,es02,es03    ulimits:      memlock: soft: -1 hard: -1    volumes:      - ${HOME}/docker/es02_data:/usr/share/elasticsearch/data    ports:      - 9201:9200      - 9301:9300    networks:      - elastic  es03:    image: elasticsearch:7.11.2    container_name: es03    environment:      - node.name=es03      - cluster.name=es-docker-cluster      - bootstrap.memory_lock=true      - "ES_JAVA_OPTS=-Xms256m -Xmx256m"      - discovery.seed_hosts=es01,es02      - cluster.initial_master_nodes=es01,es02,es03    ulimits:      memlock: soft: -1 hard: -1    volumes:      - ${HOME}/docker/es03_data:/usr/share/elasticsearch/data    ports:      - 9202:9200      - 9302:9300    networks:      - elasticnetworks:  elastic:    driver: bridge

启动命令

docker-compose up -d es01docker-compose up -d es02docker-compose up -d es03

验证是否搭建成功

命令行输入以下命令

curl -X GET http://127.0.0.1:9200/_cat/nodes?v

当出现以下结果,说明搭建成功
安装成功截图

说明

  1. 该文本在同一台机器上配置了3个实例的ES集群:es01,es02,es03
  2. 每个实例的cluster的cluster.name需要一致
  3. cluster.initial_master_nodes设置当前集群的所有节点
  4. 由于在同一台机器上配置,映射到主机节点不同
  5. 启动时,如果几乎同时启动,即使用以下命令启动
docker-compose up -d es01 es02 es03

会报如下异常
启动异常启动异常2具体原因待后续学习后再补充