Как настроить kubernetes, чтобы я мог выдавать команды на основной компьютер с моего ноутбука? - PullRequest
0 голосов
/ 22 октября 2019

Я сейчас пытаюсь настроить кластер из одной машины. Я знаю, что могу заставить сервер API работать и прослушивать некоторые порты.

Я ищу команду для главного компьютера с моего ноутбука.

KUBECONFIG=/home/slackware/kubeconfig_of_master kubectl get nodes должен отправить запрос наглавный компьютер, попал на сервер API и получил ответ от работающих узлов.

Однако у меня возникают проблемы с разрешениями. Один похож на x509: certificate is valid for 10.61.164.153, not 10.0.0.1. Другой - 403, если я нажму kubectl proxy --port=8080, который работает на главной машине.

Я думаю, что возможны два решения, с предпочтительным (B):

A. Добавьте IP-адрес моего ноутбука в список принятых IP-адресов, которые содержит сервер API, сертификаты или агенты сертификатов. Как бы я это сделал? Это то, что я могу установить в kubeadm init?

B. Добавьте 127.0.0.1 в список принятых IP-адресов, которые содержит сервер API, сертификаты или агенты сертификатов. Как бы я это сделал? Это то, что я могу установить в kubeadm init?

Я думаю, что B будет лучше, потому что я мог бы создать ssh-туннель от моего ноутбука до удаленного компьютера и позволить моим товарищам по команде (если они у меня когда-либо будут)сделать аналогично.

Спасибо,

Slackware

1 Ответ

0 голосов
/ 04 ноября 2019

Вы должны добавить --apiserver-cert-extra-sans 10.0.0.1 к вашей команде kubeadm init.

См. https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/#options

Вам также следует использовать файл конфигурации:

apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: v1.16.2
apiServer:
  certSANs:
  - 10.0.0.1

Вы можете найти всю необходимую информацию здесь: https://godoc.org/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta2

...