Использование Docker для настройки кластера Elasticsearch на нескольких машинах - PullRequest
0 голосов
/ 07 июня 2018

В настоящее время я пытался использовать docker-compose для раскрутки нескольких контейнеров эластичного поиска, но все они развернуты на моей локальной машине.Каков будет процесс развертывания нескольких контейнеров на нескольких разных машинах с помощью Docker?

Я знаю, что рой Docker существует, но я не уверен, как использовать его вместе с Docker Compose, чтобы я раскручивал несколько узлов эластичного поиска, которые расположены в виртуальных машинах различий, которые я запускал.

Пока я знаю, что в конфигурационном файле elasticsearch.yml мне нужно указать адреса виртуальной машины с помощью discovery.zen.ping.unicast.hosts: ["vm_ip1:9200", "vm_ip2:9200"], но я не уверен, как применить это изменение к создаваемым контейнерам докеров.Для раскручивания контейнеров я использовал пример файла docker-compose.yml, который показан в эластичном поиске docs

version: '2.2'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:6.2.4
    container_name: elasticsearch
    environment:
      - cluster.name=elasticsearch
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata1:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - esnet
  elasticsearch2:
    image: docker.elastic.co/elasticsearch/elasticsearch:6.2.4
    container_name: elasticsearch2
    environment:
      - cluster.name=elasticsearchr
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - "discovery.zen.ping.unicast.hosts=elasticsearch"
      - "index.number_of_shards: 2"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata2:/usr/share/elasticsearch/data
    networks:

Пожалуйста, дайте мне знать, если понадобятся какие-либо дополнительные детали, спасибо!

...