
Иван
03.08.2018
13:46:26

Denis
03.08.2018
13:46:34
Но как появится, сразу наверстаем всё:)

Igor
03.08.2018
13:48:07
Кстати. Посоветуйте какую-нибудь зачетную книжку по кубернетес (не по самому начальному, а чтобы после "разборался на уровне юзера")

Dmitry
03.08.2018
13:49:20
https://kubernetes.io/docs/concepts/

Google

Artem
03.08.2018
13:50:36

Alexander
03.08.2018
13:51:09

Igor
03.08.2018
13:51:10

Dmitry
03.08.2018
13:52:35
Не, для комплексного и всестороннего погружения нужно читать сорцы, ну или хотя бы спеки апи. А разобраться на уровне юзера с этой докой вполне хватит.

Pavel
03.08.2018
13:53:09

Sergey
03.08.2018
13:55:49

Oleg
03.08.2018
14:06:31
хуки helm на деплойменте сработают?
или только на джобе?

Maxim
03.08.2018
14:11:31

Anton
03.08.2018
14:15:49

Иван
03.08.2018
14:17:05

Anton
03.08.2018
14:42:38

Mikhail
03.08.2018
15:01:35

Google

Valera
03.08.2018
15:32:57
Всем привет. На Gitlab CI наконец добрался до указания конкретного образа, вместо latest при делое и реализовал вот так, но может есть какие-то варианты получше? kubectl apply -f dev.yaml --record=true && kubectl patch -f dev.yaml -p '{"spec":{"template":{"spec":{"containers":[{"name":"nginx-app","image":"'$CONTAINER_IMAGE:$CI_COMMIT_SHA'"}]}}}}' --record=true Первый шаг обновляет в том числе переменные из env: ..., если они менялись и в самом dev.yaml указан image: registry.gitlab.onlinepay.com/onlinepay/nginx:latest, т.к. пока не представляю как пробросить внутрь yaml $CONTAINER_IMAGE:$CI_COMMIT_SHA, а далее уже делается patch, который непосредственно указывает на нужный образ $CONTAINER_IMAGE:$CI_COMMIT_SHA. И получается 2 deployment'а в kubectl rollout history. Как бы это сделать в 1 шаг, чтобы и deployment был 1 в kubectl rollout history? Спасибо


Vadim
03.08.2018
15:37:03
1) получаешь sha256 digest с помощью docker \ skopeo
2) заменяешь nginx:latest на nginx@sha256:... в dev.yaml
3) деплоишь без патчинга после

Valera
03.08.2018
15:48:30

Vadim
03.08.2018
15:52:04

Oleg
03.08.2018
15:55:26
к ingress есть решения по ingress.kubernetes.io/affinity c JWT?
ну кроме как своего кастомного балансера перед ingress, который будет кастомно перекладывать JWT в cookie

Эдуард
03.08.2018
16:09:41

Никита
03.08.2018
16:22:56

Valera
03.08.2018
16:47:09
Может есть что-то более yaml нативное, типа https://github.com/0k/shyaml/blob/master/README.rst но с write?


Dmytro
03.08.2018
18:20:36
Ребят, помогите, что то забуксовал совсем я.
есть кластер кубера, написал первую таску. Есть несколько вопросов
1) Как вставить таймаут между стартами контейнеров, и строго ли по списку кубер контейнеры стартует, если не строго то как сделать строго, ни как не могу даже упоминания об этом в доке найти.
2) Не понятность: мне нужно крутануть контейнер который инициализирует предыдущий запущенный контейнер(аля батч). Можно ли такое вообще сделать ?
3) DNS и CONFIGMAP- не понятно как реализован поиск контейнеров, везда указал name контейнеров (старт подов описан в деплойменте), но получаю в ответ host not found. Вообще кейс поиска сервисов как реализован, очень не понятно, одни описывают через сервис и поиск как публичных служб, другие описывают прямо IP адреса служб (как я могу узнать их если они в динамике). Короче вообще не понятки.
Сервису можно указать айпи при создании и он будет статический. Но в целом вопрос непонятен, как передать fqdn сервиса? Через переменные окружения, как всегда


Alexey
03.08.2018
18:36:43

Dmytro
03.08.2018
18:37:38

Alexey
03.08.2018
18:39:31
headless service = statefull ?

Dmytro
03.08.2018
18:40:57

Alexey
03.08.2018
18:41:47

Google

Alexey
03.08.2018
18:46:34
Вообще предыстория следующая, номад у нас хорошо работает, но хочется по пробовать нового + у номад нет зависимостей между контейнерами, такой дизайн такой что по другому ни как (шина, базы). Проблема нет пока когда идет штатное обслужинвание кластера, но для дев сред и тестов я полностью собираю новое окружение (базы, очереди, приложения) и вот тут начинаются прыжки с бубном, приложение может инициализироваться минут по 30, пока все зависимости скачаются и запустяться, сделано я это очень грубо (тупо бесконечный рестарт). От того что сделано грубо - дев среда пытается собратсья до последнего, даже если там есть фатальные ошибки в самом начале.
Я надеялся что кубер решит это. И надесь что решит, но собственно вот что я решаю


Alexey
03.08.2018
19:11:57
Вообще предыстория следующая, номад у нас хорошо работает, но хочется по пробовать нового + у номад нет зависимостей между контейнерами, такой дизайн такой что по другому ни как (шина, базы). Проблема нет пока когда идет штатное обслужинвание кластера, но для дев сред и тестов я полностью собираю новое окружение (базы, очереди, приложения) и вот тут начинаются прыжки с бубном, приложение может инициализироваться минут по 30, пока все зависимости скачаются и запустяться, сделано я это очень грубо (тупо бесконечный рестарт). От того что сделано грубо - дев среда пытается собратсья до последнего, даже если там есть фатальные ошибки в самом начале.
- у нас dev среда на docker-compose, почему так не делаете? Какая разница кто оркестрирует?
- есть опыт использования nomad на мелких проектах? Насколько просто и гибко?
А вообще, если приложение без труда и проблем развертывается в любом окрестраторе это хороший знак и нужно к нему идти. Так?


Alexey
03.08.2018
19:23:44
Что значит развернуть - д
что значит развернуть - тупо запустить, да не беда, все запускается. Запустить с проверками и зависимостями. мониторингами и откатами в случае краха - вот тут и начинается все веселье.
Просто что номад, что кубер нацелены на поддержание среды, развернутой среды, а мне нужно сами среды готовить, вот в чем прикол


Alexey
03.08.2018
19:29:36
С какими приверками нужно запускать?

Alexey
03.08.2018
19:30:59
С какими приверками нужно запускать?
запускать - если шина и база жива, после запуска проверить что запустилось, да желательно не внутреннией проверкой, а снаружи зайти ping-pong. Если все ок - вешать метки, которые прометей забирает. Ну классически, все как у всех собственно

Alexey
03.08.2018
19:31:17
У меня все приложение рестартятся, пока не дождуться нужных ответов.
Все приложения если получают через ENV ссылку на influxdb, то скидывают туда ивенты мониторинга.
Откат в случае краха это деплой старого релиза. всякие database rollback не делаются

Alexey
03.08.2018
19:32:16
Я хочу контролировать эту самую последовательность )

Alexey
03.08.2018
19:35:07
Мне может проще. Я и пишу сервисы и разворачиваю их в кластере. Если сервис напряжно будет развернуть - буду делать так, чтобы было ненапряжно.

Alexey
03.08.2018
19:35:12
То есть зачем поднимать шину, приложение, прокси, пока блин база качается. Зачем все делать одновременно. У номад обещают исправить в 9-10 версии (может вернемся к нему). А пока кубер, уж больно замороченный он, есть ощущение что гибкости по больше

Alexey
03.08.2018
19:36:02
Я год не решался залезь в кубер, сейчас фиг с него слезу, слишком удобно.

Alexey
03.08.2018
19:37:04

Alexey
03.08.2018
19:38:19
k8s жирный. Только один минус. Поэтому думаю пробовать nomad для мелких vps за $10-20 которые. Работали с ним в этом ключе? По первому вгляду nomad на порядок легче.

Alexey
03.08.2018
19:39:06

Google

Alexey
03.08.2018
19:39:31
Но идеологически очень хорош, связка с ваулт и консул и шаблонизатором - киллер фича.

Alexey
03.08.2018
19:40:11
и terraform... да, это понимаю. С vault и consul работал.

Alexey
03.08.2018
19:40:41

Yura
03.08.2018
19:44:40

Михаил
03.08.2018
19:49:45
И сталкиваетесь с закономерной болью

Alexey
03.08.2018
19:51:02
> Есть ощущение, что вы пытаетесь натянуть сову на глобус
2 минуты уже представляю как это выглядит
Знаете как курицу на ростер иногда сложно натянуть. А тут сова на глобус
https://williams-oliver.ru/assets/images/uploads/00010581844_2.jpg

Vadim
03.08.2018
19:53:41

Alexey
03.08.2018
19:55:21
Знаю пару ребят, у которых rancher в котором база и php приложение. Круче некуда ?

Alexey
03.08.2018
19:57:46
Есть ощущение, что вы пытаетесь натянуть сову на глобус. А точнее свой много сервисный монолит запихнуть в кубер
А вы стартуете свои приложения в вакууме ? ну напрмер вот кейс - vernemq, ему требуется influxdb, mongodb, memcached. После старта его нужно запускать уже ваши приложеньки, потому как vernemq шина. Есть разные версии vernemq, нужно проверять каждую новую версию. Как среду собирать ? Или пускай приложение всегда отвечает ресурс не достпен и мы его будем прибивать в бесконечном рестарте пока что то не оживет. Или держать где то отдельно и заводить его отдельно, но тогда проблема масштабирования, разные среды, да это просто не удобно.

Alexey
03.08.2018
20:11:12
https://github.com/giantswarm/kubernetes-prometheus/blob/master/manifests/grafana/import-dashboards/job.yaml#L21
Костыли, костыли, костыли... И, куда не взгляни в эти майские дни, Всюду пьяные бродят они.

Pavel
03.08.2018
21:04:31

Эдуард
04.08.2018
06:58:18
Народ, k8s pvc возможно изменить размер при использовании rbd/cephfs?

Banschikov
04.08.2018
07:05:37

Alex
04.08.2018
08:07:01
Привет ребята.Ищу профессионала,кто бы смог меня обучить Helm Charts и как правильно уметь писать.Я хочу использовать Prometheus Operator, alert manager, prometheus node exporter, я хочу все это запаковать и устанавливать через helm.Я хотел с кем-то работать через Skype,буду оплачивать за работу.Пишите мне лично.Спасибо,жду ответа

Pavel
04.08.2018
08:17:51
там учить нечего. и там уже все написано.
https://github.com/coreos/prometheus-operator/tree/release-0.14/helm/prometheus-operator - сначал ставить это. Дожидаетесь что все запущено.
https://github.com/coreos/prometheus-operator/tree/release-0.14/helm/kube-prometheus - рихтуете все под себя и ставите.
через portforwarding на 9090 порту будет прометеус, на 9093 графана.
Версия 0.14 взята просто для удобства и четкого понимания что и для чего.

Google

Alex
04.08.2018
08:21:20

Pavel
04.08.2018
08:21:36
он там тоже есть.

Mikhail
04.08.2018
08:23:47
https://www.safaribooksonline.com/library/view/prometheus-up/9781492034131/ читаю сейчас. Как раз про основы рассказывает.

Pavel
04.08.2018
08:26:42
operator это отдельная сущность/бинарик/скрипт/etc который общается с кубиком. На основе эвентов или значений выполняет действия как еслибы это делала человек.
Helm к оператору не имеет ни кого отношения. В prometheus-operator через хелм задаются опции для создания контейнера. (в террии все это можно затолкать в операто и обновлять только его для статиченой конфигурации).
Сам helm это шаблонизатор + есть возможность указывать на зависимости.
С учетом того что в шаблонах можно выполнять действия. можно писать достаточно большую логику.

Sergey
04.08.2018
08:41:54

artb1sh
04.08.2018
08:51:41
Что по кубу на собеседовании спросить?

Mikhail
04.08.2018
08:57:58