Maksim
А он разве не на кубере? Пойму он с самого начала на кубере.
Maksim
Ну это всё равно что сказать что ОпенШифт теперь на кубере.....
𝚔𝚟𝚊𝚙𝚜
как и swarm, он может его задеплоить, но управлялка перенаправляет на portainer
𝚔𝚟𝚊𝚙𝚜
а в 2.0 будет кошерно, все контейнеры будут запускаться прямо в кубере
𝚔𝚟𝚊𝚙𝚜
другими словами, вы получите отличный гуй для управления кластером и запущенными контейнерами, с лдапом и деплоем приложений из репо прямо в кубер всего за пару кликов
𝚔𝚟𝚊𝚙𝚜
это должно быть будет бомба
𝚔𝚟𝚊𝚙𝚜
А кто-нибудь уже попробовал IPVS из 1.8?
https://github.com/kubernetes/kubernetes/tree/master/pkg/proxy/ipvs
𝚔𝚟𝚊𝚙𝚜
оно требует внешний балансировщик?
𝚔𝚟𝚊𝚙𝚜
не совсем понимаю как он в кубере работает
Ivan
Всем привет!
Помогите пожалуйста понять)))
я не могу достучаться до сервиса, (работающего на одной ноде) с другой ноды.
как в теории это должно происходить?
на физических нодах есть интерфейсы докера (172.17.0.1) и фланэла (10.4.х.х)
а сетки 10.3.х.х (которая используется для сервисов) на физической ноде не светится и весь траффик идёт на шлюз по умолчанию (и естественно уходит вникуда)
Ivan
у сервиса, соответственно, айпишник из подсетики 10.3.х.х
Vitaliy
https://www.google.ru/search?newwindow=1&source=hp&q=kubernetes+network+plugin&oq=kubernetes+netw&gs_l=psy-ab.3.1.0i203k1l2j0l8.1000.5600.0.7700.11.10.0.0.0.0.200.1200.0j6j3.9.0....0...1.1.64.psy-ab..2.9.1100.0..46j35i39k1j0i46k1.0.ZLRtAFgumkA
Maksim
какой ip у контейнера?
Maksim
дай kubectl get po
Maksim
Ivan
дай kubectl get po
pxe webdev$ kubectl -n intranet get po
NAME READY STATUS RESTARTS AGE
intranet-2163743981-3bm8p 1/1 Running 0 2h
pxe webdev$ kubectl -n intranet get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
intranet-svc 10.3.133.127 <nodes> 80:7180/TCP,443:7143/TCP 2h
Maksim
мм
Maksim
kubectl get po -o wide
Ivan
kubectl get po -o wide
pxe webdev$ kubectl -n intranet get po -o wide
NAME READY STATUS RESTARTS AGE IP NODE
intranet-2163743981-3bm8p 1/1 Running 0 2h 10.4.31.7 10.1.29.11
Maksim
на физических нодах есть интерфейсы докера (172.17.0.1) и фланэла (10.4.х.х) Исходя из этого у тебя не правильно настроен overlay сеть
Ivan
Maksim
при првельно настройке docker0 должен иметь адресс 10.4.х.1
Maksim
поробуй остановить докер
Maksim
удалить docker0 интерфейс
Maksim
(удали все контейнеры)
Maksim
и только потом запустить его, что бы ядро пересоздало интерфейс
Maksim
не понял)) можно подробнее))
По холрошем нужно остановить kubelet, удалить контейнеры и сети докера, остановить докер, удалить eth, после запустить докер и кублет
Maksim
интерфейс удаляется ip link delete <>
Vitaliy
изначально было не очевидно что у человека cni настроен. я вообще не спец совсем чтобы давать советы
Ivan
я больше скажу))) я сам не знаю, настроен ли у меня cni ))))
Maksim
а вот сейчас и узнаем.
Maksim
переконфигурируй docker0
Maksim
Ivan
у меня при заливке нод на них (по крайней мере на мастере) заливаются файлы
/etc/kubernetes/cni/docker_opts_cni.env
/etc/kubernetes/cni/net.d/10-flannel.conf
далее в клауд-конфиге короса есть секция
- name: 40-flannel.conf
content: |
[Unit]
Requires=flanneld.service
After=flanneld.service
[Service]
EnvironmentFile=/etc/kubernetes/cni/docker_opts_cni.env
далее в секции кублета есть ключ —network-plugin=cni
Ivan
ну это ладно... по 10.4 сетку я поковыряю...
Ivan
а как вообще должно быть? сетка 10.3 должна присутствовать на ноде? (на физ интерфейсе)
Ivan
т.е. сетка с сервисами (может у кого она с другими адресами)
Maksim
хм...
Maksim
видимо ч совсем иначе делал сеть(
Maksim
тогда надо смотреть firewall
Ivan
Роман
Это слой сети, в которой поды меж собой взаимодействуют. Она объединяет докеровские сети на нодах.
Роман
Грубо говоря.
Ivan
а, понял...
это, собственно, pod_network))
в настройках задаётся две подсетки при поднятии кластера:
service_network и pod_network
вот у меня первая сетка это 10.3.х.х а вторая 10.4.х.х
Ivan
Роман
Alex Sharov
Господа, а можно в манифест кубернетеса как-то вкрутить переменную?
Alex Sharov
У меня в этом манифесте запускается контейнер
Alex Sharov
я хочу версию передавать
Роман
Alex Sharov
kubectl
Роман
Он не умеет переменные (окружения, по крайней мере). Только если ты будешь подставлять поля по типу:
valueFrom:
fieldRef:
fieldPath: status.hostIP
Ivan
Да. На самом деле это IPIP Tunnel. У меня calico.
я калико не использую.
вообще сейчас обнаружил, что сетка service_network (10.3.х.х) фигурирует в конфигах только в одном месте - только на мастер-ноде в ключах апи-сервера
т.е. другие ноды про этот айпишник ничего не знают (кроме как через апи)
Ivan
и ещё - на всех нодах все айпишники разные и только у интрефейса docker0 на всех нодай айпишник 172.17.0.1
по-моему это дичь)))
Ivan
в общем мне судя по всему надо как то вывести на интерфейсы физических нод сетку сервисов (10.3)
Maksim
ip и должны по хорошему быть разные. Здесь работает правила L3 маршрутизации
Роман
Maksim
в том случае если не меняешь окружения докера
Dorian
Парни, сколько хостов в infra зоне должно быть в OS 3.6 ?
Dorian
Почему мне кажется из документации что 3 ?
Dorian
С одним даже router не ставится, заявляя что ему нужно 3 пода
Роман
А как по крону задания выполнять? Читал, что есть CronJob, но там нужно включать v2alpha1. Что-то не хочется...
Maksim
работает через CronJob
Maksim
Другой способ написать самому скриптик и засылать job
Denis
Всем привет. Кто на AWS разворачивал? Какие спеки для машин использовали?
Øk_gø_løve
Øk_gø_løve
Юзал kops, он сам подбирал.
Denis
Ха 🙂
Denis
Привет Нетрису)
Denis
> For the master, for clusters of less than 5 nodes it will use an m3.medium, for 6-10 nodes it will use an m3.large; for 11-100 nodes it will use an m3.xlarge.
> For worker nodes, for clusters less than 50 nodes it will use a t2.micro, for clusters between 50 and 150 nodes it will use a t2.small and for clusters with greater than 150 nodes it will use a t2.medium.
Source: https://kubernetes.io/docs/getting-started-guides/aws/
Volodymyr
привет.. kubectl понимает анкоры yaml?
Volodymyr
у меня без —validate=false не понимает
Denis
Maksim
Volodymyr