DevOps | Linux

Как определить, почему Prometheus потребляет много CPU. Частный случай.

Небольшая предыстория. Есть Prometheus, который запущен в k8s кластере и на нём большая нагрузка по CPU, хотя достаточно не много ресурсов скрейпятся в единицу времени (около 200к таймсерий каждые 10 сек). Картина нагрузки выглядит следующим образом: В получившемся результате, меня заинтересовала группа node-exporter т.к. она выполнялась много времени Теперь, я хочу понять, какое правило в […]

Continue Reading...

DevOps | Linux | Разное

Массовое восстановление индексов Elasticsearch из snapshot с переименованием

Часто надо восстановить индексы, чтобы провалидировать логи за длительное время. И для анализа логов, нам не требуется отказоустойчивость, в данном скрипте, индексы восстанавливаются сразу с переименованием и с отключенными репликами. Скрипт требует доступа к elastic напрямую. У меня это работа eck оператора в namespace logging в кластере kubernetes по https и с авторизацией

Continue Reading...

Разное

Автоматическое монтирование LUKS шифрованного внешнего диска через x-systemd.automount, fstab и crypttab в Linux

Для начала определим вводные и техзадание.Пользователь много путешествует и боится за сохранность своих данных. Установлена Ubuntu 22.04 на уже зашифрованный диск. Этот этап рекомендуется, т.к. автомонтирование требует наличие ключа дешифрования, который надо где-то хранить. Есть внешний usb диск, который требуется зашифровать и подключать / отключать его простым вытаскиванием из usb разъёма, без всяких манипулаций с […]

Continue Reading...

Разное

Helm, StatefulSet и cascade=orphan

Иногда необходимо удалить/пересоздать полностью с kubernetes стейтфулсет, но при этом оставить данные в pvc и рабочие pod’ы. К примеру, у нас есть postgres в кубере, где-нибудь на стейджингах, и заезжает новый чарт с другими тегами. Стейтфулы нельзя пропатчить и Helm получает в ответ ошибку: Что делать? Тут вариант либо руками править теги, либо, в данном […]

Continue Reading...

DevOps | Linux

Перенос БД PostgreSQL 10.1 в AWS RDS PostgreSQL 10.5.

Рассмотрим перенос данных базы «l_generator» с помощью Londiste. Почему Londiste?Рекомандация использовать Londiste от Amazon:https://aws.amazon.com/ru/blogs/aws/rds-postgres-read-replicas/ — 2014 Data Import (Londiste)In order import data using Londiste, you would need to install it on the external PostgreSQL instance (not on RDS), set up RDS PostgreSQL instance as a replica, and enable replication. Londiste would initially do a dump and […]

Continue Reading...

Linux | DevOps

True Blue-green deploy to kubernetes

Проблема При дефолтном роллауте какое-то время одновременно доступны старый и новый деплоймент. Для некоторых приложений это критично, если изменения в коде не обратносовместимые. (к примеру, используется CDN и имена файлов не меняются, а меняются только аргументы обращений к ним: /index.0.js?t=12G33s15c) Такая стратегия обновления называется ramped. Решение Честный blue-green, когда переключение со старой версии софта на новую […]

Continue Reading...