@kubernetes_ru

Страница 136 из 958
yolkov
09.03.2017
17:50:51
ну не делай создание на каждый коммит, привяжись к трекеру, как в статус “ААА” перевели, создавай окружение

у разрабочкиков есть локальный миникуб, где они так же свои чарты могут разворачивать для разработки

ты в праве выбрать на что тригерить, а на что не нужно

это больше организационный вопрос

Google
yolkov
09.03.2017
17:52:57
прелесть неймспейсов еще и в лимитировании ресурсов

Artem
09.03.2017
17:54:23
а в проде тоже неймспейсы?

yolkov
09.03.2017
17:54:51
ну там их не так много как в QA, деве

по проектам или группе проектов

Artem
09.03.2017
17:56:18
ну вот ещё одна будет проблема рано или поздно, CI зелёный, а в проде не пашет.

yolkov
09.03.2017
17:57:41
у нас в любом случае окружение отличатся будет, в бою много сервисов работают вне куба, так что идентичности мы в любом случае не добъемся

Artem
09.03.2017
17:58:55
тогда нет никаких гарантий)

это красивый CI с свистелками, но прод он работающий не гарантирует)

yolkov
09.03.2017
18:01:55
а как ты засунишь в куб, CI постгрес с сотни гигабайтовыми БД

несколько редис кластеров из 64 шард с репликами

тарантулов, мемкешей

пару десятков кластеров монг?

Artem
09.03.2017
18:03:52
это юниттесты должны обеспечить

Google
yolkov
09.03.2017
18:04:19
а кто сказал что у нас их нет?

я говорил что мы не сможем посторить боевое окружение к дев, QA и т.п.

поэтому стараемся хотябы поднимать похожее, но в меньщих объемах

Artem
09.03.2017
18:07:13
стопроцентно го покрытия я ещё ни разу не видел. и к этой сумятице добавляется ещё неймспейсная неразбериха, которой на проде нет)

CI тестирует сервис в идеальном для него окружении, как будет в проде хз

планерки, тикеты, раком ставят пм, никто не виноват) у меня лично постоянно такой опыт был. у вас не так?)

yolkov
09.03.2017
18:12:25
слава богу раком не ставят)

Artem
09.03.2017
18:12:41
?

я про то, чтобы не превращать все в карго культ. тестировать удобнее, а то ли оно тестирует вообще никто не знает

а в проде у вас тоже кубернетес?

yolkov
09.03.2017
18:18:05
частично

часть сервисов

все еще в стадии внедрения, постоянно чтото обновляем, изменяем

Artem
09.03.2017
18:19:21
разработчики знают, что они пишут микросервисы со всеми вытекающими? или девопс сам костылями забивает?

yolkov
09.03.2017
18:21:08
конечно знают, но переходный период, микросервисы давно начинали писать, но у нас все равно основное приложение монолит, и его не скоро еще распилят, сервисы появляются вокруг монолита

Artem
09.03.2017
18:22:07
?

я щас сам на себя работаю, с кубернетесом проблем нет. в больших конторах я его ещё не видел, интересны проблемы и вот это все что я выше написал

на моем последнем месте мы хотели такое сделать, но не сложилось)

проблемы были с более простым, традиционным CI

Google
Fike
09.03.2017
19:47:22
Значит никто ещё не делал деплой на поддомены feature-*.dev.blablabla.com + удаление их через Х дней отсутствия активности?
у меня в простом кейсе был скрипт bin/k8s/render прямо в репе, которому скармливался uuid в качестве namespace, он рендерил штуки четыре файлов, запускал это в куб и по окончанию втупую все стирал через kubectl

В моей философии тестовые кластеры и должны умирать сразу по окончании тестов, вся необходимая информация о внутрянке должна оставаться в тестовых отчетах. У меня свой взгляд на необходимые окружения, и весь деплой для предпросмотра предполагался в фиксированные неймспейсы (включая feature-ветки - у нас тут не так много людей, поэтому предполагалось запихивать это в один неймспейс preview). В общем, весь этот кейс не очень сильно отличался от любых других.

Denis
09.03.2017
22:49:01
Хороший кейс

Завтра задам вопрос, а тем временем на другом краю земли ) https://twitter.com/zeithq/status/839046948053258240

Vasiliy
10.03.2017
00:30:21
а вот если я создал на одной тачке с gcloud cli & kubectl кластер, то как на другой на него потом переключиться?

на той же самой можно use-context, но на другую нужно как-то этот контекст добавить? как?

конфиг ручками копировать если только https://kubernetes.io/docs/user-guide/sharing-clusters/

ой, а если я ноды в дашбоарде удалил, то их можно пересоздать автоматически?

Andrey
10.03.2017
08:48:57
kubeadm --join...?

Vasiliy
10.03.2017
08:50:43
а, у меня нa google cloud крутится все сорян за такие вопросы конешно) учусь в экстремальных условиях

Andrey
10.03.2017
08:52:34
Если так, то сейчас поднимется и подключится автоматом

Vasiliy
10.03.2017
08:57:06
да, ну т.е. кластер у меня создается командой gcloud container clusters create ..., и дальше kubectl apply -f blahbla, ох, я понял, там в скриптах вот так: node_port=$(kubectl get -o jsonpath="{.spec.ports[0].nodePort}" services $base) [ -z "$node_port" ] && echo "!!! Node port not found !!!" && exit 1; node=$(kubectl get pods -o jsonpath="{.items[0].spec.nodeName}") нифига не шарю, даже загуглить не могу нормально как пересоздать ноды

не хочется кластер пересоздавать пробую просто размер кластера поменять, т.е. кол-во нод, мб поможет, ¯\_(ツ)_/¯

Дмитрий
10.03.2017
09:06:17
Привет! В последнее время продолжаю, или другими словами пытаюсь, настроить вручную кластер. Настроил, ни один процесс в моем двухузловом кластере не ругается. Но при всем при этом, каждый раз когда я запускаю очередной POD тем или иным способом, у меня вываливается состояние Pending. С сетью все нормально и команда kubectl describe node *** выдает, что вроде все нормально. Кто нибудь может как-то помочь мне изменить состояние Pending на что-то иное. Могу для ясности выслать свои рабочие конфиги, что возможно поможет мне сдвинуться с места.

Sergej
10.03.2017
09:09:16
второй узел как миньон подключен

Andrey
10.03.2017
09:19:58
да, ну т.е. кластер у меня создается командой gcloud container clusters create ..., и дальше kubectl apply -f blahbla, ох, я понял, там в скриптах вот так: node_port=$(kubectl get -o jsonpath="{.spec.ports[0].nodePort}" services $base) [ -z "$node_port" ] && echo "!!! Node port not found !!!" && exit 1; node=$(kubectl get pods -o jsonpath="{.items[0].spec.nodeName}") нифига не шарю, даже загуглить не могу нормально как пересоздать ноды
пошарь скрипт через пейстбин, посмотрю внимательнее. удаленная нода в твоем случае восстановится автоматически. а вот контейнеры на ней могут не запуститься - это зависит от того, как они деплоятся. Отличный вводный курс по Kubernetes: Scalable Microservices with Kubernetes (https://classroom.udacity.com/courses/ud615/)

Vasiliy
10.03.2017
09:20:36
да, я его 2 раза проходил в течение недели

(:

да, я грохнул уже кластер) спасибо это конечно дичь, я уверен есть способ восстановить ноды, но я пока очень мало знаю(

Google
Andrey
10.03.2017
09:22:47
да, я грохнул уже кластер) спасибо это конечно дичь, я уверен есть способ восстановить ноды, но я пока очень мало знаю(
gloud create ... создает тебе кластер Kubernetes так, что грохнутые ноды восстановятся автоматически. скорее всего ты имеешь в виду что-то другое, но я пока не понимаю, что именно

Vasiliy
10.03.2017
09:24:21
да, я понимаю, поэтому пересоздал кластер просто я имел ввиду восстановить ноды без его пересоздания как-то мб вручную

Andrey
10.03.2017
09:28:04
да, я понимаю, поэтому пересоздал кластер просто я имел ввиду восстановить ноды без его пересоздания как-то мб вручную
кажется понял: кластер кубера стартует в виртуальных машинах (один мастер и 2 или 3 ноды) итого 3-4 вирт машины. если ты одну из них грохнул, будет создана новая ВМ, о старой забудь. здесь дело в подходе к микросервисам в контейнерах: предполагается, что любой контейнер или сервер могу сдохнуть в любой момент времени, поэтому приложения, размещаемые в контейнерах и контейнерных кластерах должны учитывать этот момент и быть спроектированы с учетом этого подхода. Итог: грохнул ноду - забудь про нее, все восстановится автоматически.

Vasiliy
10.03.2017
09:28:57
но у меня не восстановились( я их (ноды) через kubernetes dashboard удалял правда я там еще много всего делал: – менял шаблон у вм – пересоздавал сами вм – менял кол-во нод

Andrey
10.03.2017
09:31:28
но у меня не восстановились( я их (ноды) через kubernetes dashboard удалял правда я там еще много всего делал: – менял шаблон у вм – пересоздавал сами вм – менял кол-во нод
зайти в панель управления проектом в Google Cloud Platform и удали вычислительные виртуалки руками, Google Cloud их тут же пересоздаст

и подключит к мастеру

так будет проще всего

Vasiliy
10.03.2017
09:32:44
ладно, спасибо) уже поздно, я уже пересоздал кластер) в след раз попробую, но вроде бы я это делал

Admin
ERROR: S client not available

Vasiliy
10.03.2017
09:33:10
еще парит что очень много всего остается после удаления кластера

load balancer'ы и прочее, много всего приходится чистить ручками было бы неплохо уметь как-то это все удалять вместе с кластером, но как я пока не понял

Vasiliy
10.03.2017
09:39:49
да я и так пробовал и через веб интрефейс ( у меня почему-то остается, подозреваю что мб там нет явной какой-то привязки к кластеру, но они не удаляются)

Andrey
10.03.2017
09:42:30
да я и так пробовал и через веб интрефейс ( у меня почему-то остается, подозреваю что мб там нет явной какой-то привязки к кластеру, но они не удаляются)
Есть явная привязка к кластеру. Надо удалить кластер при помощи gcloud, только после этого, если что-то останется дочистить.

Vasiliy
10.03.2017
09:43:34
да, ну я вот удалил через веб интерфес, он же тоже самое API использует, что и gcloud cli, остались балансировщики и еще куча всего и вот ручками удаляю сижу все время эти остатки

столько там еще проблем конечно например, если пересоздать VM когда pod is pending, то этот pod так и останется в pending с: 1m 17s 8 {default-scheduler } Warning FailedScheduling no nodes available to schedule pods т.е. он банально не может попробовать еще разок

или нет NAME STATUS AGE gke-foo-staging-default-pool-8d686e11-cxpt NotReady 6m это после пересоздания кластера и после изменения шаблона и группы VM и их пересоздания я в прошлый раз так nodes и удалил, тк увидел NotReady и подумал типа удалю и он сам пересоздаст, но нет( ок, я кажется понял не, ничего не понял, на этот раз ноды не удалял удалил vm's, они пересоздались, а ноды не появились) kubectl get nodes – No resources found.

Google
Дмитрий
10.03.2017
11:28:00
В чем может быть дело? Выдается вот такое сообщение, которое вообщем-то верно, kubelet[1942]: E0310 17:24:52.080953 1942 container_manager_linux.go:625] error opening pid file /run/docker/libcontainerd/docker-containerd.pid: open /run/docker/libcontainerd/docker-containerd.pid: no such file or directory

Sergej
10.03.2017
11:28:54
каталоги все по пути есть?

Дмитрий
10.03.2017
11:29:57
каталоги все по пути есть?
Есть, но там вообще нет PID-файлов. Мой докер не использует PID-файл. Более того у него даже такого параметра нет)

Timur
10.03.2017
13:29:11
привет. подскажите самый простой способ реализации динамического Load balancer'а под Kubernetes.

Fike
10.03.2017
13:48:26
сущность сервиса в самом кубернетесе

Roman
10.03.2017
17:27:13
че означает [::]:9000

Dmitry
10.03.2017
17:28:02
че означает [::]:9000
Все ипв6 интерфейсы

Ivan
10.03.2017
17:28:03
че означает [::]:9000
let me google that for you

Dmitry
10.03.2017
17:28:18
Пхп фпм

Roman
10.03.2017
17:28:24
ну вот погугги

ничего ненайдеш )

Dmitry
10.03.2017
17:28:36
Лучше кстати на юникс сокетах

Ivan
10.03.2017
17:29:12
ничего ненайдеш )
Спорим на 50$ что найду за пять минут?

Вот @count0ru пусть будет гарантом

Roman
10.03.2017
17:30:03
поисковая система незнает как такие абриавиатуры искать

Roman
10.03.2017
17:30:26
непомогает

Dmitry
10.03.2017
17:30:34
Нуок

Проверять я конечно не буду

Roman
10.03.2017
17:31:00
ну я даже незнаю как подругому это найти )) как описать

я думал это для ipv6

Dmitry
10.03.2017
17:32:51
Если человеку в пятницу вечером лень гуглить и он спросил в чате, то кто мы чтобы его осуждать

Страница 136 из 958