У меня есть частный кластер Kubernetes с двумя узлами, настроенный на VMWare Workstation 15. Я использую MetalLB и Calico.
Служба входа и вход выглядят так:
xxx@c1-cp1:~/Desktop$ kubectl get svc -n ingress-controller-2
НАЗВАНИЕ ТИП КЛАСТЕР-IP ВНЕШНИЙ-IP ПОРТ(Ы) ВОЗРАСТ
wsnginx-ingress-nginx-controller LoadBalancer 10.109.117.222 192.168.44.136 80:30167/TCP, 443:30680/TCP 24 часа
wsnginx-ingress-nginx-controller-admission ClusterIP 10.105.103.165 <нет> 443/TCP 24 часа
xxx@c1-cp1:~/Desktop$ kubectl получает доступ к apollo
НАЗВАНИЕ КЛАСС ХОСТИ АДРЕС ПОРТЫ ВОЗРАСТ
аполло-вход wsnginx test.xxx.com 192.168.44.136 80 3h17m
Я использую сетевой адаптер Nat и статический IPS. У меня настроена переадресация портов следующим образом
curl -D- http://192.168.44.136 -H 'Хост: test.xxx.com'
из виртуальной машины, возвращает статус 200, но я не могу получить к нему доступ с хост-компьютера Win10 на 127.0.0.1:8080
как я получаю 404 NGINX не найден
.
Не могли бы вы мне помочь? Что я делаю не так? Как еще я мог выставить его в своей частной сети?
Спасибо!
ОБНОВИТЬ
Я не уверен, что это правильный путь, но мне удалось подключиться с хост-компьютера, немного изменив ресурс Ingress. Я помещаю в комментарии параметр хоста, так как
Версия API: networking.k8s.io/v1
вид: Вход
метаданные:
имя: аполлон-вход
спецификация:
ingressClassName: wsnginx
правила:
#- хост: test.xxx.com
- http:
пути:
- бэкэнд:
оказание услуг:
название: аполло-сервис
порт:
номер: 80
дорожка: /
тип пути: префикс
и теперь мой вход выглядит так
ПРОСТРАНСТВО ИМЕН НАЗВАНИЕ КЛАСС ХОСТИ АДРЕС ПОРТЫ ВОЗРАСТ
по умолчанию ingress.networking.k8s.io/apollo-ingress wsnginx * 192.168.44.136 80 3h31m
Кажется, теперь я могу получить к нему доступ и с моей хост-машины. У меня есть Rest API, поэтому я только что открыл его из браузера. http://127.0.0.1:8080