— инструмент для бэкапа, миграции и аварийного восстановления Kubernetes-кластеров и их данных.
Позволяет безопасно сохранять и восстанавливать ресурсы кластера (поды, deployment, конфигурации), включая прикреплённые тома через снапшоты.
— Резервное копирование ресурсов кластера и их восстановление в том же или другом кластере
— Снапшоты постоянных томов (PV)
— Миграция ресурсов между кластерами и облачными платформами
— Планирование бэкапов по расписанию
— Выборочное восстановление ресурсов с фильтрацией по namespace, меткам
— Поддержка Restic для бэкапа любых томов (включая NFS, hostPath)
— Интеграция с облачными хранилищами (S3, GCS, Azure Blob)
— Расширяемая архитектура через плагины
— Ролевая модель доступа для безопасного использования
Velero превращает сложную задачу резервного копирования Kubernetes в предсказуемый и управляемый процесс.
#полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥3👏2❤1
Снимок LVM — это точное состояние логического тома (LV) на момент создания. Он занимает место только для изменённых блоков и создаётся без остановки сервиса.
— При создании снимка исходный том и снимок ссылаются на одни и те же данные
— При изменении данных в исходном томе, старые блоки копируются в область снимка перед записью
— Таким образом, снимок хранит только те данные, которые были изменены после его создания
*Речь про «классические» снимки LVM. У thin-томов механика и команды отличаются.
Создать снимок (2 ГиБ под изменения)
lvcreate -s -n my_lv_snapshot -L 2G /dev/my_vg/my_lv
Паспорт snapshot через lvdisplay
lvdisplay /dev/my_vg/my_lv_snapshot
--- Logical volume ---
LV Path /dev/my_vg/my_lv_snapshot
LV Name my_lv_snapshot
VG Name my_vg
LV UUID y9FV7q-8UxB-7MmE-S8No-5A3F-2QJi-8x9LAD
LV Write Access read/write
LV snapshot status active destination for my_lv
LV Status available
# open 0
LV Size 3.00 GiB
Current LE 768
COW-table size 2.00 GiB
COW-table LE 512
...
Смонтировать для проверки (читать безопаснее в ro)
mkdir -p /mnt/snapshot
mount -o ro /dev/my_vg/my_lv_snapshot /mnt/snapshot
# Для XFS добавьте: -o ro,nouuid
Откат к снимку (merge)
# Если origin смонтирован, снимите его:
umount /mnt/data
# Запустить merge:
lvconvert --merge /dev/my_vg/my_lv_snapshot
# Если origin был активен/смонтирован, merge произойдёт при следующей активации LV
# (часто это выглядит как "после перезапуска сервиса/узла").
После успешного merge сам snapshot-LV исчезает — это нормально.
Удалить снимок (если не нужен)
lvremove /dev/my_vg/my_lv_snapshot
Важные нюансы
#линуксятина
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥4👏2
Помогут разобраться в бэкапах от базовой механики и утилит — к стратегиям для гибридной инфраструктуры, облаков, SaaS и Kubernetes.
Практический справочник по планированию и внедрению резервного копирования в смешанных средах с акцентом на Unix/Linux и open-source.
— инвентаризация, расписания, ротации, offsite и регулярные тесты восстановления;
— базовые утилиты:
tar/cpio/dump/restore/dd/rsync;— Amanda, BackupPC, Bacula: архитектура, конфигурации, сценарии восстанавления;
— near-CDP на базе rsync/snapshots (rsnapshot, rdiff-backup);
— носители: ленты/VTL, bare-metal восстановление, бэкап баз данных.
Автор: W. Curtis Preston · Издательство: O’Reilly, 2007
Руководство по современной стратегии бэкапа и DR: процессы, метрики и инструменты для инфраструктуры.
— RPO/RTO, runbook’и, регулярные проверки восстановления;
— 3-2-1, неизменяемые копии, air-gap, шифрование;
— full/incremental, дедупликация, snapshots, репликация, (near)-CDP;
— защита VMware/Hyper-V, физических серверов, NAS, рабочих станций и мобильных;
— базы данных on-prem и PaaS; SaaS (M365, Google Workspace, Salesforce);
— контейнеры/Kubernetes; модели DR (cold/warm/hot), DRaaS.
Автор: W. Curtis Preston · Издательство: O’Reilly, 2021
#книги #полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4👏3❤2
Клиент: крупный дистрибьютор продуктов питания с круглосуточной работой и «тяжёлой» ERP.
при серьёзном сбое компания не была уверена, что сможет быстро восстановить работу из резервных копий — риск простоя, потери данных и денег.
— не было удалённой DR-площадки, откуда гарантированно подниматься;
— метрики RPO/RTO с бизнесом не были формально согласованы;
— регламенты и тестовые восстановления требовали доработки;
— репликация «журналами» периодически давала расхождения в данных.
согласовали RPO/RTO, определили стратегию бэкапов, развернули удалённую площадку, зафиксировали регулярные test-restore и обновляемый runbook — всё, что превращает копии в гарантированное и предсказуемое восстановление.
— базы данных — онлайн-обновления + полные бэкапы;
— виртуальные машины — ежедневные копии;
— мониторинг успешности бэкапов и регулярные test-restore.
#изПрактики
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5👏2❤1😱1
*чем ниже RTO/RPO — тем выше стоимость.
#полезное #красивое
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤5🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Друзья, вы же заметили, что у нас появилось несколько новых регулярных рубрик
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍8👏2❤1
Друзья, осталась ли у вас инфраструктура за пределами РФ и ощутили ли вы последствия на себе?
Anonymous Poll
81%
Нет, мы полностью в РФ
13%
Есть инфра за границей, но не пострадали
6%
Есть инфра за границей, почувствовали
В ней есть основные функции, которые напрямую влияют на ключевые показатели:
SLA — фактическая доступность сервисов;
RTO/RPO — скорость восстановления и допустимые потери данных;
TCO — совокупная стоимость владения.
Перенос работающей ВМ между физическими серверами без остановки. Позволяет проводить плановое обслуживание и ребалансировку нагрузки без остановки сервисов.
*Снижается количество плановых простоев и соблюдается SLA.
Автоматический перезапуск ВМ на другом узле при отказе. Сокращает простои из-за поломок оборудования.
*Предсказуемый RTO и выполнение SLA без ручных вмешательств.
Параллельный «зеркальный» экземпляр ВМ с мгновенным переключением. Нужен там, где нельзя потерять ни секунды работы или транзакции.
*Исключаются простои для самых критичных систем, снижаются финансовые и репутационные риски.
Фиксация состояния ВМ в конкретный момент времени. Позволяет мгновенно создать "точку отката" перед рискованными операциями (обновления, изменение конфигураций) и быстро вернуться к ней в случае сбоя.
*Снижается время на восстановление после инцидентов (RTO) и риски при внесении изменений.
Программные сети для связности и сегментации сервисов. Изменения выполняются политиками, без перестройки «железа».
*Быстрее запускаются новые среды и ограничивается влияние инцидентов.
Способ выделять дисковое место: сразу целиком (thick) или по мере роста (thin). Thick — про стабильную производительность. Thin — про экономию ёмкости и плотность.
*Выбор нужного баланса цены и предсказуемости.
Автоматическое распределение и балансировка виртуальных машин между узлами кластера. Обеспечивает равномерное потребление ресурсов железа, предотвращая перегрузку отдельных серверов.
*Повышается общая эффективность использования инфраструктуры и снижается необходимость ручного вмешательства.
Правила приоритета, гарантий и ограничений по CPU/памяти/IO. Критичные сервисы защищены от «соседей», фоновые — не мешают.
*Управление качеством сервисов и прозрачное планирование мощности.
Согласование ВМ с архитектурой процессоров и миграции между разными поколениями железа. Нагрузки свободно перемещаются по кластеру без привязки к конкретным узлам.
*Быстрее обновляется парк и получается избежать длительных простоев.
Гарантии и лимиты по IOPS/пропускной способности для томов и ВМ. «Шумные» задачи не влияют на критичные сервисы.
*Стабильные задержки в пиковые часы и понятную связь уровня сервиса с затратами.
#полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥7👏2
Во время плановой миграции диска ВМ между доменами хранения (HDD → SSD) произошёл сбой задачи миграции.
В карточке ВМ появился снимок с пометкой «Диск в некорректном состоянии»; выключать/перезагружать ВМ рискованно из-за возможной потери данных.
Система создала snapshot на исходном домене и delta на целевом; snapshot полностью скопировался, но ссылки в БД не переключились на новый слой — delta оказалась на целевом домене, а база продолжила указывать на старый.
Так как snapshot уже был на целевом домене, обновили ссылки в БД на корректный снимок и принудительно активировали его; статус ВМ стал «Включено». После проверки работы удалили лишние тома на исходном домене.
В zVirt диск ВМ многослойный; при сбоях возможен разрыв ссылок между слоями. Сначала — диагностика по документации вендора, затем точечные правки.
#изПрактики
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥4👏3
Есть задача: перенести работающую виртуальную машину с одного физического сервера на другой (чтобы обновить железо или перераспределить нагрузку). При этом пользователи не должны заметить перерыва в работе.
Проверяется совместимость хостов (CPU, память, устройства). На целевом хосте выделяются ресурсы. QEMU устанавливает соединение (TCP или RDMA для скорости). Если что-то несовместимо (например, разные CPU флаги), миграция не стартует.
Итеративно копируется память VM с источника на цель, пока VM продолжает работать. Сначала вся RAM, затем только "грязные" страницы (изменённые). Это повторяется, пока разница не станет минимальной (конвергенция).
VM приостанавливается на источнике (downtime начинается). Передаются оставшиеся страницы памяти, состояние CPU, устройств (диски, сетевые карты). Это быстрый шаг, чтобы минимизировать простой.
VM запускается на целевом хосте. Трафик перенаправляется (если нужно, через ARP или SDN). Источник очищается.
#заметкиИнженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥4👏2❤1
Фреймворк для управления виртуальными машинами прямо внутри Kubernetes.
Позволяет запускать ВМ как native-ресурсы кластера через Custom Resource Definitions (CRD).
— Запуск и управление ВМ через Kubernetes API и kubectl
— Использование стандартных Kubernetes-сетей (CNI) и хранилищ (CSI)
— Live Migration ВМ между нодами кластера
— Поддержка cloud-init и автоматизированной настройки ВМ
— Интеграция с KVM/QEMU через специальные поды
KubeVirt стирает границы между виртуальными машинами и контейнерами, позволяя использовать единую платформу для всех рабочих нагрузок.
#полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥4👏2
KVM + QEMU — виртуализация на Linux
KVM (Kernel-based Virtual Machine) — модуль ядра, обеспечивающий аппаратную виртуализацию.
QEMU — эмулятор, который с KVM превращается в полноценный гипервизор. Вместе они позволяют запускать VM быстро и эффективно, без overhead, как в VirtualBox или VMware.
Полезно для тестирования, разработки.
🟢 Пример 1
Создание VM одной командой (через QEMU)
Где:
-enable-kvm — используем аппаратное ускорение
-m 1G — выделяем 1 ГБ памяти
-cpu host — пробрасываем CPU хоста без эмуляции
-nographic — запускаем без GUI (для серверов)
Преимущество
Максимально быстро и минималистично, но без персистентности — закрыли терминал = ВМ остановилась.
🟢 Пример 2
Создание управляемой ВМ одной командой (через libvirt)
✅ Что это дает
— Автоматическая регистрация ВМ в libvirt
— Управление через virsh
— Сетевые мосты "из коробки"
— Персистентность конфигурации
Управление такими виртуальными машины происходит через утилиту virsh.
Основные команды:
📍 Первый пример с qemu-system-x86_64 — ваш выбор для быстрого тестирования образов и экспериментов, когда нужно запустить ВМ буквально одной командой.
📍 Второй подход через virt-install + virsh идеален, когда требуется полноценное управление виртуальными машинами — здесь на помощь приходит libvirt с его персистентностью и удобным CLI.
Оба способа отлично дополняют друг друга в арсенале инженера.
#линуксятина
KVM (Kernel-based Virtual Machine) — модуль ядра, обеспечивающий аппаратную виртуализацию.
QEMU — эмулятор, который с KVM превращается в полноценный гипервизор. Вместе они позволяют запускать VM быстро и эффективно, без overhead, как в VirtualBox или VMware.
Полезно для тестирования, разработки.
Создание VM одной командой (через QEMU)
qemu-system-x86_64 \
-enable-kvm \
-m 1G \
-cpu host \
-drive file=focal-server-cloudimg-amd64-disk-kvm.img,format=qcow2 \
-netdev user,id=net0 \
-device virtio-net-pci,netdev=net0 \
-nographic
Где:
-enable-kvm — используем аппаратное ускорение
-m 1G — выделяем 1 ГБ памяти
-cpu host — пробрасываем CPU хоста без эмуляции
-nographic — запускаем без GUI (для серверов)
Преимущество
Максимально быстро и минималистично, но без персистентности — закрыли терминал = ВМ остановилась.
Создание управляемой ВМ одной командой (через libvirt)
virt-install \
--name vm \
--ram 2048 \
--vcpu 2 \
--disk my_disk.qcow2,size=8 \
--cdrom ubuntu-24.04.3-live-server-amd64.iso
— Автоматическая регистрация ВМ в libvirt
— Управление через virsh
— Сетевые мосты "из коробки"
— Персистентность конфигурации
Управление такими виртуальными машины происходит через утилиту virsh.
Основные команды:
virsh list --all # список всех ВМ
virsh start vm # запуск ВМ
virsh shutdown vm # штатная остановка
virsh destroy vm # принудительное завершение
virsh edit vm # редактирование конфигурации
virsh undefine vm # удаление ВМ (но не дисков)
Оба способа отлично дополняют друг друга в арсенале инженера.
#линуксятина
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥4❤2👏2
Практическое руководство по KVM, QEMU и libvirt
— архитектура и внутреннее устройство KVM/QEMU, работа libvirt;
— установка окружения и создание ВМ (virt-manager, virt-install, PXE);
— виртуальные сети и хранилища: Linux bridge, NAT/ routed/ isolated сети, MacVTap, iSCSI, LVM;
— управление жизненным циклом ВМ: консоли (VNC/SPICE), агенты гостя, live-миграция;
— шаблоны и снапшоты, форматы дисков, клонирование/тонкое развёртывание;
— Kimchi: веб-управление KVM/libvirt;
— SDN для KVM: Open vSwitch, туннели (VXLAN), OpenDaylight;
— интеграция с OpenStack и устранение неполадок виртуализации;
— производительность и best practices: VirtIO, CPU/memory/NUMA, I/O, тайм-кипинг;
— инструменты V2V/P2V (virt-v2v) и конвертация гостевых систем.
Авторы:
Humble Devassy Chirammal, Prasad Mukhedkar, Anil Vettathu.
Издательство:
Packt Publishing, 2016.
#книги
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍4👏2❤1
Обе технологии позволяют запускать несколько изолированных сред на одной физической машине, но подходы у них разные.
ВМ — минуты / контейнеры — секунды
ВМ занимают больше / контейнеры легче
ВМ сложнее переносить / контейнеры проще
у контейнеров выше
ВМ используют собственную ОС / контейнеры — общее ядро
#полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👏4👎3🔥3
Запрет на использование иностранных ПАКов на объектах КИИ и растущие требования к отказоустойчивости заставляют критическую инфраструктуру искать быстрые и надёжные решения.
Крупная энергокомпания — объект КИИ, обеспечивающий энергоснабжение в Сибири, обратилась с запросом:
— быстро нарастить ресурсы и повысить устойчивость ИТ-систем;
— перейти на российскую виртуализацию.
Базой проекта стала платформа частного облака CORTEL с использованием отечественной системы виртуализации zVirt.
Инфраструктуру развернули прямо на площадке заказчика, что позволило:
— сохранить полный контроль над периметром,
— упростить интеграцию,
— сократить время запуска.
— Анализ требований КИИ и проектирование архитектуры.
— Развёртывание частного облака на базе zVirt в ЦОДе заказчика.
— Интеграция с существующей ИТ-инфраструктурой.
— Настройка политики доступа и мониторинга.
— Проверка производительности и переход в эксплуатацию.
— Развёртывание за 2 дня.
— SLA 99,95% (максимум ~4 часа недоступности в год).
— Соответствие требованиям КИИ.
— Отсутствие затрат на долгий цикл закупок оборудования.
«Подрядчик взял всё на себя — оборудование, мощности и отечественную виртуализацию. Мы получили удобный интерфейс, гарантии и специалистов на связи, отвечающих за работоспособность и администрирование кластера.»
— отметил ИТ-директор заказчика.
О нюансах проекта читайте здесь
Чем заменить VMware
#изПрактики
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥5❤4
Если вы занялись вопросом недавно, вот памятка для ответственных и заинтересованных по теме КИИ, с ответами на основные вопросы.
Про актуальные изменения за первое полугодие 2025 года тут
Подробный план о том, как проводить категоризирование критической информационной инфраструктуры тут
Из последних новостей за второе полугодие:
Сроки миграции перенесли до 1 января 2028 и 1 декабря 2030.
Переход значимых объектов КИИ на российское ПО официально сдвинут.
Минцифры 19 сентября 2025 представило проект ПП о сроках и правилах перехода на отечественное ПО: предельная дата — 1 января 2028; при объективной невозможности и решении Президиума Правкомиссии срок может быть продлён, но не далее 1 декабря 2030.
Появился стандарт по ПАК для КИИ ПНСТ 1007-2025
В конце июня 2025 утверждён предварительный национальный стандарт, который классифицирует программно-аппаратные комплексы по назначению и задаёт основу для их признания «доверенными» для применения на объектах КИИ. Полный текст опубликован на портале Росстандарта.
Сформированы «Типовые отраслевые объекты КИИ»
ФСТЭК опубликовала проект постановления с перечнями типовых отраслевых объектов КИИ
#ИТиЗАКОН
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤2
Превращает шаблоны на базе Helm, Kustomize и Jinja2 в Kubernetes-манифесты, а также автоматически создает ресурсы Argo CD Application, адаптированные для разных окружений (например, dev, stage, prod).
Основной функционал:
pip install make-argocd-fly # требуется Python ≥ 3.11
#полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2👏2
Terraform — инструмент от HashiCorp для декларативного описания инфраструктуры через код (IaC).
Вы описываете желаемое состояние, а Terraform сам понимает, как его достичь.
⏰ Зачем
Упрощает управление инфраструктурой — нет ручных кликов в консолях. Обеспечивает повторяемость, аудит и коллаборацию. Идеально для DevOps: деплоите VPC, EC2 или K8s кластер одним apply.
⏰ Как используется
Пишем конфиг, запускаем terraform init (инициализация), terraform plan (превью изменений), terraform apply (применение). Для разрушения — terraform destroy. Поддерживает state-файлы для отслеживания изменений.
⏰ Модульность
Terraform поддерживает модули — переиспользуемые блоки кода.
Создайте модуль для VPC, и используйте его в разных проектах. Это как Lego: собирайте инфраструктуру из готовых частей, меняя переменные.
⏰ Универсальность языка HCL
HCL (HashiCorp Configuration Language) — декларативный язык Terraform.
Синтаксис одинаковый для всех облаков: ресурсы описываются блоками resource "aws_instance" {} или resource "google_compute_instance" {}. Разница только в провайдерах — плагинах для конкретных облаков (AWS, GCP). Один код — разные среды, легко мигрировать между провайдерами.
🔵 Terraform превращает ручное создание инфраструктуры в предсказуемый и повторяемый процесс. Один раз настроил — используешь везде.
#заметкиИнженера
Вы описываете желаемое состояние, а Terraform сам понимает, как его достичь.
Упрощает управление инфраструктурой — нет ручных кликов в консолях. Обеспечивает повторяемость, аудит и коллаборацию. Идеально для DevOps: деплоите VPC, EC2 или K8s кластер одним apply.
Пишем конфиг, запускаем terraform init (инициализация), terraform plan (превью изменений), terraform apply (применение). Для разрушения — terraform destroy. Поддерживает state-файлы для отслеживания изменений.
Terraform поддерживает модули — переиспользуемые блоки кода.
Создайте модуль для VPC, и используйте его в разных проектах. Это как Lego: собирайте инфраструктуру из готовых частей, меняя переменные.
HCL (HashiCorp Configuration Language) — декларативный язык Terraform.
Синтаксис одинаковый для всех облаков: ресурсы описываются блоками resource "aws_instance" {} или resource "google_compute_instance" {}. Разница только в провайдерах — плагинах для конкретных облаков (AWS, GCP). Один код — разные среды, легко мигрировать между провайдерами.
#заметкиИнженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥4👏3❤1
— Автоматическое управление зависимостями между модулями (dependencies)
— Поддержка нескольких окружений (dev/stage/prod) с общими настройками
— Интеграция с remote state для хранения состояния Terraform
— Hooks для выполнения скриптов до/после Terraform-операций
— Автоматизация команд Terraform (init, plan, apply) для всей инфраструктуры
— Универсальность HCL: синтаксис Terraform (HCL) остаётся неизменным, Terragrunt добавляет надстройку для конфигураций
— Провайдер-независимость: работает с любыми облаками, отличия только в провайдерах, а код — единый
— Упрощение CI/CD: легко интегрируется в пайплайны для автоматизированного IaC
Terragrunt делает Terraform масштабируемым и удобным для команд, минимизируя повторения и ошибки.
#полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2👏1
⚙️ Cloud-init — стандартная система инициализации для облачных экземпляров, которая выполняет начальную настройку при первом запуске ВМ. Поддерживается всеми major-облаками и гипервизорами.
✅ Как работает:
1. Образ ОС содержит cloud-init пакет
2. При старте ВМ cloud-init ищет данные конфигурации
3. Выполняет инструкции (пользователи, пакеты, скрипты)
4. Сохраняет логи в
✅ Основные возможности:
— Создание пользователей и настройка SSH-ключей
— Установка пакетов и обновление системы
— Настройка сетевых интерфейсов
— Выполнение custom-скриптов
— Монтирование дисков и настройка swap
🚪 Пример конфигурации:
🤓 Cистема изначально разрабатывалась для Ubuntu, но стала де-факто стандартом и теперь поддерживается всеми major-дистрибутивами, включая CentOS, Debian и даже FreeBSD.
Cloud-init превращает создание новых серверов из рутины в автоматизированный процесс — один раз настроил конфиг и получаешь готовые к работе ВМ в любом облаке.
#линуксятина
1. Образ ОС содержит cloud-init пакет
2. При старте ВМ cloud-init ищет данные конфигурации
3. Выполняет инструкции (пользователи, пакеты, скрипты)
4. Сохраняет логи в
/var/log/cloud-init-output.log— Создание пользователей и настройка SSH-ключей
— Установка пакетов и обновление системы
— Настройка сетевых интерфейсов
— Выполнение custom-скриптов
— Монтирование дисков и настройка swap
#cloud-config
# Конфигурация пользователя
users:
- name: admin
passwd: $6$rounds=4096$xyz$... # хэш пароля
sudo: ['ALL=(ALL) NOPASSWD:ALL']
shell: /bin/bash
# Обновление пакетов
package_update: true
package_upgrade: true
# Установка сurl, htop, git
packages:
- curl
- htop
- git
Cloud-init превращает создание новых серверов из рутины в автоматизированный процесс — один раз настроил конфиг и получаешь готовые к работе ВМ в любом облаке.
#линуксятина
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2🔥2👏2