Antlar
тебе сюда, наверное
Antlar
https://t.me/docker_ru
Vitalii
Если не писать скриптов по шаблонизации, а использовать нативные возможности докера, то можно пересобирать образы по несколько раз используя в докерфайлах конструкцию ARG FROM_IMAGE FROM ${FROM_IMAGE} Например, берем офф образ php-cli, накидываем в него свои конфиги используя cli/Dockerfile, получается php-cli-tmp, а потом уже на php-cli-tmp накидываем нужные модули используя common/Dockerfile. И то же самое для fpm. Но как-то очень тупо такое делать)))
Валентин
а никто не пробовал fluentbit вместо fluentd? на конференции автор обоих этих тулзей очень расхваливал fluentbit именно в контексте кубера. но я так и не пощупал его...
Я использую fluentbit + containerd, настраивается почти из коробки (в репо есть фильтр для containerd, а в том конфиге, что ставится из мануала его нет, пришлось вручную вставлять)
German
он там не просто так на 127.1
можно поправить /etc/kubernetes/manifests/kube-apiserver.manifest и перезапустить kubelet, для меня сработало, пока проблем не вижу
German
так он же ансекурный
Салтыдык
а, просмотрел
Konstantin
Господа. Кто как проверяет ошибки в кронджобах?
Konstantin
Нет статуса выполнения
Konstantin
а по LAST SCHEDULED такое себе понимать, что с кроном в итоге там стало, ок, не ок. особенно когда он раз в сутки
Andrei
Ребят, кто-нибудь делал «дырку» для получения сертификатов при использовании basic-auth? (nginx-ingress) Проблема: при активной авторизации, запрос на подтверждение домена не проходит
Andrey
Всем привет, кто нибудь ставил elasticsearch+es_curator? Поставил curator но он не видит индексы из эластика, контейнер падает, постоянно ошибки типа elasticsearch.exceptions.ElasticsearchException: Unable to create client connection to Elasticsearch. Error: ConnectionError(<urllib3.connection.HTTPConnection object at 0x7f7a4d80dcf8>: Failed to establish a new connection: [Errno -2] Name does not resolve) caused by: NewConnectionError(<urllib3.connection.HTTPConnection object at 0x7f7a4d80dcf8>: Failed to establish a new connection: [Errno -2] Name does not resolve)
Nina
Name does not resolve или не резолвит имя
Nina
nslookup
Andrey
Эластик жив. Смотреть откуда из контейнера куратора?
Салтыдык
куратор должен знать как подключаться к ластику. Вот проверь этот линк на работоспособность
Stanislav
Извините за оффтопик, но сочетание имени и первого слова в сообщении - это таки доставляет, когда заходишь в конфу и видишь первым это
A
Кто нибудь использует/использовал консул в кубере?
V
ребят как на gke для сервиса привязать старый статический айпишник для service loadbalancer
A
Установить его установил в виде изучения работы с кубером и потому что его использовал до кубера. Так же установил авторегистратор под него. Интегрировал его днс в кореднс. Но вот теперь думаю так ли он нужен в кубере? Если есть свои нативные подобные возможности в кубере. Ну и не совсем понятно как правильно автоматически регистрировать поды/сервисы. По идее надо с каждым сервисом регистрируемым должен стоять консул агент, то есть объединять в один под, что добавляет проблем, а если просто регистрировать абстрактно на конкретном агенте, то сервисы будет доступны только на этом агенте и без доступа к ним через ui. Вот и думаю есть ли какое-то применение его в данных реалиях? kv можно и в других сервисах организовать с меньшей болью.
Dmitry
Если нужна реализация Service discovery - она есть в Кубере. Если нужно kv - есть ConfigMap в Кубере
Dmitry
Как по мне - нет смысла использования Консула
A
Как по мне - нет смысла использования Консула
Но для чего-то сделали его интеграцию, значит есть кейсы, но мне в голову не приходят...
Dmitry
Но для чего-то сделали его интеграцию, значит есть кейсы, но мне в голову не приходят...
Интеграцию в каком плане? Напилили образ под Docker или есть какая-то более глубокая связь с Кубером? Я его когда-то в попробовал в Докере - были косяки с резолвом IP-адресов. Забил. проще было в приложении заменить клиент для дискаверинга
A
Интеграцию в каком плане? Напилили образ под Docker или есть какая-то более глубокая связь с Кубером? Я его когда-то в попробовал в Докере - были косяки с резолвом IP-адресов. Забил. проще было в приложении заменить клиент для дискаверинга
Есть достаточно большое описание на сайте разработчика https://www.consul.io/docs/platform/k8s/index.html. Есть хелм чарт под это, то есть чамарочались. Значит какой-то смысл есть.
Andrey
Основной кейс - это server discovery между кубом и не-кубом, насколько мне известно.
Anton
подскажите upstream upstream_balancer { server 0.0.0.1; # placeholder upstream в конфиге ingess это нормально?
Rainbow
Да, там луа докидывает ендпоинты динамически
Rainbow
https://github.com/kubernetes/ingress-nginx/blob/master/docs/how-it-works.md
Anton
Спасибо. А вот такая ошибка Message: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"rootfs_linux.go:58: mounting \\\"/var/lib/kubelet/pods/ec44e93f-e715-11e8-8156-00505690c60e/volume-subpaths/local-pv-732e2077/db-bugfix-696-add-is-initial-postgresql/0\\\" to rootfs \\\"/var/lib/docker/overlay2/28c21edcdb73e5a5b2eea86b56232d03707d9d88aabbdeddfe5c2a13dac769ed/merged\\\" at \\\"/var/lib/docker/overlay2/28c21edcdb73e5a5b2eea86b56232d03707d9d88aabbdeddfe5c2a13dac769ed/merged/var/lib/postgresql/data/pgdata\\\" caused \\\"no such file or directory\\\"\"": unknown у кого нибудь встречалась?
Anton
😄
Anton
Normal Pulled 15m (x38 over 8h) kubelet, xxxx Container image "docker-registry..../postgres:9.6" already present on machine Warning BackOff 56s (x848 over 3h1m) kubelet, xxxx Back-off restarting failed container
Anton
ok. спасибо
A
Основной кейс - это server discovery между кубом и не-кубом, насколько мне известно.
Согласен, тоже такие мысли промелькнули. Значит получается что регистрация подов и не имеет смысла, единственное сервисы с externalIP и конкретными эндпоинтами и это уже интересно
A
И даже без эндпоинтом просто по имени
Dima
Основной кейс - это server discovery между кубом и не-кубом, насколько мне известно.
те например аут оф кластер постгрес + какой-нибудь patroni?
Dima
если бд в кубернетес не деплоим
Andrey
Мы не пробовали patroni, не могу сказать.
A
Мы не пробовали patroni, не могу сказать.
Он как раз с консулом может работать, и я как раз не хотел в кубер тащить бд
V
для internalLB или для сервиса?
для сервиса но вроде бы нашел loadBalancerIP: 1.2.3.4
Sash
Но для чего-то сделали его интеграцию, значит есть кейсы, но мне в голову не приходят...
У вас крутятся другие сервисы не в докере но решаются в консуле и или в соседнем кластере кубера
Семён
с помощью консула можно экспоузить контейнеры и сервисы динамически в обход ингресс и тд
Семён
намандить свой сервис дискавери
Семён
но это скользкая дорожка
A
Мне кажется он и интегрирован только для внешних сервисов, что бы из кубера был к ним доступ, а регистрация из самого кубера не так принципиальна, или может сервисы, что бы внешние к ним обращались по имени
Andrey
Ребят, а canary deployment в кубере без istio существует?
Sergey
да деплоешь в другой сервис (или неймспейс) со своим ингресом и на уровне вышестоящего балансера разруливаешь процент трафика
Andrey
да деплоешь в другой сервис (или неймспейс) со своим ингресом и на уровне вышестоящего балансера разруливаешь процент трафика
Я в штатном ingress просто наткнулся на аннотации: nginx.ingress.kubernetes.io/canary "true" or "false" nginx.ingress.kubernetes.io/canary-by-header string nginx.ingress.kubernetes.io/canary-by-cookie string nginx.ingress.kubernetes.io/canary-weight number но чот деталей процесса не пойму(
Andrey
лезь у код
нехоцца
Sergey
нехоцца
если бы я делал только то, что мне хоцца, то я бы или был голодный, или сидел
Sergey
и говоришь по какому хедеру дута трафик заворачивать
Sergey
соответсвенно кто-то должен этот хедер для какого-то процента клиентов выставить
Sergey
Sergey
nginx.ingress.kubernetes.io/canary-weight: The integer based (0 - 100) percent of random requests that should be routed to the service specified in the canary Ingress. A weight of 0 implies that no requests will be sent to the service in the Canary ingress by this canary rule. A weight of 100 means implies all requests will be sent to the alternative service specified in the Ingress.
Sergey
в самом простом приблежении сойдет
Sergey
@rheinx
Andrey
Я чот не понимаю тогда назначния этих аннотаций, если я делаю отдельный ингресс, то я его вешаю на отдельный домен и все. Аннотации вроде как должны позволить именно кусочек продуктивного трафика ливануть, пока правда не понял как)
Sergey
2 ингреса - один для прода
Andrey
Разные ингресы могут один домен указывать
Штооооооо? Как это? Т.е. вот это будет работать? https://pastebin.com/XmRT0SaB
Sergey
второй с кенери анотацией для этого же домена и в простом приблежении с процентом трафика
Vitalii
Так бери fpm, там ведь cli уже включено.
зачем в контейнере который в кроне используется иметь fpm ?
Leo
Так бери fpm, там ведь cli уже включено.
где считается не сикюрно юзать общие, у нас собирают с нуля)
Andrey
зачем в контейнере который в кроне используется иметь fpm ?
ну его никто не заставляет запускать. Зато сколько боли уйдет от поддержки 2х имеджей параллельно
Andrey
где считается не сикюрно юзать общие, у нас собирают с нуля)
А что не секъюрно то? Ну лежат там файлы fpm и что. Еще раз, никто не заставляет fpm запускать. Его можно юзать просто как пыху cli
Vitalii
ну его никто не заставляет запускать. Зато сколько боли уйдет от поддержки 2х имеджей параллельно
может ты и прав) над еще раз подумать. Ибо я ушел от одного контенера на веб сервер и на кронджобы. Может и зря)