使用Docker Compose搭建Elasticsearch(ES)集群的步骤如下:

  1. 环境准备:确保你的系统中已安装Docker和Docker Compose。
  2. 创建Docker Compose文件:在一个空目录下创建一个名为 docker-compose.yml的文件,该文件将定义ES集群的配置。
  3. 配置ES集群:在 docker-compose.yml中,你需要配置多个ES节点以形成一个集群。下面是一个基本的配置示例,其中包含三个节点:

    version: '3.7'
    services:
      es01:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.9.3
        container_name: es01
        environment:
          - node.name=es01
          - cluster.name=es-docker-cluster
          - discovery.seed_hosts=es02,es03
          - cluster.initial_master_nodes=es01,es02,es03
          - bootstrap.memory_lock=true
          - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
        ulimits:
          memlock:
            soft: -1
            hard: -1
        volumes:
          - esdata01:/usr/share/elasticsearch/data
        ports:
          - 9200:9200
        networks:
          - esnet
      # 类似的配置es02和es03
    volumes:
      esdata01:
      esdata02:
      esdata03:
    networks:
      esnet:

    这个配置定义了一个拥有三个节点的ES集群。每个节点都在其自己的容器内运行,并且共享同一个网络 esnet

  4. 禁用安全设置:为了能够通过HTTP访问ES并去除验证,需要在ES的配置中禁用安全设置。这可以通过设置环境变量 xpack.security.enabled=false来实现。在上述的每个服务配置中添加这个环境变量。

    environment:
      - xpack.security.enabled=false
  5. 启动集群:使用 docker-compose up -d命令来启动你的ES集群。
  6. 验证集群状态:一旦集群启动,你可以使用 curl或任何HTTP客户端访问 http://localhost:9200/_cluster/health来检查集群的健康状态。
  7. 扩展集群:如果需要,你可以通过添加更多的ES节点到 docker-compose.yml文件来扩展你的集群。

请注意,这个设置主要用于开发和测试目的。在生产环境中,你应该考虑使用安全措施,比如启用X-Pack安全功能,配置TLS/SSL,以及使用更强大的硬件资源。

云服务器/高防CDN推荐

蓝易云国内/海外高防云服务器推荐


海外免备案云服务器链接:www.tsyvps.com

蓝易云安全企业级高防CDN:www.tsycdn.com

持有增值电信营业许可证:B1-20222080【资质齐全】

蓝易云香港五网CN2 GIA/GT精品网络服务器。拒绝绕路,拒绝不稳定。

蓝易云是一家专注于香港及国内数据中心服务的提供商,提供高质量的服务器租用和云计算服务、包括免备案香港服务器、香港CN2、美国服务器、海外高防服务器、国内高防服务器、香港VPS等。致力于为用户提供稳定,快速的网络连接和优质的客户体验。
最后修改:2024 年 01 月 13 日
如果觉得我的文章对你有用,请随意赞赏