Dmitriy
Sergey
https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/
Sergey
список там есть
Sergey
что поддердивается
Sergey
You’ll need to have a Kubernetes cluster in place, with network policy support. There are a number of network providers that support NetworkPolicy, including:
Calico
Cilium
Kube-router
Romana
Weave Net
Note: The above list is sorted alphabetically by product name, not by recommendation or preference. This example is valid for a Kubernetes cluster using any of these providers.
Sergey
я выше и писал для примера калико или вэйв
Dmitriy
мне остается связать это с CNI и в итоге можно будет использовать политики
Maksim
Maksim
который то же рулит в iptables в таблице филтер
Sergey
так это один из network provider который поддерживает NetworkPolicy
Dmitriy
Sergey
чем Kube-router хорош - так тем, что он юзает iptables+ipset
Mikhail [azalio]
А что вы мониторите в Кубере на Bare-metal? Может есть какие-нибудь статьи интересное про это?
Mikhail [azalio]
А так же покажите ваши дашборды! )
Maksim
то же самое что и не на баре метал)
Maksim
кол-во памяти, загруженность проца кол-во hhd
Maksim
всё бъёться по нодам и namespace
Maksim
объём трафика
Maksim
дефолтовый от prometheus
kalloc
Привет
kalloc
Гугловый вариант юзабелен?
kalloc
Есть к нему конкретные вопросы?
Maksim
А есть не гугловый вариант?)
kalloc
Я про google container
kalloc
В части gcp
Maksim
почему нет?
Maksim
учитывая что до 1.7 кубер делался по сути гуглом
Artemiy
привет, чем деплоить в этот ваш кубернейтес, чтоб из CI
bebebe
модный ответ: спиннакером, но есть нюансы
G72K
𝚔𝚟𝚊𝚙𝚜
народ а кто в курсе почему входящие пакеты на externalIP могут отбрасываться как martian source? - уже всю голову сломал
bebebe
как он в жизни, а не на картинках?
там нужно понимать саму модель разработки
инженеры нетфликса пилют его как бы опенсорс, но пилят его специфично для внутренних нужд самого нетфликса, а от комьюнити - велком то контрибьют
отсюда например странная особенность, что архитектурно spinnaker нельзя поставить без уже имеющегося облака
bebebe
и так со многими их продуктами
G72K
ну так в куб же его можно поставить? чем не облако?
bebebe
да, но если у тебя нет куба - нет мультиков
𝚔𝚟𝚊𝚙𝚜
причем проблема происходит только тогда, когда я обращаюсь к kubeproxy:
PREROUTING: IN=br0.100 OUT= MAC=fa:a3:18:af:cd:c7:44:31:92:73:c8:76:08:00 SRC=1.2.3.4 DST=5.6.7.8 LEN=60 TOS=0x00 PREC=0x00 TTL=61 ID=19612 DF PROTO=TCP SPT=28543 DPT=80 WINDOW=29200 RES=0x00 SYN URGP=0
IPv4: martian source 10.244.79.2 from 1.2.3.4, on dev br0.100
ll header: 00000000: fa a3 18 af cd c7 44 31 92 73 c8 76 08 00 ......D1.s.v..где:
1.2.3.4 - это мой внешний ip
5.6.7.8 - это внешний ip одной из нод Kubernetes'а висит на br.100
10.244.79.2 - под
bebebe
собственно ему нужно подсунуть вольюмы и инслать чартом stable/spinnaker который тянет за собой jenkins (они с декабря выпилили возможность запускать какие-либо команды, типа тот же hello world) и запускают только через jenkins и еще тянет minio,redis
𝚔𝚟𝚊𝚙𝚜
В INPUT они даже не попадают
G72K
во дела
Anton
есть вопрос по nginx-ingress. не понимаю зачем на 443 порту в контейнере слушает nginx-ingress-controller, а не сам nginx?
bebebe
@amaksimov ping
G72K
Anton
LISTEN 0 0 :::443 :::* users:(("nginx-ingress-c",pid=7,fd=3))
G72K
ну делааа
𝚔𝚟𝚊𝚙𝚜
netstat -natp | grep kube
tcp 0 0 1.2.3.4:80 0.0.0.0:* LISTEN 4875/kube-proxy- а это значит что kube-proxy работает в userspace mode?
𝚔𝚟𝚊𝚙𝚜
или не значит?
Mikhail [azalio]
кубе-прокси работает в userspace в любом случае. Как он роутит - зависит от параметров запуска.
Mikhail [azalio]
ps auxwwww | grep kube-proxy
𝚔𝚟𝚊𝚙𝚜
/usr/local/bin/kube-proxy --kubeconfig=/var/lib/kube-proxy/kubeconfig.conf --cluster-cidr=10.244.0.0/16cat /var/lib/kube-proxy/kubeconfig.confapiVersion: v1
kind: Config
clusters:
- cluster:
certificate-authority: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
server: https://10.36.11.20:6443
name: default
contexts:
- context:
cluster: default
namespace: default
user: default
name: default
current-context: default
users:
- name: default
user:
tokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
𝚔𝚟𝚊𝚙𝚜
хм, правило кстати есть
Mikhail [azalio]
у меня не слушает в iptables mode
Mikhail [azalio]
` --proxy-mode ProxyMode Which proxy mode to use: 'userspace' (older) or 'iptables' (faster). If blank, use the best-available proxy (currently iptables). If the iptables proxy is selected, regardless of how, but the system's kernel or iptables versions are insufficient, this always falls back to the userspace proxy.
`
𝚔𝚟𝚊𝚙𝚜
ага, значит это fallback!
Mikhail [azalio]
наверное стоит запустить сервис какой-нибудь и посмотреть изменились правила iptables или нет
𝚔𝚟𝚊𝚙𝚜
благодарю
𝚔𝚟𝚊𝚙𝚜
правила меняются
𝚔𝚟𝚊𝚙𝚜
Mikhail [azalio]
𝚔𝚟𝚊𝚙𝚜
хмм
𝚔𝚟𝚊𝚙𝚜
отдельных правил нет
если я использую один из локальных адресов ноды как externalIP для сервиса, то все работает отлично
𝚔𝚟𝚊𝚙𝚜
но если я добавляю какой-нибудь внешний IP-адрес на одну из нод и указываю его как externalIP для сервиса, то внешние пакеты на этот IP дальше PREROUTING не уходят
𝚔𝚟𝚊𝚙𝚜
дропаются ядром как martian source
𝚔𝚟𝚊𝚙𝚜
при этом если rp_filtering отключить, оно вообще работает без default route для этого IP о__О
𝚔𝚟𝚊𝚙𝚜
откуда он знает в какой интерфес ему ответные пакеты слать, для меня тоже загадка
𝚔𝚟𝚊𝚙𝚜
Но это вообще здоровое решение? :)
И что если у меня несколько таких таблиц, для каждой таблицы такое правило прописать?
Mikhail [azalio]
вопрос ставит меня в тупик если честно. Если конфигурация этого требует - я прописываю, не требует, не прописываю :)
Mikhail [azalio]
у меня сеть подов совпадает с сетью docker0 на интерфейсе.
𝚔𝚟𝚊𝚙𝚜
огромное тебе спасибо, дружище!
Mikhail [azalio]
👍
Danil
Приветствую.
У меня вопрос:
Кто-нибудь сталкивался с тем, что при создании external контейнера, зависает на pending?
kubectl get services:
nginx 10.110.42.173 <pending> 80:80/TCP 20m
Если создавать internal, то все окей:
nginx-internal 10.107.207.123 <none> 33334/TCP 7m
Mikhail [azalio]
В describe не написано почему? (Это так, мысли вслух)
Maksim
Maksim
pending означает, что нет подходящих нод
Maksim
тут надо смотреть логи кублета
Danil
хмм
Logan
https://www.hashicorp.com/blog/hashicorp-vault-0-8-3/
вдруг кто не видел