Рейтинг:0

Ошибка шлюза 502 в Kubernetes Ingress (K3S — Bare Metal)

флаг ca

У меня есть кластер k3s с мастером на облачном VPS, но с двумя удаленными рабочими узлами, оба в одной сети. Они подключены через VPN к облачному провайдеру. Рабочие узлы смогли нормально присоединиться и смогли создать новые модули, но кажется, что связь является проблемой, потому что я не могу связаться с модулями из Ingress.

Когда я запускаю свой Traefik Ingress (я также пробовал Nginx, тот же результат), он продолжает возвращать 502, хотя конфигурация кажется правильной, поэтому он не может связаться с серверной частью. Бэкэнд-модули находятся на удаленных рабочих, а входной контроллер — на VPS.

Бэкэнд-развертывание:

apiVersion: приложения/v1
вид: развертывание
метаданные:
  Имя: Кивунапи
спецификация:
  реплики: 3
  селектор:
    метки соответствия:
      приложение: kiwoonapi
  шаблон:
    метаданные:
      этикетки:
        приложение: kiwoonapi
    спецификация:
      контейнеры:
      - название: бэкенд
        imagePullPolicy: Ифноптресент
        изображение: *притяжение*
        порты:
        - контейнерПорт: 80
      imagePullSecrets:
        - имя: *секрет*

Обслуживание:

апиВерсия: v1
вид: сервис
метаданные:
  имя: kiwoonapisvc
  этикетки:
    бег: кивунапи
спецификация:
  селектор:
    приложение: kiwoonapi
  порты:
    - протокол: TCP
      порт: 80
      целевой порт: 80

Вход:

Версия API: networking.k8s.io/v1
вид: Вход
метаданные:
  имя: kiwoonapi-ingress
  аннотации:
    kubernetes.io/ingress.class: трафик
спецификация:
  правила:
  - хост: *домен*
    http:
      пути:
      - путь: /апи
        тип пути: префикс
        серверная часть:
          оказание услуг:
            имя: kiwoonapisvc
            порт:
              номер: 80
  тлс:
    - хозяева:
      - *домен*
      secretName: *домен-crt*

Статус кластера:

kubectl получить стручки
ПРОСТРАНСТВО ИМЕН ИМЯ ГОТОВ СТАТУС ПЕРЕЗАПУСКА ВОЗРАСТ
kube-system local-path-provisioner-5ff76fc89d-qzmpc 1/1 Работает 0 54m
kube-system metrics-server-86cbb8457f-rhrcf 1/1 Работает 0 54m
kube-system coredns-7448499f4d-xf5lj 1/1 Бег 0 54м
kube-system helm-install-traefik-crd-q8c28 0/1 Завершено 0 54 м
kube-system helm-install-traefik-xd7vp 0/1 Завершено 1 54 м
kube-system svclb-traefik-jd8cr 2/2 Бег 0 53м
kube-system traefik-97b44b794-ht2l4 1/1 Бег 0 53м
kube-system svclb-traefik-9zcvm 2/2 Бег 0 52м
kube-system svclb-traefik-zlj7w 2/2 Бег 0 49м
по умолчанию kiwoonapi-6c668ffd67-lsbll 1/1 Бег 0 49м
по умолчанию kiwoonapi-6c668ffd67-csqz9 1/1 Бег 0 49м
по умолчанию kiwoonapi-6c668ffd67-89x95 1/1 Бег 0 49м

kubectl получить svc --all-namespaces
ТИП ПРОСТРАНСТВА ИМЕН КЛАСТЕР-IP ВНЕШНИЙ-IP ПОРТ(Ы) ВОЗРАСТ
по умолчанию kubernetes ClusterIP 10.43.0.1 <нет> 443/TCP 54 м
kube-system kube-dns ClusterIP 10.43.0.10 <нет> 53/UDP,53/TCP,9153/TCP 54m
kube-system metrics-server ClusterIP 10.43.109.147 <нет> 443/TCP 54m
kube-system traefik LoadBalancer 10.43.176.123 10.0.0.131,10.0.0.98,192.168.0.4 80:30410/TCP,443:32524/TCP 53m
по умолчанию kiwoonapisvc ClusterIP 10.43.96.214 <нет> 80/TCP 47m

kubectl получить ing
НАЗВАНИЕ КЛАСС ХОСТИ АДРЕС ПОРТЫ ВОЗРАСТ
kiwoonapi-ingress <нет> *домен* 10.0.0.131,10.0.0.98,192.168.0.4 80, 443 42 м

Файл Dockerfile предоставляет порты 80 и 443. Я не уверен, что отсутствие включения 443 в развертывание как-то влияет на это.

Используемый LoadBalancer не из облака: это то, что встроено в k3s и, по сути, использует существующий узел.

Кто-нибудь видит проблему в конфигурации где-нибудь? Я могу предоставить больше информации, если это необходимо.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.