zoukankan      html  css  js  c++  java
  • docker安装elasticsearch

    1.拉取es docker镜像,地址:https://www.docker.elastic.co/r/elasticsearch/elasticsearch

       ES docker安装参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

       ES参数配置:https://www.cnblogs.com/aqicheng/p/14262484.html

    2.ES单节点群集,docker-compose.yml内容如下:

    version: '3'
    services:
      watchad_elasticsearch7:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
        container_name: es7
        hostname: es7
        environment:
          http.host: 0.0.0.0
          transport.host: 127.0.0.1
          cluster.name: docker-cluster
          bootstrap.memory_lock: "true"
          ES_JAVA_OPTS: "-Xms512m -Xmx512m"   #设置占用内存大小 -Xms2g -Xmx2g
          thread_pool.write.size: 9     #设置写入线程数量及队列大小
          thread_pool.write.queue_size: 1000
          xpack.security.enabled: "false"
        ulimits:
          memlock:
            soft: -1
            hard: -1
          nofile:
            soft: 65536
            hard: 65536
        ports:
          - "9201:9200"
        networks:
          - watchad-master_default
        restart: always
    
    networks:
      watchad-master_default:
        external: true

    3.ES多节节点群集,docker-compose.yml内容如下:

    version: '3'
    services:
      watchad_elasticsearch7_01:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
        container_name: es701
        hostname: es701
        environment:
          node.name: es701
          cluster.name: es-cluster
          discovery.seed_hosts: es702
          cluster.initial_master_nodes: es701,es702
          bootstrap.memory_lock: "true"
          ES_JAVA_OPTS: "-Xms512m -Xmx512m"
          thread_pool.write.size: 9
          thread_pool.write.queue_size: 1000
          xpack.security.enabled: "false"
        ulimits:
          memlock:
            soft: -1
            hard: -1
          nofile:
            soft: 65536
            hard: 65536
        volumes:
         - es701_data:/usr/share/elasticsearch/data
        ports:
          - "9201:9200"
        restart: always
    
      watchad_elasticsearch7_02:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
        container_name: es702
        hostname: es702
        environment:
          node.name: es702
          cluster.name: es-cluster
          discovery.seed_hosts: es701
          cluster.initial_master_nodes: es701,es702
          bootstrap.memory_lock: "true"
          ES_JAVA_OPTS: "-Xms512m -Xmx512m"
          thread_pool.write.size: 9
          thread_pool.write.queue_size: 1000
          xpack.security.enabled: "false"
        ulimits:
          memlock:
            soft: -1
            hard: -1
          nofile:
            soft: 65536
            hard: 65536
        volumes:
         - es702_data:/usr/share/elasticsearch/data
        restart: always
    
    volumes:
      es701_data:
      es702_data:
    
    networks:
      default:
        external:
          name: watchad-master_default
    #此处使用的桥接网络,es各节点之间互相解析,实际是通过container_name进行的解析,所以container_name和node.name必须要保持一致

    如果在docker-compose up后出现如下报错,处理方式:

    max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

    vi /etc/sysctl.conf,添加如下内容:

      vm.max_map_count=262144

    然后 sysctl -p重新载入该文件生效

    启动后访问:http://192.168.120.27:9201/_cat/health?v 可以看到有2个节点

    docker host模式安装ES群集:

    注:host模式共享主机网卡,-p绑定端口是无效的

    version: '3'
    services:
      watchad_elasticsearch7_01:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
        container_name: es701
        hostname: es701
        environment:
          node.name: es701
          cluster.name: docker-cluster
          http.port: 9201
          transport.tcp.port: 9301
          http.cors.enabled: "true"   #开启跨站访问
          http.cors.allow-origin: "*"  #设置跨站来源
          discovery.zen.ping.unicast.hosts: 192.168.120.27:9301, 192.168.120.27:9302  #发现其他节点
          discovery.zen.minimum_master_nodes: 1 #设置最小主节点个数,防止脑裂
          bootstrap.memory_lock: "true"
          ES_JAVA_OPTS: "-Xms512m -Xmx512m"
          thread_pool.write.size: 9
          thread_pool.write.queue_size: 1000
          xpack.security.enabled: "false"
        ulimits:
          memlock:
            soft: -1
            hard: -1
          nofile:
            soft: 65536
            hard: 65536
        volumes:
         - es701_data:/usr/share/elasticsearch/data
        network_mode: "host"
        restart: always
    
      watchad_elasticsearch7_02:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
        container_name: es702
        hostname: es702
        environment:
          node.name: es702
          cluster.name: docker-cluster
          http.port: 9202
          transport.tcp.port: 9302
          http.cors.enabled: "true"
          http.cors.allow-origin: "*"
          discovery.zen.ping.unicast.hosts: 192.168.120.27:9301, 192.168.120.27:9302
          discovery.zen.minimum_master_nodes: 1
          bootstrap.memory_lock: "true"
          ES_JAVA_OPTS: "-Xms512m -Xmx512m"
          thread_pool.write.size: 9
          thread_pool.write.queue_size: 1000
          xpack.security.enabled: "false"
        ulimits:
          memlock:
            soft: -1
            hard: -1
          nofile:
            soft: 65536
            hard: 65536
        volumes:
         - es702_data:/usr/share/elasticsearch/data
        network_mode: "host"
        restart: always
    
    volumes:
      es701_data:
      es702_data:
  • 相关阅读:
    谷歌大规模机器学习:模型训练、特征工程和算法选择 (32PPT下载)
    (转) 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文)
    (转) Supercharging Style Transfer
    Summary on deep learning framework --- TensorFlow
    (转) How a Kalman filter works, in pictures
    Torch 两个矩形框重叠面积的计算 (IoU between tow bounding box)
    C、C++基础和编程风格 (转)
    Linux && shell
    求最短路径的条数
    一个链表中包含环,请找出该链表的环的入口结点。
  • 原文地址:https://www.cnblogs.com/dreamer-fish/p/15347032.html
Copyright © 2011-2022 走看看