Farit
Farit
хотя опять таки хипстер поддерживает много каких backend'ов
Logan
Farit
Мы прикрутили Prometheus
Farit
Hipster имеет ряд ограничений и не все метрики может снимать
Logan
да у меня тоже прометеус. Проблема в том, что в вебуи (штатном) куба графики рисует только хипстер, как я понимаю
Farit
Да - печалька
Farit
Консоль таки лучше
Denis
Можете подсказать насчёт связки кубер + Prometheus? Как собирать следующую статистику?
1. Запросы к сайту по минутам (по каждой ноде и поду):
1.1. по странам, откуда происходит запрос
1.2. по тому, к камим доменам (TLD) был доступ
1.3. сочетание этих параметров
1.4. тип запроса (маски URI, method)
1.5. мин/макс/среднее количество запросов в секунду
1.6. общее количество запросов
1.7. мин/макс/средняя длительность ответа
2. Доступ к API роутам по минутам: URI, мин/макс/среднее количество в секунду, общее количество запросов, мин/макс/среднее время ответа.
3. Выгружать всю эту поминутную статистику во внешнюю БД с идентификацией по кластеру/ноде/поду.
Vitalii
Мы примерно такое собираем с помощью nginx ingress controller + nginx-lua-prometheus + nginx-vts-module
Denis
Vitalii
Prometheus это все собирает, но никуда потом не складывает:) Экспортом и remote storage не интересовались - возможно они подойдут
Logan
Vitalii
Да, они дублируют друг друга процентов на 80. В vts нет histogram на время ответа, которые очень нужны. В Lua до недавнего времени не было gauge из stub_status
Artem
Logan
Logan
благо луа - беспредельно простой язык
Vitalii
Я не спорю, что от vts в этом кейсе можно отказаться. И мы его метрики в результате почти нигде не используем.
Denis
Тут набрасывают) https://gist.github.com/jonathan-kosgei/dac620fed9d9aeec35050bcc0a146647
Много интересного в комментариях
Denis
Оу, круто (из каментов) - http://fission.io/
Denis
Кто какие дистрибутивы использует для Kubernetes?
Etki
Sn00part
надо признать, продукты от гугля не отличаются удобством интерфейсов
Sn00part
зато работает
Sn00part
а в целом ощущение, что он сравнивает карандаш и 3дпринтер, говоря смотрите, оба решения работают
Sn00part
если бы он еще пул реквестов парочку запулил, а их не взяли. а так просто не нравится и все.
Sn00part
но описываемые кейсы простые, а про сложные ни слова
Sn00part
а последнее его предложение вообще задаёт риторический вопрос, что человек вообще на гитхабе забыл
Sn00part
с уважением, театральный критик Артем С.
Etki
а я бы хотел высказаться по поводу уверенности молодого человека в том, что "ну он там где-то volume создал без конфигурации, и всё просто работает )))" это реально и нормально в серьезном кластере
Sn00part
я понимаю что чувак сказать хотел и в целом он даже прав в чем-то. но подача так себе
🦠
Дарова Тема из новотелекома
Sn00part
о привет
Sn00part
10 лет уж прошло
Sn00part
кто ето)
Alex
Точнее формулируй вопрос)
Denis
Denis
Можно ещё в качестве финального аккорда ему этот скриншот вбить :)
Logan
@amaksimov, пожалуйста, прочитайте вот эту книгу - https://book.glvrd.ru/
Logan
у вас много интересных статей, но читается очень тяжело, ИМХО
Andrei
Timur
Logan
Sergej
это самообман, увы
Ну не совсем. ЛУчше когда статья отрефакторит нормальный тех редактор.
kay
Коллеги, вы не замечали, что pod'ы с ограничениями по памяти при превышении предела свопятся нещадно. Или я может что-то путаю?
Vitalii
у нас своп везде выключен и они оом-киллятся:)
Dmitry
https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615
Dmitry
ктото проходил?
Logan
я проходил
Logan
очень по верхам, сильно прибито к GCE, но для новичка в целом полезный обзор
Dmitry
kay
Не один я с проблемой свопа столкнулся
kay
http://stackoverflow.com/questions/40553541/disable-swap-on-a-kubelet
yolkov
тут уже тоже поднималось
yolkov
Dmitry
Dmitry
надо другой источник
kay
Roman
да там как-то милион вопросов у меня осталось, и на тот момент когда смотрел еще что-то менялось с секретами и env vars... так что я как-то там не смог ничего добится после этого курса сам
Dmitry
на удеми уже повились курсы
Dmitry
но они как будто больше по докеру
Sergej
kay
https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/dockertools/docker_manager.go#L740
до сих пор unlimited стоит
Sergej
Running with swap on is not supported, please disable swap! This will be a fatal error by default starting in K8s v1.6! In the meantime, you can opt-in to making this a fatal error by enabling --experimental-fail-swap-on.
kay
kay
вот PR, just in case https://github.com/kubernetes/kubernetes/pull/31996
Anonymous
https://people.gild.com/jobs/fa6966dd-219c-4d49-85d5-afde8061902b
Dmitry
Kubeadm прям совсем альфа?
Sergii
прямо совсем деревянный :)
Timur
такой вопрос по тому, как Rolling updates работает. вот, если ты фронтенд обновляешь, то тут понятно, если хотя бы 1 под с новой версией уже работает, то часть юзеров увидит обновленную версию. а что насчет бекенда? у нас rails-app и если ты сделал какие-то изменения в схеме БД и при деплое загнал db:migrate, то старая версия (те контейнеры, которые пока не успели обновиться), возможно, не сможет адекватно работать на новой схеме (если ты вдруг решил полностью избавиться от таблицы users, lol). разве что дожидаться, пока деплой пройдет полностью и все старые поды удалятся, и затем только запустить db:migrate. но чет хз, как это автоматизировать
Klim
скорее тут нужно решать на уровне разработки; не выпускать ломающие совместимость изменения; по крайней мерее делать постепенный deprecation
Max
иногда это невозможно
Max
и иногда даже откатить миграцию невозможно
Max
я не знаю правильного решения на "общий случай"
Max
частные - на то и частные. дамп подложить, копию базы сделать или еще что-то )