←
Home
Archive
Tags
About
RSS
Yevhen Lebid's website
DevOps, CKAD, GPCA, Father
2021
Aug 26
Healthcheck для Apache Airflow в Kubernetes кластере
Jul 12
Интеграция Apache Airflow и Slack для отправки уведомлений
May 22
Apache Airflow: запуск Kubernetes Pod Operator через API
Apr 30
Безопасная работа с секретами при сборке docker-образов
Feb 5
Валидация миграций flyway c помощью testcontainers
2020
Dec 8
Использование PostStart хука при запуске пода в Kubernetes-кластере
Dec 1
Вставка данных в Redis при запуске контейнера в Kubernetes кластере
Apr 9
Отправка логов Apache Airflow в Elasticsearch
Mar 27
Валидация flyway-миграций без СМС и регистрации
Mar 15
Сбор и анализ логов Kubernetes кластера с помощью EFK-стека
Feb 21
Миграции и контроль версий БД с помощью Flyway
Feb 9
Gradle запуск checkstyle только на измененных файлах
Jan 28
Развертывание Apache Airflow в Kubernetes кластере
2019
Sep 19
Приоритетность подов в Kubernetes
Jul 25
Ресурсы в Kubernetes. Часть 2: Процессор (CPU)
Jul 15
Ресурсы в Kubernetes. Часть 1: Память (Memory)
Jun 12
Знакомство с Kubernetes. Часть 19: HorizontalPodAutoscaler
Jan 24
Deploy to k8s with Spinnaker. Часть 1: Установка
Jan 8
Gradle Checkstyle plugin
Jan 3
Сборка проектов с помощью Gradle
2018
Dec 29
GRPC REST Gateway
Oct 18
Практические примеры использования tcpdump
Oct 11
Практические примеры использования tar
Oct 8
Практические примеры использования netstat
Oct 4
Проверка занятости порта сервисом в Linux
Oct 1
Знакомство с Kubernetes. Часть 18: PodPresets
Sep 27
6 способов очистки терминала в Linux
Sep 24
Знакомство с Kubernetes. Часть 17: Введение в YAML
Sep 20
Выводим список установленных пакетов в Linux по дате
Sep 14
Знакомство с Kubernetes. Часть 16: Различия в Replication Controller, Replica Set и Deployments
Sep 13
Docker совет №38: Топ-10 опций команды docker run
Sep 10
Jenkins as a code. Часть 4
Sep 6
Знакомство с Kubernetes. Часть 15: Установка и настройка kubectl
Sep 3
Jenkins as a code. Часть 3
Aug 30
Docker совет №37: Incorrect Username or Password при скачивании образов
Aug 27
Знакомство с Kubernetes. Часть 14: Секреты (Secrets)
Aug 23
Docker совет №36: Что происходит при запуске docker-compose up?
Aug 20
Jenkins as a code. Часть 2
Aug 16
Docker совет №35: Проверка кода завершения работы контейнера
Aug 13
Знакомство с Kubernetes. Часть 13: Конфигмапы (ConfigMap)
Aug 9
Docker совет №33: Разница между форматами CMD
Aug 6
Jenkins as a code. Часть 1
Aug 2
Docker совет №33: Использование двух Dockerfile в одном compose-проекте
Jul 30
Jenkins: использование shared libraries
Jul 26
Docker совет №32: Разница между create, start и run
Jul 23
Запуск docker-compose с помощью systemd unit
Jul 19
Docker совет №31: Использование build и image в одном сервисе в docker-compose
Jul 16
Знакомство с Kubernetes. Часть 12: Аннотации
Jul 12
Как исправить ошибку getpwnam(nginx) failed
Jul 9
Знакомство с Kubernetes. Часть 11: Сервисы (services)
Jul 5
Docker совет №30: Монтирование ssh-ключей в docker-контейнер
Jul 2
Знакомство с Kubernetes. Часть 10: Неймспейсы (namespaces)
Jun 25
Знакомство с Kubernetes. Часть 9: Метки и селекторы
Jun 21
Docker совет №29: Создание read-only контейнеров
Jun 18
Знакомство с Kubernetes. Часть 8: Переменные окружения
Jun 14
Docker совет №28: Как исправить ошибку 'Connection Reset by Peer'
Jun 11
Знакомство с Kubernetes. Часть 7: Образы (Images)
Jun 7
Docker совет №27: Разница между реестром, репозиторием и образом
Jun 4
Знакомство с Kubernetes. Часть 6: Сборщик мусора (Garbage Collector)
May 31
Docker совет №26: Использование коротких ID
May 28
Знакомство с Kubernetes. Часть 5: Развертывания (Deployments)
May 24
Docker совет №25: Какую API версию docker compose использовать?
May 21
Знакомство с Kubernetes. Часть 4: Реплики (ReplicaSet)
May 17
Docker совет №24: Запуск Insecure Docker Registry
May 14
Знакомство с Kubernetes. Часть 3: Поды (Pods)
May 10
Docker совет №23: Импорт SQL-файла с docker-compose
Apr 30
Знакомство с Kubernetes. Часть 2: Терминология
Apr 26
Docker совет №22: Получаем список изменений в контейнере
Apr 23
Знакомство с Kubernetes. Часть 1: Установка
Apr 19
Как восстановить пользователя root в mysql?
Apr 15
Знакомство с Kubernetes. Часть 0: Что это?
Apr 12
Docker совет №21: Использование переменных окружения
Apr 5
Docker совет №20: Используйте WORKDIR
Apr 2
Применение DRY к docker-compose.yml
Mar 29
Docker совет №19: docker-compose stop или down?
Mar 26
Установка Minikube
Mar 22
Docker совет №18: Использование диска
Mar 19
Let's Encrypt: Wildcard-сертификаты теперь доступны!
Mar 15
Docker совет №17: Команда docker-compose config
Mar 12
Sphinxsearch в docker-контейнере
Mar 8
Docker совет №16: Использование флага --add-host
Mar 5
Docker совет №15: Использование контейнеров для длительных и разовых задач
Mar 1
Docker: перенаправление логов в Graylog2
Feb 26
Cron в docker контейнере
Feb 22
Docker cовет №14: Как запускать задачи по крону - в контейнере или на хост-машине?
Feb 19
Пересборка Nginx с поддержкой TLS v1.3
Feb 15
Использование MozJPEG в docker-контейнере
Feb 12
Практические примеры использования sysdig
Feb 8
Практические примеры использования wget
Feb 5
Redis в docker-контейнере не сохраняет данные
Feb 1
Как изменить значение Open File Limit — 3 варианта
Jan 29
JetBrains Products License Server in docker
Jan 25
Docker совет №13: Какой флаг лучше использовать Volume или Mount?
Jan 22
Мониторинг Redis с помощью Nixstats
Jan 18
Оптимизация и сжатие изображений из консоли
Jan 15
Redis Inside или что хранится в редисе?
Jan 11
Nginx: ошибка (24: Too many open files) и ее решение
Jan 8
Prometheus 2.0: Новый формат Alert rules
Jan 4
Docker совет №12: Установка пароля redis без правки конфига
Jan 1
Docker совет №11: Автоматическое удаление ненужных данных docker
2017
Dec 28
Docker совет №10: Алиасы для часто используемых команд
Dec 25
Prometheus: Миграция на версию 2.0
Dec 21
Установка Redis Desktop Manager в Ubuntu 16.04
Dec 18
MySQL: Логирование запросов от определенных пользователей
Dec 14
Docker совет №9: Добавляйте метаданные в ваши docker-образы
Dec 11
Expo: Packager останавливается через несколько секунд после старта
Dec 7
Редиректы на Nginx: Rewrite vs Return
Dec 4
GitLab CI: deploy на docker swarm
Nov 30
Включение виртуальной машины на гипервизоре ESXi из консоли
Nov 27
GitLab CI: Чем проще .gitlab-ci.yml, тем лучше
Nov 23
Docker совет №8: Разница между docker ps и docker container ls
Nov 20
Шифрование файлов в git-репозитории с помощью git-crypt
Nov 16
Docker совет №7: Измеряйте ресурсы, используемые контейнерами
Nov 13
Очистка кэша FastCGI: еще один вариант
Nov 9
Docker совет №6: Объединяйте RUN в Dockerfile
Nov 6
Добавление кастомных заголовков для исходящих писем в exim
Nov 2
Docker совет №5: Разница между инструкциями RUN и CMD
Oct 30
Проблемы с удалением docker-контейнеров: device or resource busy
Oct 26
Использование модуля nginx_module_vts для сбора расширенной статистики Nginx
Oct 23
Верификация коммитов в GitLab 9.5.x
Oct 19
Docker совет №4: Структура проекта с несколькими Dockerfile и docker-compose
Oct 16
Установка и активация Atlassian Confluence 6.3.4
Oct 12
3 причины использовать Alpine в качестве базовых docker-образов
Oct 9
Установка и активация JIRA Software Server 7.5.0
Oct 5
Docker совет №3: Установка самых популярных пакетов в Alpine
Oct 2
Скрипт для бекапа таблиц в БД + шифрования
Sep 28
Docker: не игногируйте .dockerignore!
Sep 25
Кэш пакетов для Composer
Sep 21
Docker совет №2: Оптимизация разработки с использованием томов
Sep 18
Docker Swarm: stack deploy и именованные тома (named volumes)
Sep 14
Docker совет №1: Вывод содержимого файла из контейнера
Sep 11
Мониторинг Nginx с помощью Nixstats
Sep 7
Docker Swarm: stack deploy и env-переменные
Aug 24
GitLab CI: Анализ кода
Aug 21
Сбор и анализ логов Nginx с помощью Graylog2
Aug 17
Как убедить владельца бизнеса или своего руководителя использовать Docker
Aug 14
Резервное копирование MySQL 5.7 с помощью Percona Xtrabackup
Aug 10
Мониторинг PHP-FPM с помощью Nixstats
Aug 7
Portainer: WebUI для управления docker-контейнерами
Aug 3
Бесплатный мониторинг сервера с оповещением в Telegram/sms
Jul 31
Percona Server и Percona XtraBackup в docker-контейнере
Jul 27
Nginx + GeoIP: блокировка пользователей из определенных стран
Jul 24
Использование модуля ngx_cache_purge для очистки кэша FastCGI
Jul 20
Очистка места в private docker-registry
Jul 17
Мониторинг docker c помощью Prometheus
Jul 13
GitLab CI: zero downtime docker deployment
Jul 10
GitLab: Custom hooks
Jul 6
Простое и дешевое резервное копирование на Google Cloud Storage
Jul 3
Dockerfile: ADD или COPY?
Jun 29
Пересборка Nginx с поддержкой PageSpeed
Jun 26
GitLab CI: Часть 10 (финал), этап cleanup в .gitlab-ci.yml
Jun 22
OpenSSL: простое шифрование файлов с использованием пароля
Jun 19
GitLab CI: Часть 9, этап deploy в .gitlab-ci.yml (продолжение)
Jun 15
GitLab CI: Часть 9, этап deploy в .gitlab-ci.yml
Jun 12
GitLab CI: Часть 8, этап release в .gitlab-ci.yml
Jun 8
GitLab CI: Часть 7, этап test в .gitlab-ci.yml
Jun 1
GitLab CI: Часть 6, этап build в .gitlab-ci.yml (второй подход)
May 29
GitLab CI: Часть 5, этап build в .gitlab-ci.yml (первый подход)
May 25
GitLab CI: Часть 4, этап spawn в .gitlab-ci.yml
May 18
Установка DNS-сервера в docker-контейнере
May 15
GitLab CI: Часть 3, введение в .gitlab-ci.yml
May 11
GitLab CI: Часть 2, специальные образы
May 8
GitLab CI: Часть 1, запуск раннеров (runners)
May 4
Gitlab в docker-контейнерах: резервное копирование
May 1
Поднимаем Gitlab в docker-контейнерах за Nginx
Apr 27
Ищем и убиваем zombie процессы
Apr 24
Очистка места на диске после docker
Apr 20
Установка Prometheus Node Exporter в CentOS 7
Apr 17
Gitlab + Gitlab CI + Docker registry с помощью docker-compose
Apr 13
Оптимизация docker-образов
Apr 10
GitLab: перенос данных с omnibus-установки в docker-установку
Apr 6
Установка и настройка DNS + DHCP с динамическим обновлением зон в Ubuntu 16.04
Apr 3
Резервное копирование виртуальных машин ESXI с помощью Xsibackup
Mar 30
Настройка кэширования на Nginx
Mar 27
Использование make для управления docker-контейнерами
Mar 23
Установка и настройка сервера очередей Beanstalkd в CentOS 7
Mar 20
Docker: работа с контейнерами
Mar 16
Установка Docker в Ubuntu 16.04
Mar 13
Мониторинг SMART атрибутов SSD Intel DC S3500/S3700 Series
Mar 9
Установка и настройка сервера очередей Beanstalkd в Debian Jessie
Mar 6
Что такое SPF (Sender Policy Framework)?
Mar 2
Горячие клавиши в bash
Feb 27
Использование Percona XtraBackup при большом количестве таблиц в БД
Feb 23
Настройка статических ip-адресов для LXC-контейнеров в CentOS 7
Feb 20
Let’s Encrypt и Nginx: получаем максимум от ssllabs.com и securityheaders.io
Feb 16
Установка и настройка LXC в CentOS 7
Feb 13
Гибкий деплой приложений с Deployer
Feb 9
Настройка Nginx + SSL от Let’s Encrypt (вариант 2, элегантный)
Feb 6
Пересборка Nginx с поддержкой Brotli
Feb 2
Шпаргалка по работе в командной строке
Jan 30
Настройка сети для LXC-контейнеров в Debian 8, Centos 7 и Fedora 21
Jan 26
Мониторинг php-fpm с помощью New Relic Plugin Agent
Jan 23
Ansible: ввод sudo-пароля при выполнении playbook
Jan 19
Munin: Мониторинг php-fpm
Jan 16
AbuseBSI: Offene NetBIOS-Namensdienste in AS24940
Jan 12
Failed to restart nginx.service: Unit nginx.service is masked
Jan 9
Provisioning [Linksys|Cisco] VoIP devices
Jan 5
Топ ваших Linux команд + полезности
Jan 2
Подсветка синтаксиса в mcedit и bash
2016
Dec 29
Генерация надежных паролей в Linux: 4 простых способа
Dec 26
Обновление ядра в Ubuntu 16.04
Dec 22
AttributeError: 'module' object has no attribute 'PROTOCOL_SSLv3'
Dec 19
Добавление и удаление 'кирпичей' в GlusterFS
Dec 15
cp: cannot stat 'ltmain.sh': No such file or directory
Dec 12
Защита Asterisk с помощью Fail2Ban, продолжение
Dec 8
Настройка связки Nginx + Fail2ban в Debian
Dec 5
Munin: мониторинг PHP OPcache
Dec 1
Как перезагрузиться при «Input / Output Error»
Nov 28
Переименование виртуальных машин в VMware ESXi
Nov 24
Встречайте — New Relic Infrastructure
Nov 21
Пересборка Nginx с OpenSSL 1.0.2+ для HTTP2.0
Nov 17
Обновление ключа подписи для Percona в Debian
Nov 14
Практические примеры использования cp
Nov 10
Настройка связки Apache + Fail2ban в Debian
Nov 7
Практические примеры использования nmap
Nov 3
Как пофиксить уязвимость Dirty COW (CVE-2016-5195)
Oct 31
После обновления не запускается Prometheus
Oct 27
Практические примеры использования uname
Oct 24
Установка и настройка GlusterFS-server 3.5.2 в ОС Debian
Oct 20
Как убрать WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED
Oct 17
Включение swap-файла в Linux
Oct 13
Практические примеры использования date
Oct 10
Установка trac + git + nginx в ОС Debian Jessie
Oct 6
Добавление учетных записей с помощью Ansible
Oct 3
Выводим время отклика сайта с помощью Prometheus и Grafana
Sep 29
Как обновить просроченные ключи (KEYEXPIRED) в Debian/Ubuntu с помощью apt
Sep 26
Reboot in Ansible 2.1.1.0
Sep 22
Практические примеры использования lsof
Sep 15
Запуск x11vnc в Kubuntu 16.04
Sep 12
Практические примеры использования history
Sep 8
Практические примеры использования find
Sep 5
Получаем информацию о железе с помощью dmidecode
Sep 1
Украшаем консоль в Linux
Aug 29
Получаем информацию о железе с помощью lshw
Aug 25
Munin: мониторинг Percona Server
Aug 22
Тестирование кластера на базе Corosync и Pacemaker
Aug 18
Nginx — ограничение доступа
Aug 15
Call «HostStorageSystem.ComputeDiskPartitionInfo» for object «storageSystem» on ESXi failed (2088707)
Aug 11
Конфигурация Nginx для чайников
Aug 8
Monit — получаем список запущенных процессов
Aug 4
Как изменить innodb_log_file_size?
Aug 1
Установка и настройка Pacemaker & Corosync в Debian Jessie
Jul 28
Утилиты для анализа серверной нагрузки
Jul 25
Что делать, когда результат выполнения df и du отличается?
Jul 21
Создание индекса в таблице MySQL без блокировки
Jul 18
DDoS-атаки с использованием Portmapper вашего сервера: что делать?
Jul 14
Missing dependency Cache::Cache at /etc/munin/plugins/mysql_
Jul 11
Поиск по части слова в Sphinxsearch
Jul 7
Включаем плагин nginx status в munin
Jul 4
Real Time индексы в Sphinxsearch
Jun 30
Настройка IPMI на гипервизоре под управлением ESXi
Jun 23
Настройка IPMI на сервере
Jun 16
4 команды для диагностики серверных проблем
Jun 13
Failover заданий в Gearman
Jun 9
Шпаргалка по использованию команды mail в Linux
Jun 6
Аудит системных событий в Linux
May 26
Автоматическая установка newrelic-sysmond
May 23
Мониторинг серверов с помощью New Relic
May 19
Asterisk: пишем CDR в базу данных MySQL
May 16
Warning: purging the environment. Suggested action: use keep_environment
May 12
Установка Trac в Debian Jessie
May 9
Ubuntu: удаление неиспользуемых ядер
May 5
Перенос svn-репозитория на другой сервер
Apr 28
Как включить HTTP2.0 в Nginx?
Apr 25
Настройка Nginx + SSL от Let’s Encrypt на Debian 8
Apr 21
Postfixadmin — пересылка писем с существующего ящика
Apr 18
Перенос git-репозитория на другой сервер
Apr 14
Как удалить записи из таблицы mysql.slow_log?
Apr 11
Установка nginx и php7.0-php в Debian Jessie
Apr 7
Балансировка нагрузки Nginx
Apr 4
Prometheus: еще больше метрик от MySQL-сервера
Mar 31
Nginx как фронтенд для Apache
Mar 28
kipmi0: что за зверь?
Mar 24
Анализ медленных запросов с помощью pt-query-digest
Mar 21
Мониторинг Nginx в реальном времени
Mar 17
Prometheus: мониторинг IOPS и Disk Latency
Mar 14
Удобный скрипт для создания резервных копий
Mar 10
Prometheus: пример использования Alertmanager
Mar 7
Prometheus: базовая авторизация
Mar 3
Prometheus: разбираемся с CPU Usage
Feb 29
Grafana - действительно удобный дашборд
Feb 25
Знакомство с Prometheus. Часть 3: установка и настройка PromDash
Feb 22
Знакомство с Prometheus. Часть 2: сбор метрик от MySQL-сервера
Feb 18
Оптимизация Munin в Debian
Feb 15
Знакомство с Prometheus. Часть 1: установка и настройка
Feb 11
Systemd и journalctl: читаем логи
Feb 8
Как заставить Munin собирать данные каждую минуту
Feb 4
nf_conntrack: table full, dropping packet
Feb 1
Использование утилиты pt-online-schema-change для OPTIMIZE TABLE
Jan 28
Аудит systemd: почему не запускаются юниты?
Jan 25
Увеличение размера DRBD ресурса
Jan 21
Улучшаем производительность PhpMyAdmin
Jan 18
Обслуживание серверов в кластере на базе Pacemaker
Jan 14
Установка Percona Toolkit в Debian Wheezy
Jan 11
Шпаргалка по работе с MTA Exim
Jan 7
Установка Percona Server 5.6 в Debian Wheezy
Jan 4
Active/Passive Cluster в Linux. Часть 3: настройка ресурсов кластера
2015
Dec 31
Установка Nginx версии 1.6 в Debian Wheezy
Dec 28
Active/Passive Cluster в Linux. Часть 2: установка и настройка Pacemaker и Corosync
Dec 24
Установка и настройка Monit в Debian Jessie
Dec 21
Active/Passive Cluster в Linux. Часть 1: установка и настройка DRBD
Dec 17
Утилита tune2fs в Linux
Dec 14
Увеличение размера логических томов в Linux
Dec 10
Отказоустойчивый IP-адрес с использованием ucarp
Dec 7
Debian Jessie и gearman-job-server: баг или фича?
Dec 3
SSH авторизация по ключу
Nov 30
Объединение сетевых карт в Linux
Nov 26
Запуск rsync в режиме демона
Nov 23
Сбор и просмотр логов с помощью LogAnalyzer
Nov 19
Алиасы в SSH
Nov 16
Знакомство с Ansible. Часть 5: роли, условия и циклы
Nov 12
Настройка логов DNS-сервера bind9
Nov 9
Знакомство с Ansible. Часть 4: модули
Nov 5
Как переименовать пользователя в Ubuntu
Nov 2
Знакомство с Ansible. Часть 3: переменные
Oct 29
Восстановление DRBD после split brain
Oct 26
Знакомство с Ansible. Часть 2: разбор вывода playbook
Oct 22
Восстановление программных RAID-массивов
Oct 19
Знакомство с Ansible. Часть 1: Введение
Oct 15
Решение проблем после обновления SVN до 1.8.14
Oct 12
Установка subversion 1.8 в Debian Wheezy
Oct 8
Автоматическое обновление установленных пакетов в Ubuntu
Oct 5
3ware 9650SE-4LPML — пересборка RAID-массива
Oct 1
Error line 5 too long in state file /var/lib/logrotate/status
Sep 28
Защита Asterisk 11 от подбора паролей с помощью Fail2Ban
Sep 24
Получение состояния устройства в Asterisk 11 с помощью DEVICE_STATE
Sep 21
Динамические очереди вызовов в Asterisk 11
Sep 17
Установка и настройка jail окружения в Debian Wheezy
Sep 14
Пишем свой плагин для Munin: http response median
Sep 10
Как узнать время отклика сайта из командной строки Linux
Sep 7
Утилита s4cmd для работы с Amazon Simple Storage Service
Sep 3
Redis Cluster в Debian Wheezy: миграция и решардинг
Aug 31
Установка и настройка Redis Cluster в Debian Wheezy
Aug 27
Базовая настройка Asterisk 11 в Debian Wheezy: очереди звонков
Aug 24
Утилита s3cmd Для Amazon Simple Storage Service
Aug 20
Базовая настройка Asterisk 11 в Debian Wheezy: входящие и исходящие звонки
Aug 17
Дефрагментация таблиц InnoDB
Aug 13
Базовая настройка Asterisk 11 в Debian Wheezy: голосовая почта
Aug 10
Пишем свой плагин для Munin: nginx request time
Aug 6
Базовая настройка Asterisk 11 в Debian Wheezy: обслуживание внутренних звонков
Aug 3
Установка Asterisk 11 в Debian Wheezy, часть 2
Jul 31
Установка Asterisk 11 в Debian Wheezy, часть 1
Jul 27
Шпаргалка по утилите mysqldump
Jul 27
Тюнинг MySQL-сервера: формат файлов Barracuda
Jul 24
Развертывание бекапов БД созданных с помощью Percona XtraBackup
Jul 15
Скрипт для создания бекапов БД с помощью Percona XtraBackup
Jul 14
Резервное копирование баз данных с помощью Percona XtraBackup
Jul 13
Тюнинг MySQL-сервера: включение опции innodb_file_per_table
Jul 8
Тюнинг MySQL-сервера: сжатие таблиц InnoDB
Jul 7
Тюнинг Munin: выводим только нужную информацию