Как создавать и управлять LXC-контейнерами в Proxmox?

LXC-контейнеры позволяют запускать Linux-системы в Proxmox с небольшими накладными расходами. В руководстве объясняется, как создать контейнер через веб-интерфейс или CLI, управлять его ресурсами, сетью и хранилищем, а также создавать резервные копии и выполнять миграцию.

Бесплатная загрузка
для ВМ, ОС, БД, файлов, NAS и др.
mavis-yang

Обновлено Mavis Yang в 2026/11/11

Содержание
  • Что такое LXC-контейнер?

  • Что такое Proxmox Virtual Environment?

  • Зачем запускать LXC-контейнеры в Proxmox?

  • Способ 1. Создание LXC-контейнера в Proxmox

  • Способ 2. Управление LXC-контейнерами в Proxmox

  • Резервное копирование Proxmox с помощью Vinchin Backup & Recovery

  • Часто задаваемые вопросы о LXC-контейнерах в Proxmox

  • Заключение

Виртуализация стала важной частью современной ИТ-инфраструктуры. Если нужны легковесные Linux-среды без накладных расходов на эмуляцию оборудования, LXC-контейнеры в Proxmox могут стать эффективным вариантом. Разберемся, что такое LXC и как создавать и администрировать контейнеры в Proxmox VE.

Что такое LXC-контейнер?

LXC-контейнер — это системный Linux-контейнер, в котором может работать целый дистрибутив Linux, использующий ядро хоста. В отличие от виртуальной машины, контейнер не эмулирует отдельное оборудование и не запускает собственное ядро: изоляция процессов обеспечивается механизмами namespaces и cgroups. Поэтому контейнеры обычно требуют меньше ресурсов, однако внутри них можно запускать только Linux-системы, совместимые с ядром хоста.

Что такое Proxmox Virtual Environment?

Proxmox Virtual Environment (Proxmox VE) — платформа виртуализации с открытым исходным кодом для управления виртуальными машинами и контейнерами через веб-интерфейс или командную строку. Для виртуальных машин используется KVM, а для контейнеров — LXC. В Proxmox VE также доступны кластеризация, высокая доступность, различные варианты хранения, встроенный межсетевой экран и централизованное управление резервным копированием.

Зачем запускать LXC-контейнеры в Proxmox?

LXC-контейнеры в Proxmox имеют несколько преимуществ по сравнению с виртуальными машинами:

  • Низкие накладные расходы. Контейнеры используют ядро хоста и не требуют эмуляции отдельного оборудования.

  • Быстрый запуск. На одном узле можно быстро запускать несколько контейнеров.

  • Изоляция приложений. Контейнеры подходят для микросервисов и запуска нескольких изолированных Linux-приложений.

  • Интеграция с Proxmox VE. Контейнеры могут использовать сетевые мосты, например vmbr0, хранилища, межсетевой экран и резервное копирование. Снимки и миграция зависят от конфигурации хранилища, кластера и версии Proxmox VE.

При этом контейнеры совместно используют ядро хоста. Поэтому граница изоляции у них отличается от виртуальных машин, а компрометация ядра может затронуть другие контейнеры и сам узел. Для недоверенных рабочих нагрузок или повышенных требований к изоляции рассмотрите виртуальную машину.

Способ 1. Создание LXC-контейнера в Proxmox

Создать контейнер в Proxmox VE можно через веб-интерфейс или командную строку. Перед началом проверьте, что узел имеет доступ в интернет либо нужный шаблон уже загружен в локальное хранилище.

Шаг 1. Загрузите шаблон контейнера

Шаблоны содержат готовые корневые файловые системы популярных дистрибутивов, например Debian или Ubuntu. В веб-интерфейсе:

  • Выберите узел.

  • Откройте local (имя узла) > CT Templates.

  • Нажмите Templates, чтобы просмотреть доступные образы.

  • Выберите дистрибутив и нажмите Download.

После успешной загрузки шаблон появится в локальном хранилище.

То же действие можно выполнить в командной строке. Сначала узнайте актуальное имя шаблона командой pveam available, затем загрузите его, подставив имя из списка:

pveam download local debian-12-standard_12.0-1_amd64.tar.gz

Если шаблон загружается вручную, по возможности проверьте его контрольную сумму SHA-256.

Шаг 2. Создайте контейнер

В правом верхнем углу веб-интерфейса нажмите Create CT, чтобы открыть мастер создания:

  • На вкладке General укажите уникальный CT ID, например 101, имя узла, например webserver, и надежный пароль root.

  • На вкладке Template выберите загруженный шаблон.

  • На вкладке Disks задайте размер диска с учетом рабочей нагрузки и требований выбранного дистрибутива.

  • На вкладке CPU укажите число ядер процессора.

  • На вкладке Memory задайте объем оперативной памяти и при необходимости swap.

  • На вкладке Network настройте интерфейс и мост, например vmbr0. При необходимости задайте статический IP-адрес; иначе можно использовать DHCP.

  • Оставьте поля DNS пустыми, если не требуется указать собственные DNS-серверы.

Проверьте параметры на вкладке подтверждения. Отметьте Start after created, если контейнер нужно запустить сразу, затем нажмите Finish.

Шаг 3. Подключитесь к контейнеру

Выберите созданный контейнер в панели слева и откройте Console. Войдите под root, используя пароль, заданный при создании.

Пример создания контейнера через CLI:

pct create 101 local:vztmpl/debian-12-standard_12.0-1_amd64.tar.gz --hostname webserver --rootfs local-lvm:8 --cores 2 --memory 2048 --net0 name=eth0,bridge=vmbr0,ip=dhcp

Замените CT ID и имя шаблона на актуальные для вашей системы. Проверьте имя хранилища и поддерживаемые параметры командой pct create --help. Задайте пароль root отдельно при создании или через мастер; не помещайте пароль в общедоступный скрипт или историю команд.

Способ 2. Управление LXC-контейнерами в Proxmox

После создания контейнером можно управлять через веб-интерфейс или CLI: запускать и останавливать его, менять ресурсы, настраивать сеть и хранилище, создавать резервные копии и переносить между узлами.

Шаг 1. Запуск и остановка контейнера

В графическом интерфейсе выберите контейнер и нажмите Start, Shutdown или Stop. Команды CLI:

pct start CTID
pct shutdown CTID
pct stop CTID

shutdown запрашивает штатное выключение гостевой системы, а stop немедленно останавливает контейнер. По возможности используйте штатное завершение работы.

Шаг 2. Изменение выделенных ресурсов

Потребность в ресурсах может меняться. Некоторые параметры можно изменить без остановки контейнера, для применения других может потребоваться перезапуск. В GUI откройте контейнер и перейдите в раздел Resources. Например, установить лимит памяти 2048 МБ через CLI можно так:

pct set CTID --memory 2048

Доступные параметры и их ограничения зависят от версии и состояния контейнера. Проверьте конфигурацию после изменения; не добавляйте неподдерживаемые параметры, например ballooning, без проверки документации установленной версии.

Шаг 3. Настройка сети

В веб-интерфейсе выберите контейнер, откройте вкладку Network и измените параметры интерфейса: мост, MAC-адрес или IP-конфигурацию.

Пример изменения сетевого интерфейса из CLI:

pct set CTID --net0 name=eth0,bridge=vmbr0,ip=192.168.10.50/24,gw=192.168.10.1

Убедитесь, что адрес и шлюз соответствуют вашей сети и не конфликтуют с другими устройствами. Для серверных контейнеров статический адрес часто удобнее, но он не является обязательным во всех средах.

Шаг 4. Управление точками монтирования и хранилищем

К контейнеру можно подключить дополнительный том или каталог узла. В GUI откройте раздел Resources > Add > Mount Point и укажите хранилище, исходный путь и точку монтирования внутри контейнера.

Пример bind mount через CLI (каталог узла должен существовать заранее):

pct set CTID --mp0 /mnt/shareddata,mp=/shared

Bind mount предоставляет контейнеру доступ к каталогу узла. Тщательно проверяйте права, владельцев и содержимое: такая точка монтирования может раскрыть или изменить данные хоста. Не используйте ее для важных данных без понимания последствий для резервного копирования и миграции.

Шаг 5. Создание снимков и резервных копий

Снимки позволяют вернуться к предыдущему состоянию после изменений, если это поддерживается конфигурацией хранилища. Резервная копия сохраняет данные для восстановления после отказа; храните ее отдельно от исходного узла.

В GUI используйте разделы Snapshots и Backup. Пример создания резервной копии через CLI:

vzdump CTID --mode snapshot --storage backup-storage-name

Режим snapshot может уменьшить простой, но результат зависит от типа хранилища и конфигурации контейнера. Проверьте успешность задания и периодически тестируйте восстановление.

Шаг 6. Миграция контейнеров

В кластере контейнер можно перенести на другой узел. Доступность онлайн-миграции зависит от типа контейнера, совместимости узлов и хранилища; при обычной миграции контейнер может потребоваться остановить. В GUI щелкните правой кнопкой мыши контейнер, выберите Migrate и следуйте мастеру.

Пример команды:

pct migrate CTID target-node-name

Перед переносом проверьте доступность дисков контейнера на целевом узле, сетевые мосты и ограничения используемого хранилища. Сверьтесь с подсказкой pct migrate --help для вашей версии Proxmox VE.

Резервное копирование Proxmox с помощью Vinchin Backup & Recovery

Для дополнительной защиты среды Proxmox VE можно использовать Vinchin Backup & Recovery. Решение поддерживает резервное копирование виртуальных машин Proxmox и интеграцию с рядом других платформ виртуализации. Для Proxmox заявлены постоянное инкрементное копирование, дедупликация, гранулярное восстановление, миграция V2V и шифрование данных. Доступность отдельных функций зависит от версии, редакции и конфигурации. Эти сведения относятся к резервному копированию виртуальных машин; перед включением резервного копирования LXC-контейнеров проверьте поддержку конкретной версии Proxmox и Vinchin.

Веб-консоль Vinchin позволяет создавать задания резервного копирования. Общая последовательность настройки показана ниже; подписи и изображения исходника описывают резервное копирование виртуальной машины Proxmox, а не пошаговую настройку резервной копии LXC-контейнера.

Шаг 1. Выберите виртуальную машину Proxmox для резервного копирования

Выбор виртуальной машины Proxmox для резервного копирования в Vinchin

Шаг 2. Выберите место хранения резервных копий

Выбор хранилища резервных копий в Vinchin

Шаг 3. Настройте стратегию резервного копирования

Настройка стратегии задания резервного копирования Proxmox в Vinchin

Шаг 4. Отправьте задание на выполнение

Подтверждение задания резервного копирования Proxmox в Vinchin

Организации используют Vinchin Backup & Recovery для защиты данных. Возможности продукта можно оценить в течение 60-дневного пробного периода.

Часто задаваемые вопросы о LXC-контейнерах в Proxmox

1. Можно ли запускать Windows в LXC-контейнере Proxmox?

Нет. LXC-контейнеры используют ядро Linux хоста, поэтому запускать в них Windows как в виртуальной машине нельзя.

2. Как увеличить размер диска существующего LXC-контейнера?

В графическом интерфейсе выберите контейнер, откройте Resources, выберите диск и нажмите Resize. Из CLI можно увеличить rootfs, например, на 10 ГБ:

pct resize CTID rootfs +10G

Перед изменением проверьте свободное место в хранилище и учтите, что доступная файловая система внутри контейнера может потребовать отдельной проверки или расширения.

3. Что делать, если контейнер не запускается после изменения конфигурации?

Проверьте журнал задания в панели Tasks и журналы Proxmox. Для дополнительной диагностики можно запустить остановленный контейнер с выводом отладки:

pct start CTID --debug

Замените CTID фактическим числовым идентификатором контейнера и не публикуйте журналы, содержащие конфиденциальные данные.

Заключение

LXC-контейнеры позволяют запускать Linux-нагрузки в Proxmox VE с небольшими накладными расходами и управлять ими через GUI или CLI. Выбирайте параметры контейнера с учетом рабочей нагрузки, осторожно подключайте каталоги хоста и регулярно проверяйте резервные копии. Если для контейнера требуется более сильная изоляция или отдельное ядро, рассмотрите виртуальную машину.

Поделиться:

Категории: Виртуальная машина