Victor
А можно обмануть систему, создав автоскейл пул из вытесняемых нод?
Rainbow
Это не обман, а то зачем это придумано. Только файловерны не забыть на обычные ноды
Victor
Получается должно быть минимум 2 автоскейл пула - и обычный, и вытесняемый, верно?
Rainbow
@StanislavKhalup на митапе mail.ru последнем рассказывал как лучше сделать autoscale в gke с вытеснением
Victor
Спасибо, поищу на ютубе
Rainbow
Спасибо, поищу на ютубе
https://youtu.be/ac_JMFBl_so?t=9638
Victor
Anonymous
вот у меня тоже самое было, сервис падал в меморилик, создавался снова и снова падал и в итоге все сервисы тоже падать начали
Anonymous
Слушай, там после деплоя новая версия апликухи запустила Battle Royale Mode на нашем Kubernetes’е. Мигрирует с ноды на ноду, занимает сервера с ssd, убивает соседей бесконечными циклами и утечками по памяти.
Dmitry
kubspray vs kubadm?
Dmitry
ваши предпочтения, коллеги?)
Rainbow
kubespray удобней как минимум
Anonymous
+мне спрей помог
Rainbow
на сервер заходить руками не нужно или писать сверху логику
Rainbow
kubespray в эксперементальном режиме поддерживает kubeadm
Dmitry
Я тоже с этой точки зрения подхожу. И плюс Ansible уже сто лет как в опыте... короче похоже есть смысл продолжить использовать Ansible как ядро автоматизации
Dmitry
Спасибо
Dmitry
Я кубер только пространно щупал, деплоил через kubespray пару раз, но все пишут про kubeadm, и как-то пиарят его что-ли
Aleksey
да всё просто, kubespray поставит всё и всё будет работать, но вот когда понадобится обновляться или делать какие-то упражнения с мастерами то вот тут у вас начнутся проблемы так как вы в душе не будите понимать как там всё он поставил
Dmitry
Но понимание и использование бутстраперов не сильно сопряжены, если понимаешь это
Dmitry
1. POC, 2. Ненагруженый stateless проект 3. Понимание на этой базе 4. Нагруженый проект
Dmitry
Плюс многие фичи на базе Ansible уже есть и хочется завязываться с ними тоже
Dmitry
ну и фаза 4 может просто превратиться в EKS вариант, в теории
Aleksey
ок, но когда протухнет серт у etcd не обижайтесь 🙂
Dmitry
Да чего обижаться, передеплоить все не проблема пока на 1-2
Dmitry
буду мучить kubespray... Я прошлый раз когда щупал, не хватило PVC на базе виртуалок типа DO или Hetzner из чартов
Dmitry
забил...
Dmitry
теперь вроде OpenEBS есть (что думаете?)
Сергей
всем привет. подскажите пожалуйста, а в ингресе вайлдкардов нету что ли?
Yura
если речь об nginx-ingress, то начиная с версии 0.20.0 есть https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/ingress-path-matching.md
Сергей
спасибо
Валентин
а, немного не то, что надо. мне надо вайлдкардный хост
*.test.com типа? Это достаточно давно работает
Сергей
*.test.com типа? Это достаточно давно работает
да.. действительно. спасибо большое, что-то я недоглядел
Сергей
расскажите мне пожалуйста кто как собирает php + nginx приложения?
Сергей
на три контейнера что ли надо?
Сергей
один под код, другой под php, третий под nginx?
Konstantin
windows ставь
Сергей
windows ставь
юмор это хорошо, да
Валентин
один под код, другой под php, третий под nginx?
Статика отдельно на сервер статики (у каждого билда свои id в именах файлов), nginx от ингресса бывает достаточно, бывает нет, ну и по-любому контейнер с php-fpm
Сергей
ну то есть отдельным образом
Валентин
да, а вот собственно код php тоже отдельным контейнером получается
Эм... ну вот у тебя приложение на php. Значит в минимальном варианты ты собираешь контейнер с php-fpm и кодом приложения. Если этого мало - добавляешь второй контейнер с nginx. Это может быть один образ, просто запускаешь разные бинари, запущенных контйнеров будет все равно 2 тогда
Dmitry
Зачем код отдельно? Кто там будет в роли запущенного процесса?
Dmitry
Расскажите, как по конвенции происходит деплой кода? Docker artefact деплоим с мопощью чартов?
Dmitry
Допустим я пилю Api на nodejs
Сергей
Эм... ну вот у тебя приложение на php. Значит в минимальном варианты ты собираешь контейнер с php-fpm и кодом приложения. Если этого мало - добавляешь второй контейнер с nginx. Это может быть один образ, просто запускаешь разные бинари, запущенных контйнеров будет все равно 2 тогда
кейс такой: у меня nginx + php это один под, таких подов допустим несколько. перед ними стоит ингрес - это балансер. мне нужно, чтобы код php был и в контейнере с fpm, и в контейнере nginx. в мире докера это решается вольюмами, раньше решалось volumes_from, но в кубернетисе я такого не нашёл и там предлагают использовать InitContainers, в котором копируют в шаред вольюм код из образа, в котором (как я понял) лежит только код
Dmitry
Наиболее корректным, на мой взгляд, будет собрать 1 образ со всем сразу (nginx, код и fpm), а запускать 2 отдельных контейнера, где запущено в 1 nginx, а во 2 - fpm
Валентин
кейс такой: у меня nginx + php это один под, таких подов допустим несколько. перед ними стоит ингрес - это балансер. мне нужно, чтобы код php был и в контейнере с fpm, и в контейнере nginx. в мире докера это решается вольюмами, раньше решалось volumes_from, но в кубернетисе я такого не нашёл и там предлагают использовать InitContainers, в котором копируют в шаред вольюм код из образа, в котором (как я понял) лежит только код
Один под ок, а контейнеров в этом поде два, или один, в котором сразу 2 бинаря запущено? Если второе - это неправильно архитектурно, запусти с этого одного образа 2 разных контейнера в одном поде. А код в этом образе же. А если ты хочешь один образ для nginx, а другой для php - то делай через initcontainer или просто собирай образ "nginx+код" и "php-fpm+код", это ж параллельно можно делать, скорость сборки не пострадает. Или придумай как избавится от своего nginx и всю работу на ingress переложить.
Dmitry
Ингрес использовать под статику - путь к уникальным приключениям
Antlar
ребят, нужен совет
Antlar
как сделать чтобы ингресс контроллер в логах писал реальные айпишники
Antlar
а не айпишник ноды кластера?
Antlar
ставил через хельм
Antlar
helm upgrade nginx-ingress stable/nginx-ingress --set rbac.create=true --set controller.service.externalTrafficPolicy=Local --set controller.service.type=NodePort --recreate-pods
Antlar
172.30.60.6 - [172.30.60.6] - ops [09/Nov/2018:15:35:41 +0000] "GET /api HTTP/1.1" 403 153 "http://scope.prod/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.1 Safari/605.1.15" 445 0.000 [weave-scope-weave-scope-weave-scope-80] - - - - fad38fa72fb88fafc641446621a2b553
Antlar
из-за, как я подозреваю, кривого конфига, не работает ограничение доступа средствами ингресс контроллера
Oleh
--set controller.service.externalTrafficPolicy=Local с этим справляется в моём случае, но я так ставил изначально, возможно helm не делает upgrade как нужно
Antlar
куб стоит на железе если что, не облако
Oleh
LoadBalancer, но у меня облако
Antlar
понятно)
Сергей
если мне не изменяет память
Dmytro
боюсь что изменяет
Dmytro
ну там не только его код же, далеко не все контрибьютеры договор с fsf подписывали, или с кем там
там же даже была история что это невозможно т.к. часть контрибьюторов уже умерла и даже родственников нет. Поэтому даже при всём желании не выйдет
𝚔𝚟𝚊𝚙𝚜
А оно не в общественное ли достояние переходит в таком случае?
Leo
а почему неправильно архитектурно? по идеологии докера 1 контейнер = одно логическое приложение, т.е. процесов может быть много. В случае пхп-фпм он сам работать не может и поэтому нжинкс это часть этого логического приложения. Зачем нужно делать два контейнера?
вообще по идеалогии это fpm + nginx, это либо 2 контейнера либо nginx внешний просто юзается (front), и жить оно может, просто для дебага не очень удобно и в данном случае я раскидывал на 1 контейнер исключительно для удобства дебага.
Dmytro
Конференции в России самые качественные (без шуток) http://www.highload.ru/moscow/2018/abstracts/4158
> После доклада вы научитесь не волноваться и спокойно раздавать пароль от офисного вай-фая кому угодно. (оффтоп) вот кстати а как у кого в компании в этом плане? А то вышел я тут в новую компанию а тут wi-fi без сертификатов но потом нужно залогиниться через гугл чтобы был доступ в интернет. И у меня тут сразу вопрос что будет если google auth прилег (как было за прошлые 2 года несколько раз)
Dmytro
Что значит сам работать не может?
статику отдавать не умеет сам
Leo
статику отдавать не умеет сам
стоп, зачем через fpm отдавать статику