Graylog 7 на трёх нодах в Docker Compose: кластер, HAProxy и расчёт ретенции

Задача: централизованное логирование для группы сервисов — отказоустойчиво, на трёх машинах, в Docker Compose. Ниже — рабочая схема на Graylog 7 с DataNode, вход трафика через HAProxy с Keepalived и, самое интересное, методика расчёта ретенции: сколько дней логов мы реально можем хранить на дисках заданного размера. Методика выстрадана — однажды на одном из стендов диск заполнился, OpenSearch перевёл индексы в read-only, и приём логов встал. С тех пор ретенция у меня считается заранее, а не «по факту». ...

16 июля 2026 г. · 8 минут · Игорь Мансуров

Java-хранилища и keytool: PKCS#12, JKS и работа с сертификатами

Java-приложения не читают «россыпь» PEM-файлов, как nginx: ключи и сертификаты им подаются в хранилищах (keystore/truststore), а управляет ими keytool из JDK. Это продолжение статьи про свой CA на OpenSSL — здесь вторая половина пути: как выпущенные сертификаты доставить в Java-приложение. Главное изменение со времён старых мануалов: начиная с Java 9 формат по умолчанию — PKCS#12, а родной JKS объявлен legacy (keytool прямо пишет об этом warning’ом). PKCS#12 понимают и Java, и OpenSSL, и почти всё остальное — по возможности везде используйте его; JKS остаётся для старых приложений, которые требуют его явно. ...

16 июля 2026 г. · 6 минут · Игорь Мансуров

Локальный RAG по технической документации: Ollama + OpenWebUI на своём железе

У любого инженера, работающего с вендорскими системами, есть личная боль: сотни PDF — спецификации протоколов, мануалы, интеграционные описания. Поиск по ним — это «открой семь документов и Ctrl+F в каждом». Отдавать такие документы в облачные LLM нельзя. Решение — полностью локальный RAG: свои модели, свои документы, ничего не покидает домашнюю сеть. Здесь — моя рабочая конфигурация: RTX 3060 12 ГБ, Ollama, OpenWebUI, ~200 увесистых PDF, и три неочевидных настройки, без которых на моделях 7B RAG просто не работает. ...

16 июля 2026 г. · 4 минуты · Игорь Мансуров

Свой CA на OpenSSL: выпуск сертификатов, CRL и конвертации форматов

Для тестовых стендов, внутренних интеграций и mTLS между своими сервисами постоянно нужны сертификаты, которые никто внешний не выпустит: со своими SAN, сроками и расширениями. Правильный ответ — маленький локальный CA на openssl ca. Этот текст — переработка моей рабочей шпаргалки, которой пользуюсь много лет: полный цикл от конфига до отзыва, с расшифровкой каждого флага. Команды актуальны для OpenSSL 3.x; там, где поведение старых версий (1.0.2/1.1.1) отличается, стоит пометка ⚠ legacy. Всё — Linux; никакой Windows-специфики. ...

16 июля 2026 г. · 8 минут · Игорь Мансуров

Kubernetes-лаборатория: HA-кластер на Proxmox

После курса по Kubernetes собрал в домашней лаборатории кластер, приближенный к «взрослой» топологии: отказоустойчивый control plane, отдельный edge-узел с HAProxy, MetalLB для LoadBalancer-сервисов и NFS для persistent-томов. Всё крутится в виртуальных машинах на Proxmox. Топология Слева (A) — состав кластера, справа (B) — путь внешнего запроса до приложения. Узлы Узел IP Роль kube-ssh-gate-01 192.168.1.180 SSH-шлюз в сеть кластера kube-edge-01 192.168.1.181, 10.100.0.100 Edge: HAProxy, вход трафика и балансировка API kube-monitoring-01 192.168.1.182 Мониторинг kube-master-01…03 10.100.0.2–4 Control plane (HA, 3 узла) kube-minion-01…03 10.100.0.5–7 Worker-узлы: приложения + ingress-nginx kube-nfs-01 10.100.0.8 NFS: persistent-хранилище Сеть кластера (10.100.0.0/24) изолирована от домашней (192.168.1.0/24); наружу смотрят только edge, ssh-шлюз и мониторинг. ...

15 июля 2026 г. · 2 минуты · Игорь Мансуров

Mongo backup and restore

📦 Статья из архива (2014–2017) — версии и команды могли устареть

26 мая 2020 г. · 1 минута · goodigy

Создание загрузочной флэшки Ubuntu 18.04 в Windows

📦 Статья из архива (2014–2017) — версии и команды могли устареть

29 апреля 2018 г. · 2 минуты · goodigy

Установка Ubuntu 18.04

📦 Статья из архива (2014–2017) — версии и команды могли устареть

29 апреля 2018 г. · 1 минута · goodigy

Типы в Java

📦 Статья из архива (2014–2017) — версии и команды могли устареть

2 октября 2017 г. · 4 минуты · goodigy

Сроки поддержки Ubuntu

📦 Статья из архива (2014–2017) — версии и команды могли устареть

16 апреля 2017 г. · 1 минута · goodigy

Отключить миниатюры на панели задач при переключении между окнами

📦 Статья из архива (2014–2017) — версии и команды могли устареть

24 ноября 2016 г. · 1 минута · goodigy

Если отсутствует нужное разрешение монитора в Xubuntu 16.04

📦 Статья из архива (2014–2017) — версии и команды могли устареть

15 ноября 2016 г. · 3 минуты · goodigy

Работа с git

📦 Статья из архива (2014–2017) — версии и команды могли устареть

7 ноября 2016 г. · 3 минуты · juan

Перенос WordPress

📦 Статья из архива (2014–2017) — версии и команды могли устареть

21 октября 2016 г. · 2 минуты · goodigy

Как удалить пункт из UEFI в Ubuntu

📦 Статья из архива (2014–2017) — версии и команды могли устареть

13 октября 2016 г. · 1 минута · goodigy

SSH в вопросах и ответах

📦 Статья из архива (2014–2017) — версии и команды могли устареть

16 августа 2016 г. · 2 минуты · juan

Удаление exif данных c помощью MAT или exiftool

📦 Статья из архива (2014–2017) — версии и команды могли устареть

17 июня 2016 г. · 2 минуты · goodigy

SSL сертификат Let’s Encrypt для https вручную.

📦 Статья из архива (2014–2017) — версии и команды могли устареть

12 мая 2016 г. · 2 минуты · goodigy

В Ubuntu теперь systemd

📦 Статья из архива (2014–2017) — версии и команды могли устареть

24 апреля 2016 г. · 1 минута · goodigy

Установка Ubuntu 16.04

📦 Статья из архива (2014–2017) — версии и команды могли устареть

22 апреля 2016 г. · 2 минуты · Игорь Мансуров