Hetzner - DokuWiki

Proxmox VE/ru

Inhaltsverzeichnis

Proxmox VE

Startpage-with-cluster.png

Proxmox VE это платформа виртуализации с открытым исходным кодом, поддерживающая OpenVZ (до версии 3.4), KVM и, начиная с версии 4.0, LXC (Linux Containers). Более того, с версии 4.0 Proxmox имеет полную поддержку IPv6. Более полная информация о новых возможностях доступна в Official Roadmap, опубликованном на Proxmox VE Wiki.

Установка в целом считается несложной, так как OpenVZ корректно настраивает большинство вещей. Тем не менее, после установки нужно произвести настройку некоторых вещей.

Предупреждение: Начиная с версии 4.0, поддержка OpenVZ была исключена и полностью заменена на LXC. Пожалуйста, обратите внимание на это перед обновлением! Дополнительные сведения о конвертации контейнеров OpenVZ в LXC смотрите в Proxmox Wiki: Преобразование OpenVZ в LXC

Перед установкой

Перед началом установки среды виртуализации следует ответить на несколько вопросов:

  • Будут ли использоваться виртуальные машины только с Linux? Если да, то, при определённых обстоятельствах, будет достаточно OpenVZ.
  • Что использовать OpenVZ/LXC или KVM? У обеих систем виртуализации есть как преимущества, так и недостатки. Взвешенное решение может избавить от проблем в будущем.
    • OpenVZ/LXC имеет несколько большую производительность. Но поддерживает только UNIX-гостей. Миграция, например, на KVM/ESXi сложна.
    • KVM несколько менее производителен по сравнению с OpenVZ/LXC. Он предоставляет полную виртуализацию и поддерживает работу большинства распространённых операционных систем (в том числе Windows). Конвертация виртуальных дисков в другие форматы (например, VMDK) проста.

Установка

1. Базовая операционная система

  • запустите installimage и установите требуемый дистрибутив Debian;
    • для стабильной работы рекомендуется выбирать версию базовой операционной системы соответствующую версии ОС на официальном установочном носителе:
      • начиная с Proxmox 4.0: Debian 8 (Jessie)
      • начиная с Proxmox 5.0: Debian 9 (Stretch)
  • сконфигурируйте как вам необходимо уровень RAID, разбиение диска и имя сервера;
  • сохраните конфигурацию и, после завершения установки, перезагрузите сервер.

2. Настройте источники установки для Proxmox (/etc/apt/sources.list)

echo "deb http://download.proxmox.com/debian stretch pve-no-subscription" >> /etc/apt/sources.list

Добавьте ключ:

wget -q http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg

Обновите установленные пакеты:

apt-get update # получение нового списка пакетов
apt-get upgrade # обновление версий установленных пакетов
apt-get dist-upgrade # обновление Debian до нового выпуска


3. Установите Proxmox VE

Поскольку Proxmox идет со своей собственной прошивкой, сначала необходимо удалить текущие пакеты прошивки:

aptitude -q -y purge firmware-bnx2x firmware-realtek firmware-linux firmware-linux-free firmware-linux-nonfree

После этого устанвливаем Proxmox

apt-get install proxmox-ve

После перезагрузки необходимо загрузить ядро Proxmox:

# uname -rv
4.13.13-1-pve #1 SMP PVE 4.13.13-31 (Mon, 11 Dec 2017 10:00:13 +0100)

4. Загрузка модуля ядра

Проверьте, загружен ли модуль «kvm»:

lsmod | grep kvm

Если модуль не загружен, то его можно загрузить вручную.

Для процессоров Intel:

modprobe kvm
modprobe kvm_intel

Для процессоров AMD:

modprobe kvm
modprobe kvm_amd

Обратите внимание: модуль ядра требуется для «KVM hardware virtualization». Без него не смогут запускаться виртуальные машины, основанные на KVM.

Настройка сети

Перед началом настройки сети следует принять решение о том, какой тип виртуализации (LXC/KVM) и какой тип подключения будет использоваться (маршрутизация/мост).

  • LXC
    • Преимущества: Легкий. Быстрый. Более низкие требования к оперативной памяти.
    • Недостатки: Используется ядро хост-системы. Могут быть установлены только дистрибутивы Linux.
  • KVM
    • Преимущества: Можно установить большинство операционных систем. Не требуется модификация виртуальной машины.
  • Маршрутизация
    • Преимущества: Можно использовать несколько IP-адресов на одной виртуальной машине. IPv6 может использоваться на всех виртуальных машинах.
    • Недостатки: Настройки сети не могут быть получены по DHCP. Требуется настройка соединения точка-точка (point-to-point) для IP-адресов из отличающихся сетей.
  • Сетевой мост
    • Преимущества: Такие же как и в KVM/маршрутизация. Более простая настройка узлов.
    • Недостатки: Требуется получить отдельный MAC-адрес через панель Robot. Получить отдельный MAC-адрес можно только для одиночного IP-адреса. Нельзя использовать несколько IP-адресов на одной виртуальной машине.

При маршрутизируемом типе подключения vmbr0 не должен быть подключен к физическому интерфейсу. Должна быть включена пересылка пакетов между интерфейсами (IP forwarding) на хост-системе. Для того чтобы пересылка включалась автоматически, при перезагрузке следует внести соответствующие изменения в файле /etc/sysctl.conf. (Обратите внимание, что перенаправление по умолчанию отключено. Этот параметр можно найти либо в /etc/sysctl.conf, либо в /etc/sysctl.d/99-hetzner.conf)

sysctl -w net.ipv4.ip_forward=1

Перенаправление для IPv6 тоже потребуется активировать. Оно также доступно и при стандартной установке от Hetzner, его необходимо только включить.

sysctl -w net.ipv6.conf.all.forwarding=1

Администрирование

После успешной установки виртуальными машинами можно управлять через https://Server-IP:8006.

Настройка маршрутизации сети хост-системы

При использовании маршрутизации, необходимо вручную добавить маршруты до виртуальных машин. Кроме этого, существующие виртуальные MAC-адреса должны быть удалены из соответствующих IP-адресов. После добавления на хост-системе маршрутов, виртуальным машинам можно назначать IP-адреса из других подсетей, например:

# /etc/network/interfaces
### Hetzner Online GmbH - installimage
# Loopback device:
auto lo
iface lo inet loopback

# device: eth0
auto  eth0
iface eth0 inet static
  address   <основной IP>
  netmask   255.255.255.255
  pointopoint   <шлюз>
  gateway   <шлюз>

iface eth0 inet6 static
  address   <адрес из подсети IPv6> # например, 2001:db8::2
  netmask   128
  gateway   fe80::1
  up sysctl -p
#
# для одиночных IP-адресов
auto vmbr0
iface vmbr0 inet static
  address   <основной IP>
  netmask   255.255.255.255
  bridge_ports none
  bridge_stp off
  bridge_fd 0
  up ip route add <1й дополнительный IP>/32 dev vmbr0
  up ip route add <2й дополнительный IP>/32 dev vmbr0

iface vmbr0 inet6 static
  address   <адрес из подсети IPv6> # например, 2001:db8::2
  netmask   64
#
# для подсети
auto vmbr1
iface vmbr1 inet static
  address   <доступный IP из дополнительной подсети>
  netmask   <маска дополнительной подсети>
  bridge_ports none
  bridge_stp off
  bridge_fd 0

Чтобы использовать IPv6 с несколькими мостами (несколько подсетей IPv4 или одиночные IPV4-адреса и подсеть), для IPv6 необходимо использовать меньшую сетевую маску.

Настройка маршрутизации сети гостевой системы

IP-адрес моста на хост-системе всегда используется в качестве шлюза (и для одиночных IP-адресов и для IP-адресов из подсети).

# /etc/network/interfaces
### пример для одиночного IP-адреса из другой подсети
# Loopback device:
auto lo
iface lo inet loopback

# device: eth0
auto  eth0
iface eth0 inet static
  address   <дополнительный IP>
  netmask   255.255.255.255
  pointopoint   <основной IP>
  gateway   <основной IP>

iface eth0 inet6 static
  address   <адрес из подсети IPv6> # например, 2001:db8::f001
  netmask   64
  gateway   <IPv6 адрес vmbr0> # например, 2001:db8::2
#
# /etc/network/interfaces
### пример для подсети
# Loopback device:
auto lo
iface lo inet loopback

# device: eth0
auto  eth0
iface eth0 inet static
  address   <доступный IP из подсети>
  netmask   255.255.255.0
  gateway   <IP из дополнительной подсети назначенный на vmbr1>

iface eth0 inet6 static
  address   <адрес из подсети IPv6> # например, 2001:db8::f001
  netmask   64
  gateway   <IPv6 адрес vmbr0> # например, 2001:db8::2

Настройка сетевого моста

При мостовом типе подключения в KVM необходимо использовать отдельные MAC-адреса для одиночных дополнительных IP-адресов. Настройка подсетей аналогична.

# /etc/network/interfaces
### Hetzner Online GmbH - installimage
# Loopback device:
auto lo
iface lo inet loopback

auto vmbr0
iface vmbr0 inet static
       address   <основной IP>
       netmask   255.255.255.255
       pointopoint   <шлюз>
       gateway   <шлюз>
       bridge_ports eth0
       bridge_stp off
       bridge_fd 1
       bridge_hello 2
       bridge_maxage 12
#
# для подсети
auto vmbr1
iface vmbr1 inet static
       address   <доступный IP из дополнительной подсети>
       netmask   <маска дополнительной подсети>
       bridge_ports none
       bridge_stp off
       bridge_fd 0

Настройка сетевого моста в гостевой системе

В качестве шлюза для одиночных IP-адресов используется шлюз хост-системы или дополнительного IP-адреса. Настройка подсетей такая же, как и при маршрутизируемом типе подключения.

# /etc/network/interfaces
# Loopback device:
auto lo
iface lo inet loopback

# device: eth0
auto  eth0
iface eth0 inet static
       address   <дополнительный IP>
       netmask   <маска дополнительного IP>
       pointopoint   <шлюз дополнительного IP>
       gateway   <шлюз дополнительного IP>

Безопасность

Веб-интерфейс защищён двумя различными методами аутентификации: «Proxmox VE standard authentication» и «Linux PAM standard authentication».

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

Вот некоторые из них:

Прочее

Важные ссылки



© 2018. Hetzner Online GmbH. Alle Rechte vorbehalten.