Конфигурация стека кластера Consul - PullRequest
0 голосов
/ 06 февраля 2019

Я пытаюсь собрать кластерный стек Консул.Моя текущая конфигурация работает нормально, но после перезапуска консула-лидера или полного стека у кластера возникла проблема, чтобы проголосовать за нового лидера.

После перезапуска службы у новой задачи другой IP-адрес для того же идентификатора узла.

Есть ли какой-либо параметр для конфигурации агента консула, чтобы исправить изменение адреса в кластере?

Ниже моего текущего определения стека

version: '3.5'

services: 
  consulLeader:
    image: consul
    volumes:
      - consul_l_data:/consul/data
    command: 'agent -bind "{{ GetInterfaceIP \"eth0\" }}" -bootstrap-expect 3 -client 0.0.0.0 -ui -server -node nodeLeader -retry-join consulNode1 -retry-join consulNode2'
    environment: 
      - "CONSUL_LOCAL_CONFIG={\"skip_leave_on_interrupt\": true,\"leave_on_terminate\": true}"

  consulNode1:
    image: consul
    volumes:
      - consul_n1_data:/consul/data
    command: 'agent -bind "{{ GetInterfaceIP \"eth0\" }}" -disable-host-node-id -client 0.0.0.0 -ui -server -node consulNode1 -retry-join consulLeader -retry-join consulNode2' 
    environment: 
      - "CONSUL_LOCAL_CONFIG={\"skip_leave_on_interrupt\": true,\"leave_on_terminate\": true}"

  consulNode2:
    image: consul
    volumes:
      - consul_n2_data:/consul/data
    command: 'agent -bind "{{ GetInterfaceIP \"eth0\" }}" -disable-host-node-id -client 0.0.0.0 -ui -server -node consulNode2 -retry-join consulLeader -retry-join consulNode1'
    environment: 
      - "CONSUL_LOCAL_CONFIG={\"skip_leave_on_interrupt\": true,\"leave_on_terminate\": true}"

  # loadballancer
  nginxForCluster:
    image: nginx
    deploy:
      replicas: 1
      placement:
        constraints:
          - node.role == manager
    configs:
      - source: consul_nginx.conf
        target: /etc/nginx/nginx.conf
        mode: 0440
    ports:
      - 8080:80

configs:
  consul_nginx.conf: 
    external: true
volumes:
  consul_l_data:
  consul_n1_data:
  consul_n2_data:
...