Grigorii
не могу понять как сделать прометей дефолтным датасорсом для графаны в kube-prometheus
я понимаю что нужно добавить isDefault: true в $._config.grafana.datasources[0], но не могу никак mixin правильный сделать
может кто делал уже?
Petr
я вот так добавлял
grafana+:: {
datasources+:: [
{
name: 'thanos',
type: 'prometheus',
access: 'proxy',
orgId: 1,
url: 'http://thanos-query.' + $._config.namespace + '.svc:9090',
version: 1,
editable: false,
isDefault: true,
},
],
Grigorii
я вот так добавлял
grafana+:: {
datasources+:: [
{
name: 'thanos',
type: 'prometheus',
access: 'proxy',
orgId: 1,
url: 'http://thanos-query.' + $._config.namespace + '.svc:9090',
version: 1,
editable: false,
isDefault: true,
},
],
спс
я все пытался понять как изменить 0 элемент массива, просто чтобы добавить в него ключ
ну в итоге накостылил что-то работчее, вроде пашет
Solyar
Подскажите а я могу выбирать на какой ноде создавать persistentVolume ?
Solyar
Если речь идет о local
Solyar
Использовать storage class для этого?
𝚔𝚟𝚊𝚙𝚜
никто случайно не пробовал kubelet'ы daemonset'ом обновлять?
𝚔𝚟𝚊𝚙𝚜
подумал, крутая идея должна получиться
𝚔𝚟𝚊𝚙𝚜
Andrey
И синхронизировать с обновлением control-plane?
Solyar
Solyar
Хотелось бы чтобы pod с ноды4 мог смотерть в волюм на ноде1
Solyar
Иначе привязка к ноде ломает отказоустойчивость
Solyar
В случае чего
Solyar
Я тут и так вынес etcd на отдельные машины вне кластера
Yuri
сильно зависит от storage provider
Алексей
Solyar
Спасибо)
Михаил
Михаил
я сто раз так делал
Отделение Bereke Bank
Pavel
у всех есть сеф а у тебя нет
Pavel
а ты почему сеф не хочешь?
Pavel
часики то тикают
𝚔𝚟𝚊𝚙𝚜
Алексей
ceph в проде? не не не
чёйто? одно из лучших хранилищ распределённых. Как его не ломаешь, а оно всё работает
Михаил
Solyar
Ох щас бы мне микрофон
Solyar
Я бы рассказал вам про выбор без выбора
Семён
пили подкаст
Михаил
Отделение Bereke Bank
всегда есть выбор не сувать statefull в кубер 😏
Михаил
пили подкаст
Да хуль, если будет норм контент и на конфу можно вытащить
Solyar
Solyar
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
или сделать это частью процесса обновления
Отделение Bereke Bank
да зачем? если pod eviction timeout (или как там его) дефолтный - и нет ошибок в конфигах - ты даже не заметишь рестарт kubelet-а
Peter
Образы из docker-registry в кластере тянет только master или worker ноды тоже должны уметь?
Solyar
Solyar
На нодах образы тянет docker
Vadim
прям пакеты в смысле
а как возвращаться обратно, если кубелет накрылся? Оно же не запустится тогда
Vadim
что только люди не придумают чтобы не юзать нормальные immutable системы, вот прям не могут без поломок базы пакетного менеджера!
Spirit
господа, хз куда такой вопрос задавать, но может подскажете:
подключаюсь по ssh к кластеру. пишу в консоль и через какое-то время начинает переносить текст в эту же строку. может как-то можно пофиксить?
и celery не запускает свой псевдогуй, просто черный экран на его месте
Solyar
Vadim
Spirit
Vadim
ну я могу помочь выдав ро за оффтоп
Solyar
Spirit
Spirit
𝚔𝚟𝚊𝚙𝚜
а как возвращаться обратно, если кубелет накрылся? Оно же не запустится тогда
1) запускается контейнер с ansible playbook'ом
2) ansible подключается к хосту через nsenter
3) сохраняет текущий kubelet пакет и конфиги
4) обновляет пакет, рестартит kubelet сервис
5) в случае ошибки возвращает старый пакет и старые конфиги
6) рестартит kubelet сервис
7) PROFIT
Можно даже kubespray попробовать оконтейнерить
Solyar
Solyar
Чтобы использовать директорию в pv я должен предварительно создать папку и сделать chmod для того чтобы под мог ее примонтировать?
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
просто kubelet достаточно простая штука, чтобы попробовать обновить его без перезагрузки
Solyar
Vadim
Solyar
Solyar
и бекап уже не поставишь старый
Sergey
Vadim
шаг 5 опасный :/
кроме того случайный ребут во время процесса приведет к веселым последствиям
Stas
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
теперь всё вообще оч. красиво получилось, наверное скоро созрею на новую статью
Vadim
тогда не проще ли распространить схему на любое обновление пакетов?
Vadim
кроме того, для конфигов есть https://github.com/openshift/machine-config-operator/ - через него можно управлять репами и в системды засунуть юнит по обновлению