zoukankan      html  css  js  c++  java
  • docker搭建 elasticsearch 集群

    1、下载 elasticsearch 镜像

    docker pull elasticsearch:5.6.8

    2、运行 elasticsearch 容器

    1) 先创建一个虚拟网卡

    docker network create my_net

     

    2) 启动第一个 es 容器,命名容器为 es_01

    docker run -d --name es_01 -p 9201:9200 -p 9301:9300 --network my_net --network-alias es_01 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" elasticsearch:5.6.8

    参数说明:

      -d: 后台运行

      --name: 指定容器名

      -p: 指定主机映射容器端口

      --network: 指定网卡

      --network-alias: 指定网络别名(有点类似于在虚拟网卡上加了一层域名,通过这个域名,就可以访问当前容器)

      -e: 设置环境变量(因为 es 默认内存比较大,我这里内存不太够,所以改成了 512M)

     

    3) 修改容器配置,添加集群配置信息

    执行如下命令,进入容器:

    docker exec -it es_01 /bin/bash

    然后执行如下命令,修改配置信息:

    cat > config/elasticsearch.yml << EOF
    # 设置允许跨域
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    
    # 集群名称,保证唯一
    cluster.name: my-elasticsearch
    # 集群节点的名称, 保证唯一
    node.name: node-1
    # ip地址,必须为本机的ip地址
    network.host: es_01
    # 服务器端口号
    http.port: 9200
    # 集群间通信端口号
    transport.tcp.port: 9300
    # 设置集群自动发现机器ip集合
    discovery.zen.ping.unicast.hosts: ["es_01:9300","es_02:9300","es_03:9300"]
    EOF

     

    4) 重启容器使配置生效

    docker restart es_01

     

    5) 按照同样的步骤,修改一下集群配置信息,然后新建另外两个容器,分别映射到主机的 9202 和 9203 端口

    3、在 elasticsearch head 中查看集群信息

    1) 下载 elasticsearch head 插件

      需要到 google 应用商店中去下载

     

    2)在连接栏中输入任意节点的连接地址即可观察到集群信息

      这里我输入 http://localhost:9201/ ,显示如图:

  • 相关阅读:
    php获取真实ip地址原理及实现
    关于DateTime计算某个日期过后的多少天之后的日期
    关于get_include_path()和set_include_path()的问题
    LinQ In Action 学习第三章
    LinQ In Action 学习第二章
    LinQ in Action 学习第一章 例子。
    asp.net create windows application and setup service.
    JS alert()、confirm()、prompt()的区别
    php获取用户 地区 、ip地址
    购物车相关 js
  • 原文地址:https://www.cnblogs.com/lkc9/p/13749471.html
Copyright © 2011-2022 走看看