Anonymous
ладно, фиг с ним, с терраформом :) попытаю щасться еще раз... 1) создал два репликасета (дата-ноды для кластера эластиксерча), конфиги: - http://pastebin.com/2QnUXEjV - http://pastebin.com/KWV0MK6D 2) запускаю обе, но создается только один pod, при этом в "get replicaset" обе реплики висят: - http://pastebin.com/LaZ00inE мои варианты: - не хватает ресурсов кластера для запуска всех подов - возможно как-то labels влияют и че-то конфликтует - пытается забраться на одну ноду с одинаковыми портами открытыми а какой может быть правильным и как его проверить?
Lex
а стоп
Lex
не, не дружил
Anonymous
да хз я так поверхносто погуглил - какого-то внятного плагина для тераформа не нашел
Lex
кубик это k8s как Я понимаю
Anonymous
👍🏿
Ivan
@vkfont labels на template одинаковый в обоих RS. Алсо, рекомендуют таки Deployment использовать, а не RS напрямую
Anonymous
в целом - да, но в доках написано "если вы не будете передеплаивать то и rs сойдет"... скалировать мне сложно так как там перманентные диски
Anonymous
ок попробую с лабелами, спасибо
Ivan
http://kubernetes.io/docs/user-guide/replicasets/ # selector can be applied automatically # from the labels in the pod template if not set, # but we are specifying the selector here to # demonstrate its usage.
Anonymous
apiVersion: extensions/v1beta1 kind: ReplicaSet metadata: name: es1-rs spec: replicas: 1 template: metadata: labels: component: elasticsearch role: data name: es1-data
Anonymous
правильно ли я понимаю если я для каждой реплики/деплоя добавлю "name: es{xxx}-data" то лабелы будут уникальными и этого хватит?
Alexander
а кто-нить кубик с тераформом дружил?
https://github.com/kz8s/tack/ Это если разворачивать. Если менеджерить - пока вроде нет модулей
Alexander
А на каких осях собственно собираете k8s?
Alexander
пока исключительно CoreOS Кластер динамический от 10 до 25 нод (количество нод зависит от нагрузки), AWS и все иммутабельно. Сторадж для базы данных подключается через PersistentVolume (EBS соотвественно)
Alexander
ясно, я пока тренируюсь на digitalocean
Alexander
нам не подошли они... загибались ноды
Alexander
при большой нагрузке
Alexander
либо я не умею готовить именно DigitalOcean )))
Anonymous
у меня google clound engine проект висит (их обертка над кубернетесом), потихоньку переезжаю на чистый кластер (условно, все равно они денежку берут за обслуживание)
Alexander
а чистый на своих железках?
Alexander
а мы на Амазоне выбрали спотовое железо. Для наших задач вполне отлично подходит.
Anonymous
а чистый на своих железках?
не, на гуглевских инстансах так же - но дешевле получается, и контроля больше
Alexander
так вот c3.large на ноду выходит продуктивнее чем такой же сервер на DigitalOcean. Конечно все субъективно... если будет время позже сделаю бенчмарк
Maxim
у меня на bare metal
Maxim
задавайте ваши ответы ;)
Anonymous
тут не ответы задавать, тут жалеть надо... ну это имхо :)
Ivan
> @vkfont правильно ли я понимаю если я для каждой реплики/деплоя добавлю "name: es{xxx}-data" то лабелы будут уникальными и этого хватит? да
Denis
В блоге Deis опубликовали небольшую статью (на мануал это, увы, не тянет) о настройке мониторинга Kubernetes кластера с помощью Heapster+InfluxDB+Grafana. Выглядит интересно и, судя по всему, практически не требует конфигурации, работая из коробки. http://amp.gs/8UdY
Zon
▫️Какой у вас проект или где работаете? commercetools.de, ecommerce SaaS ▫️В чём вы специалист? CI, CD, CM ▫️Чем можете быть интересны или полезны сообществу? Могу отвечать на вопросы, могу не отвечать ▫️Чем интересно сообщество вам? к8с внедряю ▫️Откуда вы? Берлин ▫️Как узнали про группу? из ламповой докер группы #whois
Zon
Собственно говоря вопрос - с какими CD решениями вы используете к8с?
Denis
Привет) прекрасное решение от Cloudflare - concourse.ci
Zon
Привет) прекрасное решение от Cloudflare - concourse.ci
И как происходит процесс взаимодействия с к8с?
Zon
И да, всем привет) раньше я был известен как тимлид девопсов в onetwotrip
Denis
С Маратом Дядько успели поработать?)
Denis
Есть ресурс k8s, в него пишется данные образа, когда собран, он в свою очередь вызывает kubectl apply 🚀
Zon
Почему никто не использует api.. А как проверяется, что деплой успешен?
Oleg
Почему никто не использует api.. А как проверяется, что деплой успешен?
Уведомление в чат, удобно по моему. Или имеется ввиду что нужно как то обрабатывать неудачный деплой?
Zon
просто apply не гарантирует, что всё успешно накатилось. даже rollout status иногда этого не гарантирует
Maxim
... и даже rollout undo не всегда гарантирует
Zon
в общем как-то не безопасно. Если билд “зелёный” приложение должно быть рабочим иначе зачем
Denis
Так есть же health с версией )
Maxim
с версией?
Denis
Кто нибудь кстати осилил build ID вставлять в semver-resource?
Maxim
версионирование - отдельная боль
Maxim
мы пока что написали скрипт, делающий следующее: - инкремент версии образа в деплоймент.ямле - коммит и тег с инкрементнутой версией - пуш (в этом месте билдер на квае возбуждается и собирает образ с версией из гит-тега) - kubectl apply -f /path/to/deployment.yaml
Maxim
ггг
Denis
На самом деле версия должна не к коммиту, а именно к сборке относиться :) Потому что сборка чаще всего - это набор реп (соответсвенно разные ID коммитов), плюс от случая к случаю могут быть какие-то race condition
Denis
У нас просто реальная микросервисная архитектура :)
Denis
Со всей этой сложностью
Maxim
> На самом деле версия должна не к коммиту, а именно к сборке относиться очевидно. в моем случае сборочный тег навешивается не на каждый коммит в код приложения же, а только для сборки
Denis
В semver-resource для Concourse CI можно делать build ID (meta-блок в стандарте semver)
Maxim
ну и я нигде не говорил, что мое решение чем-то лучше нормального CD/CI ;)
Denis
А что кстати используешь?
Maxim
так если бы у меня были нормальные CD/CI, то зачем бы мне было нужно это велосипедостроительство
Denis
:))
Maxim
вообще говоря, началось все с того, что начальство потребовало волшебную кнопку
Maxim
типа: этот ваш kubectl - это дохрена сложно, а нам нужна волшебная кнопка, чтобы последний верстальщик справился
Maxim
ну и пришлось колхозить кнопку для верстальщиков
Maxim
они ей даже пользуются
Maxim
о кстати
Maxim
пока тут такая движуха и куча живого народу
Maxim
попробую спросить еще разок
Maxim
а как восстанавливаться из результатов etcdctl backup?
Zon
Есть ресурс k8s, в него пишется данные образа, когда собран, он в свою очередь вызывает kubectl apply 🚀
А где на ресурс этот посмотреть? или это https://github.com/CloudCredo/kubernetes-release ?
Denis
А где на ресурс этот посмотреть? или это https://github.com/CloudCredo/kubernetes-release ?
Вечером опубликую :) Что-то кастомизировананое
Maxim
не, никто etcd не бэкапит? ;)
Denis
Если честно, пока не бэкапим :) Чем это чревато?
Denis
Если что можно здесь продолжить: https://telegram.me/coreos_ru
Alexander
О, огонь. Спс
Maxim
там тоже не бэкапят, похоже :(
Maxim
чревато это потерей кластера, потому что etcd - основная дб для кубернетеса
timothy
в самой же гореос есть готовые сервисы для systemd: https://github.com/coreos/etcd/tree/master/contrib/systemd/etcd2-backup-coreos
Denis
А как ты сейчас бэкап организовал?