(HA) API-сервер недоступен с одним ведущим - PullRequest
0 голосов
/ 15 октября 2019

с помощью kubespray я получил работающий кластер kubernetes на 3 машины. 2 из них (узел1, узел2) являются главными узлами, и все они (узел1, узел2, узел3) являются рабочими узлами. Поэтому он должен соответствовать моему требованию быть кластером высокой доступности. Я хотел проверить доступность, когда некоторые узлы не работают и как они реагируют.

Проблема: я отключаю node2 и node3, поэтому работает только узел 1. Когда я пытаюсь kubectl get nodes на узле 1, он возвращает The connection to the server 10.1.1.44:6443 was refused - did you specify the right host or port?

Что странно: когда работают узлы 1 и 2 (все мастера), API работает как надо. Но когда только один мастер не работает, API возвращает сообщение выше.

Я ожидаю, что node1 должен работать без других узлов master / worker. Я что-то здесь упускаю?

Используется: kubespray v2.11.0

Отредактировано group_vars/all/all.yml

## Internal loadbalancers for apiservers
loadbalancer_apiserver_localhost: true
# valid options are "nginx" or "haproxy"
loadbalancer_apiserver_type: nginx
# valid values "nginx" or "haproxy"

Мой hosts.yml

all:
  hosts:
    node1:
      ansible_host: 10.1.1.44
      ip: 10.1.1.44
      access_ip: 10.1.1.44
    node2:
      ansible_host: 10.1.1.45
      ip: 10.1.1.45
      access_ip: 10.1.1.45
    node3:
      ansible_host: 10.1.1.46
      ip: 10.1.1.46
      access_ip: 10.1.1.46
  children:
    kube-master:
      hosts:
        node1:
        node2:
    kube-node:
      hosts:
        node1:
        node2:
        node3:
    etcd:
      hosts:
        node1:
        node2:
        node3:
    k8s-cluster:
      children:
        kube-master:
        kube-node:
    calico-rr:
      hosts: {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...