Proxmox VE — мощная платформа для виртуализации с открытым исходным кодом, которая поддерживает создание шаблонов и использование linked clones — лёгких клонов на основе одного базового образа. Это значительно ускоряет развёртывание новых виртуальных машин и экономит место на диске. Но не подходит для использования в действительно рабочей инфраструктуре.
В этой статье вы узнаете, как:
- Создать шаблон из виртуальной машины.
- Настроить linked clones.
- Автоматизировать развёртывание новых ВМ на базе шаблонов.
Зачем использовать шаблоны и linked clones?#
Если вы часто создаёте однотипные виртуальные машины (это же работает и с LXC контейнером на самом деле) — с Ubuntu, Debian или другими ОС, — использование шаблонов и linked clones поможет:
- Сэкономить дисковое пространство и время. В основном время конечно
- Стандартизировать развёртывание.
- Упростить CI/CD или DevOps-инфраструктуру. Если конечно вам оно надо
Шаг 1. Подготовка виртуальной машины#
- Создайте обычную ВМ через веб-интерфейс Proxmox (или
командную строку, если вы мизантроп
). - Установите нужную ОС (например, Ubuntu Server).
- Установите базовый набор пакетов, проведите настройку сети и др.
- Обязательно установите qemu-guest-agent
Шаг 2. Преобразование ВМ в шаблон#
Выключите виртуальную машину:
- Выключите виртуальную машину:
qm shutdown 100
- Преобразуйте её в шаблон:
qm template 100
Теперь ВМ 100 больше нельзя запускать напрямую — это шаблон.
Шаг 3. Создание linked clone#
Linked clone — это ВМ, которая использует копию только для изменений, а основная система хранится в шаблоне. Это позволяет:
- Мгновенно создавать ВМ.
- Экономить место.
Создание linked clone через CLI (в видео я показываю как это сделать из под графического интерфейса):
qm clone 100 200 --name ubuntu-clone --full 0
Где 100 - это номер вм - шаблона, а 200 - это id вновь создаваемоем вм. Ubuntu-clone - это id вм с номером 200. --full 0
означает linked clone.
После этого можете поменять свойства вновь создаваемой ВМ.
Когда не стоит использовать linked clones?
Если шаблон удалён — все linked clones станут нерабочими. Нельзя переместить linked clone в другой storage без преобразования в full clone. Миграция между узлами требует shared storage (например, Ceph или NFS).
Заключение#
Шаблоны и linked clones в Proxmox — отличная возможность автоматизировать и ускорить развёртывание ВМ. Это особенно полезно в тестовых средах, DevOps-сценариях и при работе с облачными образами.
Ссылки#
- Proxmox VE: Установка и базовая настройка
- Автоматизация с cloud-init в Proxmox
- LXC-контейнеры в Proxmox VE: Гайд для новичков
Подписывайтесь на stilicho2011 на YouTube — ещё больше видео по Proxmox и системному администрированию!