Комментарии 15
Спасибо за прикладной гайд!
Я в прошлом году слышал, что кубер пока еще не вполне готов к тому, чтобы в нём надёжно хостить stateful сервисы, особенно критичные к внезапным остановкам контейнеров — такие, как СУБД.
Как с этим сейчас?
Сегодня также никто не советует разворачивать продовую базу в кубе. Но для dev контура, просто поиграться, сделать демку приложения, проверить теорию вполне себе удобно.
Вот доклад на эту тему. Автор говорит, что для тестов смело разворачивайте в кубе и ничего страшного. И я с ним в этом вопросе согласен.
раз уж Вы чартами пользуетесь, почему тома руками создаете?
Не видел у чартов bitnami возможность автоматически создавать директории, и вообще есть сомнения, что они могут. Может я захочу монтировать директорию на другой виртуальной машине, где даже helm не стоит?
К тому же, такой ручной контроль не особо трудозатратный, но зато наглядный - сразу понятно куда складываются данные.
я захочу монтировать директорию на другой виртуальной машине, где даже helm не стоит?
helm - это просто шаблонизатор и выкладчик кубер-артефактов, ему не надо быть на виртуальной машине. Вы запускаете htlm локально или в ci-pipeline, он анализирует шаблоны, готовит артефакты и, используя k8s сессию, выкладывает их, все.
Не видел у чартов bitnami возможность автоматически создавать директории
Коллега выше верно заметил, что битнами чарт имеет в себе PVC и может порождать PV. Для дев-стенда это самое оно, не надо руками ничего создавать, просто helm install и в путь.
Еще важный момент, StorageClass может создать только админ кластера. И в принципе, если в кластере уже есть какие-то сторадж-классы, например, cephfs, то нет большого смысла объявлять свой.
Спасибо за развернутый ответ. Благодаря ему я понял, что не понял изначального вопроса :). Подумал, что речь идет о создании директорий helm'ом на VPS, которые потом монтируются.
Да, согласен чарт от bitnami позволяет создать автоматом PVC. И как раз в этой инструкции при установке Redis автоматически создается PVC для slave-реплик. И вы, конечно, правы инструкцию можно еще больше упросить.
Но новичкам я бы рекомендовал некоторые вещи делать вручную, чтобы они не казались магией. Например даже инструкции от bitnami умалчивают (либо украдкой говорят) о необходимости PV и PVC. А когда ставишь чарт по рекомендованной команде, видишь, что ничего не работает из коробки.
А какой куб сейчас актуальный?
k0s, MicroK8s, kind, k3s и Minikube ?
не вижу ничего плохого чтобы размещать базы в кубере, при условии что они гвоздями прибиваются к нодам. тут тебе из коробки днс и выделение IP-адресов. норм гайд.
Стоит заметить, что создание дополнительного пользователя и нестандартного virtual host возможно в RabbitMq сразу при старте. Для этого достаточно определить definitions файл. Helm chart от bitnami это позволяет.
Да, спасибо за примечание. Но лично для себя решил, что лучше сделать только admin юзера, и только потом создавать других если потребуется. А то в чартах bitnami куча параметров типа user/password, global.user/global.password, auth.user/auth.password и причем некоторые из них переопределяются в зависимости указан дочерний или нет.
По поводу PV и PVC - я конспектировал ту самую лекцию, возможно кому-то будет полезно
Подскажите, пожалуйста, как в helm чарте postgresql настроить work_mem, maintenance_work_mem, max_wal_size ?
Разворачиваем PostgreSQL, Redis и RabbitMQ в Kubernetes-кластере