Sebor▂▅▇█▓▒░
𝚔𝚟𝚊𝚙𝚜
В одной экосистеме - в смысле все в докере? Повторюсь - масштабировать бд горизонтально не тривиальная задача (речь конечно же про реляционки в первую очередь)
если у вас постоянно растет число много маленьких бд внутри то как раз таки тривиальная, когда первый инстанс подрастет, просто поднимаешь новый инстанс и все
Andor
оператор это такая хреновина чтобы удобно управлять стейтфул-сервисами
Vadim
Что есть операторы?
https://coreos.com/operators/
Igor
Что есть операторы?
Балансер для бд, если мне не идменяет память
𝚔𝚟𝚊𝚙𝚜
единая экосистема - кубер имел ввиду
Igor
Балансер для бд, если мне не идменяет память
Не то, чтобы совсем не попал :))
𝚔𝚟𝚊𝚙𝚜
не, оператор эт что бы можно было оперировать сервисами с такой-же легкостью как и деплойментами: kubectl create mysql --replicas=3 --username=asd ...и у тебя готовый кластер с бд на три реплики
Airat
https://docs.docker.com/config/containers/live-restore/ давно же запилили уже
Это замечательно. Но не думаете же вы, что теперь докер совсем не ломается. Я верю, что докер надежен, но раз в год и палка стреляет
Andor
докер никогда не был надёжен
Vadim
компьютер никогда не был надёжен
Andor
за что?
Andor
докер вообще говно
Igor
Полностью поддерживаю
𝚔𝚟𝚊𝚙𝚜
По-моему ты helm описал :))
ну по сути это как helm только с crd и встроенный в кубернетес
Sebor▂▅▇█▓▒░
Хипстерская игрушка!
Andor
По-моему ты helm описал :))
не, там процесс внутри кубера (и работающий через кубе-апи) поддерживает три реплики например
Igor
не, там процесс внутри кубера (и работающий через кубе-апи) поддерживает три реплики например
Да, понимаю. Просто именно того описания - хватает на хелм, но не на оператора х)
Sebor▂▅▇█▓▒░
https://coreos.com/operators/
Хм, и как оно? В проде на хайлоаде кто-нибудь использует?)
Vadim
Хм, и как оно? В проде на хайлоаде кто-нибудь использует?)
странный вопрос, операторы - это паттерн
Andor
они уже мейнстрим
Sebor▂▅▇█▓▒░
Я видимо уже стар для мейнстрима)
Airat
Пихать докер во все места только потому что могу - порочная практика
Stanislav
Пихать докер во все места только потому что могу - порочная практика
Правильно, надо не докер пихать, а В докер пихать) тогда норм будет)
Vadim
пихать надо в кубернетес, а там пусть в cri-o хоть в clear containers запускает
Nikolay Markov
надо просто набор практик сделать на тему "куда чо пихать", и назвать Lubernetes
Andor
интересно, почему в stolon решили не юзать pgbouncer и вообще пулинг
bebebe
Забавно, ровно раз в две недели здесь поднимается тема по DB в контейнерах.
Dmytro
так в том и вопрос, что при удалении PVC ссылка на него остается в PV
Мне кажется у вас стоит reclaim policy = retain которая не позволяет реюз PV. Поставьте recycle и будет всё как вы ожидаете https://kubernetes.io/docs/concepts/storage/persistent-volumes/#lifecycle-of-a-volume-and-claim
Nikolay Markov
но на деле я проблему, вроде как, решил
Nikolay Markov
сделал баг в гитхабе кубера, там ребята ткнули в бета-фичу в лице локального провиженера
Nikolay Markov
настроил, он сам пересоздает PV
Dmytro
сделал баг в гитхабе кубера, там ребята ткнули в бета-фичу в лице локального провиженера
А ну вот, значит всё работает как надо, просто надо было ртфм 😀
Nikolay Markov
я до сих пор считаю, что оставлять ссылку на несуществующий ресурс при его удалении - это наркомания
Nikolay Markov
а еще эта фича с провиженером заявлена прям совсем сырой
Dmytro
Добрый вечер. Озадачился я хранением значений разных секретных переменных типа доступов к базе в темплейтах Хельма, чтобы они прокидывались в окружение при деплое в стейдж или прод. Но хранить в открытом виде некошерно, подскажите годный способ, пожалуйста.
Может я не понял вопрос, я передаю секреты в чарт через values.yaml, внутри чарта создаю секрет кубера куда эти переменые и кладу. Начиная кажется с 1.8 секреты в etcd уже хранятся в зашифрованном виде а не в плейетексте - этого недостаточно?
Nikolay Markov
В документации это явно описано в случае полиси retain
в документации еще и написано, что recycle работает, а на самом деле нет
Dmytro
И никакой наркомании нет, наоборот это глупо было бы если бы связь терялась при удалении pvc
Dmytro
Потому что pvc могут создаваться хелм чартом и поэтому удаляться и создаваться туда сюда много раз
Dmytro
Поэтому то что вы пишите это глупость, извините
Nikolay Markov
Поэтому то что вы пишите это глупость, извините
а, то есть хранить ошметки несуществующих ресурсов - это не глупость, да?
Dmytro
Естественно нет
Nikolay Markov
проблема не то, что оно так работает по дефолту
Nikolay Markov
проблема в том, что оно не настраивается иначе
Nikolay Markov
Естественно нет
естественно, да
Dmytro
Я создам pvc обратно и pv снова примаунтится и данные вернутся
Nikolay Markov
я понимаю, почему так сделано - чтобы не удалить случайно важные данные, как и написано в Retain
Nikolay Markov
но настроить, чтобы это работало иначе, нельзя из коробки, и это говно
Dmytro
То что вы пишете равнозначно удалению директор. при удалении симлинка не неё...
Denis
А если посмотреть kubect get events и дескрайб сервиса - что там?
не посмотрел к сожалению. По поводу drain тоже слышал. Спасибо за совет.Буду знать
Nikolay Markov
а мне не нужно удалять директорию, мне нужно уметь работать с директорией из разных приложений по-очереди
Nikolay Markov
и чистить ее в промежутках
Dmytro
То что recycle не работает- возможно. Но говорить что retain это глупость - извините но вы не правы
Nikolay Markov
я говорил, что ненастраиваемое поведение дефолтное такое - это глупость
Nikolay Markov
и ошметки мертвого ресурса хранить - тоже глупость, можно было бы сделать и красивее
Dmytro
Нет, это safe defaults
Nikolay Markov
Нет, это safe defaults
альтернатив нет
Dmytro
Создайте свой storage class и там будет дефолтом удаление и что угодно
Nikolay Markov
например?
да я описывал вчера проблему
Vadim
да я описывал вчера проблему
проблему я понял, какое "более красивое" решение?
Nikolay Markov
есть PV, есть неймспейс, в неймспейсе есть PVC
Dmytro
В-общем, не вижу проблемы, кроме лени создать сторадж класс
Nikolay Markov
при сносе неймспейса вместе с PVC в PV остается висеть кусок говна, который ни на что существующее не указывает
Nikolay Markov
Создайте свой storage class и там будет дефолтом удаление и что угодно
я сейчас настроил через local provisioner, да, это рекомендуемый ход действий сейчас
Dmytro
kubectl cordon
Это чтобы новые не шедулить на ноду а не заставить переехать старые