В целях тестирования я хочу настроить мастер kubernetes так, чтобы он был доступен только с локальной машины, а не снаружи.В конечном итоге я собираюсь запустить докер-контейнер прокси-сервера на компьютере, который открыт снаружи.Это все внутри мини-куба VM.
Я думаю, что настройка kube-proxy - это путь.Я сделал следующее
kubeadm config view > ~/cluster.yaml
# edit proxy bind address
vi ~/cluster.yaml
kubeadm reset
rm -rf /data/minikube
kubeadm init --config cluster.yaml
После выполнения netstat -ln | grep 8443
я вижу tcp 0 0 :::8443 :::* LISTEN
, что означает, что он не принимал IP.
Я также пытался kubeadm init --apiserver-advertise-address 127.0.0.1
, но это только меняетрекламируемый адрес до 10.xxx в kubeadm config view
.Я чувствую, что это, вероятно, неправильно в любом случаеЯ не хочу, чтобы сервер API был недоступен для других контейнеров докеров, которым требуется доступ к нему или что-то в этом роде.
Я также попытался сделать это kubeadm config upload from-file --config ~/cluster.yaml
, а затем попытаться вручную перезапустить докер, на котором запущен kube-прокси.Также попытался перезагрузить компьютер / кластер после изменения конфигурации kubeadm, но не смог понять это.При перезагрузке виртуальной машины minikube вручную команда kubeadm исчезает, и даже не запускается докер.Различные онлайн-методы перезапуска вещей, похоже, тоже не работают (возможно, просто делают это неправильно).
Также пытался редактировать конфигурационный файл докера kube-proxy (привязанный к локальному каталогу), но он перезаписывается при перезапускедокерЯ не понимаю.
В панели управления kubernetes нет ничего, что позволяло бы мне также редактировать конфигурационный файл kube-proxy (так как он является демоном).
В конечном счете, я хочу использоватьпрокси-сервер, прошедший аутентификацию и расположенный напротив мастера k8s (в частности, apiserver).Прямой доступ к мастеру k8s извне виртуальной машины не будет работать.
Спасибо