Попробуйте запустить weave-network-plugin в kubernetes

Прежде всего, я хотел бы сказать, что я новичок в теме kubernetes, и у меня проблема в том, что я не могу связаться с модулем (через службу), когда я предоставляю службе фиксированный IP, поэтому я хотел бы подвести итог вещи, которые, я думаю, я понял, и, может быть, кто-то здесь может исправить меня или признать мой путь решения моей проблемы.

Я развертываю свой кластер с помощью kubespray ansible-script на baremetal (2 узла с CentOS 7) и настраиваю скрипт и полученный кластер следующим образом:

  • Режим прокси: ipvs
  • сеть обслуживания: 10.0.0.0/24
  • Под-сеть: 10.0.1.0/24
  • сетевой плагин: weave-net
  • dns_mode: dnsmasq_kubedns

и после успешного развертывания я могу развернуть модули, сервисы, секреты и т. д. в кластере, поэтому мне кажется, что он работает нормально, но когда я сейчас определю внешний IP, например, так:

apiVersion: v1
kind: Service
metadata:
  name: nginx
spec:
  ports:
  - port: 80
  selector:
    name: nginx
  externalIPs:
  - "192.168.1.42"
---
apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    name: nginx
spec:
  containers:
  - name: gluster-pod1
    image: gcr.io/google_containers/nginx-slim:0.8
    ports:
    - name: web
      containerPort: 80

Я могу связаться с модулем по его внутреннему IP-адресу, по IP-адресу конечной точки и по IP-адресу главного устройства, но не по IP-адресу, который я определяю для этой службы. Когда я пытаюсь это сделать, я получаю сообщение об ошибке: "нет маршрута к хосту "странно, что для меня это когда я устанавливаю IP для сервиса в качестве того же IP, что и мастер kubernetes, т.е.

...
spec:
  ports:
  - port: 80
  selector:
    name: nginx
  externalIPs:
  - "192.168.1.1"

Я могу добраться до стручка.

Теперь, после прочтения большого количества документации и рекомендаций, проблема решается, когда я настраиваю свой собственный балансировщик нагрузки для управления внешними IP-адресами, потому что если я не определил фиксированный IP-адрес, служба ожидает статус "ожидающий" для внешнего IP-адреса.,

Но, к сожалению, после прочтения документации я не уверен, действительно ли архитектура работает таким образом, я имею в виду pod <-> service <-> балансировщик нагрузки (<-> DHCP)

так что я могу добраться до стручка через сервис.

Когда я начал, я хотел бы закрыть этот пост, я не уверен, что это правильное направление для решения моей проблемы. Вот почему я был бы очень благодарен, если кто-то может подтвердить меня или поправить меня:-) С наилучшими пожеланиями, Дэн

0 ответов

Другие вопросы по тегам