172 похожих чатов

Подскажите плиз по организации ingress-controller'а в on-premise кластере куба: остановили

свой выбор на haproxy от jcmoraisjr, подняли две реплики на выделенных нодах на hostNetwork (ноды изолировали от запуска других приложений через nodSelector и tain\toleration). Перед кластером подняли haproxy+keepalived с апстримом на ингресс ноды (80, 443). Вроде все ок, но в такой связке не получается использовать networkpolicy - рубит всякое обращение через ингрес, не помогает ни podSelector, ни namespace. чядн?

16 ответов

15 просмотров

без твоих манифестов сложно что-то сказать

на калико встречал как раз сочетание про networkpolicy и hostnetwork - короче полиси не работают в таком случае и надо через HostEndpoints действовать

У меня банально стоит (контроллер тоже с hostNetwork: true) spec: ingress: - from: - namespaceSelector: matchLabels: name: ingress-nginx ... Работает

stempher- Автор вопроса
Alexey Shanko
на калико встречал как раз сочетание про networkpo...

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

stempher- Автор вопроса
stempher- Автор вопроса
stempher
подскажите, какой cni используете?

У меня есть kube-router и cilium в кластерах. Такое правило работает на обоих вариантах cni

stempher
https://pastebin.com/dMuQDCTq

- ports: - port: 8080 Вы же разрешили только 8080 порт. сервисы/порты в этом namespace ожидают на этом порту подключений?

stempher
да, конечно

Поправка, это именно для подов List of ports which should be made accessible on the pods selected for this rule. Each item in this list is combined using a logical OR. If this field is empty or missing, this rule matches all ports (traffic not restricted by port). If this field is present and contains at least one item, then this rule allows traffic only if the traffic matches at least one port in the list. Поды в namespace test точно слушают 8080 порт?

stempher- Автор вопроса
Dmitry Sergeev 🇺🇦
Поправка, это именно для подов List of ports ...

apiVersion: apps/v1 kind: Deployment ... spec: containers: - image: inanimate/echo-server imagePullPolicy: IfNotPresent name: echo ports: - containerPort: 8080 protocol: TCP ... --- apiVersion: v1 kind: Service ... spec: clusterIP: 172.30.36.210 ports: - name: http port: 8080 protocol: TCP targetPort: 8080 selector: app: echo sessionAffinity: None type: ClusterIP

stempher- Автор вопроса
Dmitry Sergeev 🇺🇦
У меня банально стоит (контроллер тоже с hostNetwo...

если запускать поды ingress controller'а без hostNetwork и создать сервис с nodePort (соответственный апстрим на балансере на ингресс ноды и порт), то селекторы в networkpolicy работаю норм. Насколько верно использовать nodePort в такой конфигурации?

stempher
если запускать поды ingress controller'а без hostN...

если под в hostNetwork - у него адрес узла. и надо указывать ipBlock в манифесте networkpolicy nodePort - это NAT, прием трафика на 30000+ порты, значит нужен внешний балансировщик, отказоустойчивый. думай сам. насколько тебе критично указать ipBlock с адресом узла, на который контроллер прибит

stempher- Автор вопроса
Lucky SB
если под в hostNetwork - у него адрес узла. и надо...

внешний балансировщик с keepalived имеется в любом случае. в случае hostNetwork для ipBlock работает адрес интерфейса tunl0, а не eth0. вопрос какое из решений надежнее/правильнее (работаю оба)?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта