Kubernetes / Kops: как это работает Новый созданный узел присоединяется к кластеру

Я работаю с kops для поддержки кластера kubernetes, но немного запутался в том, как он присоединяет новый узел к кластеру.

Сначала я думаю, что следует использовать имя ELB dns для настройки кублета на каждом узле в качестве сервера api. но не могу найти никакой поддержки.

Затем я обнаружил, что в пользовательских данных нового созданного экземпляра есть некоторые элементы конфигурации для kubelet:

 `kubeconfigPath: /var/lib/kubelet/kubeconfig`

когда я вхожу в систему и обнаруживаю, что сервер, настроенный в файле kubeconfig, представляет собой другое имя DNS вместо моего ELB, попытаюсь разрешить его, но потерпел неудачу. После попытки применить этот kubeconfig к другому kubelet, он показывает ошибку: Невозможно подключиться к серверу.

Итак, как это работает в копсах, когда мы добавляем новые узлы? Я не могу найти ни одного документа ..


person Markboo    schedule 06.06.2018    source источник


Ответы (1)


Собственно, ты прав. ELB мастеров добавляется к /var/lib/kubelet/kubeconfig каждого узла и действительно разрешается к нему (я проверил это прямо сейчас).

# cat /var/lib/kubelet/kubeconfig
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: ...
    server: https://api.internal.prod.mycluster.com
  name: local
contexts:
- context:
    cluster: local
    user: kubelet
  name: service-account-context
current-context: service-account-context
kind: Config
users:
- name: kubelet
  user:
    client-certificate-data: ...


# ping api.internal.prod.mycluster.com
PING api.internal.prod.mycluster.com (172.28.11.5) 56(84) bytes of data.

Это о мастерах: вам не нужно перенастраивать узлы, потому что адрес ELB такой же. С узлами еще проще: нужно только их зарегистрировать.

В любом случае, если вам все еще интересно, попробуйте найти конфигурацию Auto Scaling Group / Launch (данные пользователя):

введите здесь описание изображения

PS. Не верьте мне просто - проверьте это.

person ipeacocks    schedule 22.06.2018