Andrey
я не в курсе, что это, сейчас прочитаю, спасибо
Andrey
для клиентов это прозрачно, они не коннектятся к мастеру напрямую
Anton
stolon вещь
Andrey
коннект идёт через прокси сервис, который в курсе, кто сейчас мастер
Andrey
разумеется, этот прокси можно и нужно реплицировать?
Andrey
да
Andrey
в доке столона есть картинка с диаграммой, там достаточно просто всё
Andrey
спасибо огромное, буду копать
Anonymous
Подскажите, как правильно задать в k8s учётку для доступа в eu.gcr.io? Делаю так: kubectl -n kube-system create secret docker-registry giftery-gcr --docker-server "https://eu.gcr.io" --docker-username _json_key --docker-email admin@foobar.ru --docker-password=$(cat gcr.json) (пароль это такой JSON) А если потом декодирую .dockerconf из получившегося секрета - получаю невалидный JSON, часть которого ("auth") тоже декодируется в "_json_key:". И образы конечно не качаются.
Vladyslav
Создавайте regsecret в одном неймспейсе с деплойментом
Anonymous
Дело не только в неймспесах, у меня как-то вместо пароля открывающая скобка попадает, это не JSON невалидный.
G72K
Господа, я делаю вывод что никто тут не зопатчился от meltdown, иначе бы тут было сильно больше сообщений, что докер не может остановить контейнеры. Гонка в runc, которая начала проявляться после meltdown патчей. Фикс есть в runc включенном в докер 18.01
Dmitrii
У меня centos 7 с ядром 3.10.0-693.11.6.el7.x86_64 (вроде в нем патч вышел) и докер версии 17.12.0-ce, build c97c6d6 - вроде все окей.
Dmitrii
Много контейнеров гоняете туда-сюда?
Мало, кластер 3 ноды по ~15 подов на ноду + десяток кронджоб
G72K
https://github.com/moby/moby/issues/33820
G72K
Связанный фикс в runc https://github.com/moby/moby/issues/36010
V
ребят подскажите у меня кластер слушает порт которого нет в сервисах  netstat + ps выдают мне строку что это kube-proxy
V
как мне найти этот сервис который слушает этот порт и увидеть что там происходит
neb0t
lsof -i :port (or something similar)
neb0t
А кто подскажет с какой версии kube-dns подтягивается в эко-систему? Я поставил 1.5 (по инструкции с сайта), но в запущеных не вижу пода с ДНС. Соответственно не могу находить контейнеры по ДНС или по Имени. Возможно есть вариант подкрутить консула для автодискавери сервисов или все намного проще?
neb0t
Alexander ns —all :)
neb0t
В том то и дело что нету ... Должен быть из коробки, но я не в клауде сетапил, а в виртуалбоксе для тестов.
Andrey
Ребят, а куб умеет loadbalancer делать не в облаках, а в чем то более приземлённом вроде nginx или haproxy?
someone
Подскажите как правильно реализовать кубернетес, чтобы закрыть все порты наружу на сервере кроме 80 и 443. Почитал, что для этого нужен ингресс-нжинкс. пробовал ставить по 3 разным гайдам и получается связка: деплоймент-сервис-ингресс. Но сервис прокидывает на белый ip порты только с 30000, а мне нужны 80 и 443. Или для этой цели нужен нжинкс на хосте с proxy-pass?
Anonymous
ингресс делает listen на 80,443 и при запросе роутит на нужный сервис
Anonymous
чтоб закрыть все порты, лучше всего иметь иметь доступ в инет только на ингрес ноде
Anton
Ребят, а куб умеет loadbalancer делать не в облаках, а в чем то более приземлённом вроде nginx или haproxy?
эт слишком общая задача, loadbalancer расчитывает на готовую инфраструктуру. думаю пилить балансировщики не входит в рамки задач к8с
Konstantin
Лушче всего иметь доступ из интернета только на балансере и больше нигде.
someone
ингресс делает listen на 80,443 и при запросе роутит на нужный сервис
Да по идее так должно быть, но при просомтре портов котоыре слушает сервер там нет 80 порта. хотя ингресс активен, все поды активны и в статусе ингресса стоит 80 и нужный ip
Anonymous
посмотри что за nginx правило генерится
Anonymous
в чем проблема
Andrey
для этого и есть ингресс)
Ingress подразумевает что сверху оно еще и балансером накрыто либо в dns указаны все ноды. Вот я и хочу сверху приделать лоадбалансер, но хочется чтоб куб умел им управлять. Я слышал про то что он умеет в гуглклауде и тп это делать, но хочется чтоб он управлял чем то более приземленным, наприсер nginx/haproxy и тп
someone
посмотри что за nginx правило генерится
а как и где это можно посомтреть?
Anonymous
заити в контеинер да глянуть
V
ребят подскажите, kube-proxy порт доступный из вне но этого порта нет в services и по этому порту можно перейти на /healthz что это такое и как сконфигурировать или убрать
Салтыдык
да понятно, поэтому я и пытаюсь выяснить на каком языке лучше говорить. Потому что русский не совсем понятен.
V
я хорошо говорю по русски
Салтыдык
да я не спорю, но знаки препинания в сообщениях не повредят
Салтыдык
так что, подскажешь откуда /healthz
ну кинь манифест kube-proxy
Салтыдык
kube-proxy обычно имеет hostNetwork: true, вся конфигурация проходит на уровне аргументов
someone
заити в контеинер да глянуть
Проверил конфиги нжинкса все в порядке. и при заходе на порт 31603 который генерится сервисом все работает
someone
так в чём вопрос-то?
nginx-ingress-icm LoadBalancer 10.101.147.36 <pending> 80:31603/TCP 48m icm-ingress icm.test,auth.icm.test 192.168.131.245 80 2m (192.168.131.245) в качестве внешнего айпи(хостоывый)
someone
вопрос в том чтобы он слушал на 192.168.131.245 ip не 31604 порт а 80
Салтыдык
так ответили уже вроде
Салтыдык
порты с 30000 выделяются для service NodePort. самый простой способ забиндить ingress-nginx на 80,443 - запустить его с hostnetwork
Салтыдык
либо поменять сам range в kube-apiserver флажком --service-node-port-range
someone
все хзаработало. спасибо большое!
Салтыдык
hostNetwork: true
Салтыдык
не, с gke не сталкивался
Салтыдык
у них какой-то свой kube-proxy, либо просто в 1.8.x так стало много всего
V
вот такая штука возвращается
V
и без понятия где менять значение
Салтыдык
да я верю и даже уже ответил как убрать
V
так мне не надо убрать я хочу поменять
Салтыдык
ребят подскажите, kube-proxy порт доступный из вне но этого порта нет в services и по этому порту можно перейти на /healthz что это такое и как сконфигурировать или убрать
Салтыдык
> что это такое и как сконфигурировать или убрать » или убрать
Салтыдык
можно форкнуть kube-proxy (думаю, что весь kubernetes придётся) и переконфигурировать как надо
V
можно форкнуть kube-proxy (думаю, что весь kubernetes придётся) и переконфигурировать как надо
так мне интересно кто и как и где размешает это /healthz потому что на каждом возвращаемое значение слегка разное
Andrey
ингресс эт и есть лоадбалансер, по сути херовина которая генерит нжинкс правила)
ингресс слушает на разных ip на разных нодах. это по определению не подходит под LB
Салтыдык
ингресс слушает на разных ip на разных нодах. это по определению не подходит под LB
смотря с какой стороны посмотреть. Ингресс балансирует трафик внутри, а не снаружи
Andrey
оно будет в статус ingress ресурса выдавать IP?
Andrey
смотря с какой стороны посмотреть. Ингресс балансирует трафик внутри, а не снаружи
Ну тут понятно, с какой стороны спрашивающий смотрит, раз проводит аналогии с LB в облаке
Anonymous
первые две строчки почитай