Proxmox VE (Virtual Environment) - руководство к действию.

Автор Bitkovski, 14 ноября 2019, 12:25:06

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Bitkovski

Proxmox VE (Virtual Environment) — система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux.
В качестве гипервизоров использует KVM (Kernel-based Virtual Machine) и LXC (Linux Containers).
Управление виртуальными машинами и администрирование самого сервера производятся через веб-интерфейс, либо через стандартный интерфейс командной строки Linux.



Установка Proxmox производится одним из двух вариантов:

В моём случае это установка Proxmox на Debian, ибо он же является и NFS/Samba/PXEboot/iVentoy(тестовый)-сервером.


Список репозиториев получаем от коллег из поднебесной, а точнее из их генератора репозиториев: https://debgen.simplylinux.ch
Правда и там не без накладок:
Последняя версия Stable  указывается как Buster, а в Debian 12 Bookworm появилась дополнительная ветка репозиториев non-free-firmware.
Получается вот такой sources.list:
#------------------------------------------------------------------------------#
#                  OFFICIAL DEBIAN REPOS
#
#------------------------------------------------------------------------------#
# Debian Main Repos
deb http://ftp.ru.debian.org/debian/ stable main contrib non-free non-free-firmware

deb-src http://ftp.ru.debian.org/debian/ stable main contrib non-free non-free-firmware

deb http://ftp.ru.debian.org/debian/ stable-updates main contrib non-free non-free-firmware

deb-src http://ftp.ru.debian.org/debian/ stable-updates main contrib non-free non-free-firmware

deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware

deb-src http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware

deb http://ftp.debian.org/debian bookworm-backports main non-free-firmware

deb-src http://ftp.debian.org/debian bookworm-backports main non-free-firmware
Таки не думайте, шо ви самый умный. Здесь все Евреи!!!

Bitkovski

#1
!!!Внимание!!!
Мой сервер, по мимо гипервизоза, так же является NFS-сервером, в том числе для хранения и развёртывания образов готовых операционных систем снятых с виртуалок при помощи Clonezilla, так же является Samba-сервером для ос Windows, так же PXEboot-сервером. Так-же в тестовом варианте является и мультизагрузочным PXE-сервером iVentoy. Штука конечно прикольная, красивая, но сырющая до ужаса. Но если доведут до ума, то цены ей не будет и просто PXE-сервер наверно будет забыт, ибо ручками то всё писать будет лень.

1. Установка Debian.

Установка производится на домашний сервер со следующей конфигурацией:
Открыть содержимое (спойлер)
Процессор - AMD Ryzen 3 PRO 4350G. Планируется замена на Ryzen 7 5700G, 8 ядер, 16 потоков (со встроенной графикой).
Видеокарта Nvidia Grid K2, купленная на Авито взамен Asus GTX1070 Turbo, с 2 ядрами и 8 гигабайтами памяти, по 4Гб на ядро. Т.е. в варианте "без спецсервера под ISXi" будем иметь 2 виртуальные машины с полноценной графикой на 4Гб. Собственно на ней и играть можно, не говоря о работе в CAD программах. (Можно. По крайней мере дома, ибо до сервера расстояние 10м., а сеть гигабитная.)
ОЗУ 32Гб: 12Гб на мою виртуалку, 8Гб не на мою виртуалку, 2Гб сейчас ест система и 10Гб свободны. Но пару модулей по 8Гб я хочу заменить на пару по 16Гб и отдать их именно на эти 2 виртуалки. Для остального оставшихся целей 16 Гб хватит, но может и сразу 4 по 16 поставлю. Видно будет.
Система стоит на SSD M2 ёмкостью 128Гб.
2 HDD по 1Тб в RAID1 под виртуалками и установленными, малочисленными, играми, зелёная баракуда + синий WD. 2 Seagate Ironwolf в RAID1 под файлопомойкой.
Родная сетевая плата материнской платы используется для управления гипервизором и передачи файлов с/на файловика/к.
Дополнительная сетевая карта с 4 гигабитными портами, по 1 порту на 2 виртуалки, 1 порт на остальные виртуальные машины, с которых будут сниматься образы для развёртывания с помощью CloneZilla, 1 порт резервный.

[свернуть]

Установка Debian на сервер.
Открыть содержимое (спойлер)
Устанавливать проще всего с нетинсталятора, что бы были установлены последние пакеты.
Под систему идёт SSD на 120 Гб, 20 из которых на раздел подкачки. Ну а чё нет то? Места валом, можно себе позволить.
Sata-диски сразу соединяю попарно в RAID1: Seagate Baracuda+WD, под хранилище виртуальных машин и установленные на виндовой виртуалке игры, и 2 диска Seagate IronWolf, под файлопомойку, образы развёртывания Clonezilla, ну и прочее.
Выбираю установку без графики, т.е. ssh-сервер, web-сервер, балуюсь Webmin, и стандартные системные утилиты.
При нахождении за прокси, допустим как на работе, указываю его при запросе: http://хх.хх.ххх.хх:3128/
После окончания установки перезагружаемся и заходим в систему.
Для начала дадим себе доступ по SSH:
nano /etc/ssh/sshd_configРаскомментируем "Permitrootlogin" и вместо "prohibit-password" выставим "yes". Сохраняем изменения: Ctrl+X->Y-> Enter.
Перезапускаем сервис SSH командой
service sshd restartВсё. Установку произвели и доступ по SSH для себя дали. Закрываем серверный шкаф, закрываем серверную и идём в кабинет. И подключаемся к нашему серверу через, кому как, Putty.
[свернуть]
1.1 Работа Debian через прокси-сервер:
Для работы APT:
Открыть содержимое (спойлер)
nano /etc/apt/apt.confК уже имеющейся строке
Acquire::http::proxy "http://хх.хх.ххх.хх:3128/";Дописываем
Acquire::https::proxy "http://хх.хх.ххх.хх:3128/";
Acquire::ftp::proxy "http://хх.хх.ххх.хх:3128/";
Сохраняем изменения: Ctrl+X->Y-> Enter.
[свернуть]
Для работы WGET:
Открыть содержимое (спойлер)
nano /etc/wgetrcи правим:
http_proxy=http://хх.хх.ххх.хх:3128/
https_proxy=http://хх.хх.ххх.хх:3128/
ftp_proxy=http://хх.хх.ххх.хх:3128/
use_proxy=on
Сохраняем изменения: Ctrl+X->Y-> Enter.
[свернуть]
Для работы Curl:
Открыть содержимое (спойлер)
Потребуется указывать прокси-сервер при вводе команды в терминале. Например при добавлении ключа репозитория PostgreSQL:
curl --proxy хх.хх.ххх.хх:3128  https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add ACCC4CF8.asc
[свернуть]
Для работы APT-KEY
Открыть содержимое (спойлер)
(в теории должно работать, но как не химичил, так и не заработало)
apt-key adv --keyserver-options http-proxy=http://хх.хх.хх.хх:3128/ --keyserver keyserver.ubuntu.com --recv-keys F24AEA9FB05498B7Если кто знает, как заставить сие работать, просьба подсказать.
[свернуть]
1.2 Донастройка Debian.
Открыть содержимое (спойлер)
Идём на сайт генератора репозиториев коллег из поднебесной https://debgen.simplylinux.ch/. Выбираем стабильный релиз и нужные репозитории. Кроме того я ставлю зеркало Russia и ставлю только стандартные репозитории.
Редактируем sources.list
nano /etc/apt/sources.listЗаменяем всё что имеется в файле на то, что выдал генератор, с учётом изменений в репозиториях, описанных ранее, и даём команду
apt updateОбновление списка пройдёт с ошибками, что не удивительно. В верхней части страницы написано:
Attention!
Before you start install these packages first:
apt install curl wget apt-transport-https dirmngr
Вводим данную команду на установку пакетов.
apt install curl wget apt-transport-https dirmngr
Webmin:
Процедура установки изменилась и описана на сайте Webmin.
curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
sh setup-repos.sh
apt updateapt install webminи запускаем сервис Webmin
service webmin start
Возможностей много, вплоть до настройки рейдов, Samba/NFS/PXE-серверов и т.д.
Пользоваться или нет сервисом Webmin дело исключительно личное. Кто не хочет, тот не пользуется. Просто я при редактировании конфигурационных файлов люблю для себя делать пометки на русском языке.

!!!Внимание!!!
Для того, что бы монтировать сетевые ресурсы, требуется установить пакеты cifs-utils и nfs-common
apt install cifs-utils nfs-common

На этом установка и настройка системы закончена. Можно переходить к установке самого Proxmox.

[свернуть]
Таки не думайте, шо ви самый умный. Здесь все Евреи!!!

Bitkovski

#2
2. Установка Proxmox VE.
Открыть содержимое (спойлер)
Собственно обновлённая процедура установки описана на сайте Proxmox

Перед установкой проверяем файл hosts на наличие ненужных пунктов, что бы избежать ошибок при установке Proxmox:
cat /etc/hostsДолжно быть
127.0.0.1                      localhost
IP-адрес сервера        Домен                Имя сервера

Добавляем репозиторий Proxmox VE:
echo "deb [arch= amd64] http://download.proxmox.com/debian/pve pve-no-subscription книжного червя" > /etc/apt/sources.list.d/pve-install-repo.listДобавляем ключ репозитория Proxmox VE от имени root (или используя sudo):
wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O
/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpgОбновляем систему:
apt update && apt full-upgradeУстанавливаем ядро Proxmox-VE:
apt install pve-kernel-6.2Перезагружаем сервер. Он автоматически запустится с ядром pve-kernel.

После того, как всё проверили даём команду на установку
apt install proxmox-ve postfix open-iscsi chronyУдаляем ядро Debian, дабы оно в будущем не вызывало конфликтов при обновлении системы:
apt remove linux-image-amd64 'linux-image-6.1*'Выполняем переконфигурирование загрузчика и перезагрузим сервер:
update-grubreboot
[свернуть]
2.1 Настройка Proxmox
Открыть содержимое (спойлер)
Идём в браузер (Коли ПК используется исключительно в качестве толстого клиента, т.е. на нём стоит полноценный Debian Mate, то браузер конечно же Firefox) и набираем IP-адрес нашего сервера https://IP:8006

При входе увидим:
Screenshot_1.png
Кому надо подписку, тот сделает подписку. Мне не надо, поэтому забиваю.

Удалим лишнее.
rm /etc/apt/sources.list.d/pve-install-repo.listи что то там в последней строке из sources.list, что бы apt update не ругался.
В общем репозиторий Proxmox в sources.list представлен только строкой
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
При работе Proxmox через прокси-сервер идём в "Датацентр", Параметры, и вводим в строке "Прокси HTTP" наш прокси сервер http://xx.xx.xxx.xx:3128/

[свернуть]
2.2 Настройка хранилища.
Открыть содержимое (спойлер)
Одна дара дисков в виде RAID1 примонтирована в /mnt/KVM. Там же создан раздел Games, который самбой монтируется на виртуалку для поиграть.
Идём в ЦОД - Хранилище - Добавить - Каталог и добавляем:
Screenshot_2.png
Дефолтное хранилище я отключил.
[свернуть]

2.3 Настройка сети.
Открыть содержимое (спойлер)
Встроенный сетевой интерфейс, как было написано ранее, используется для управления гипервизором и приема/передачи файлов от и на файловик:
Screenshot_3.png
Жмём создать - Linux Bridge - прописываем IP/mask и интерфейс, примерно так:
Screenshot_4.png
Ещё раз повторюсь, что интерфейс управления, в моём случае enp15s0 с IP 192.168.88.3/24, используется только для управления и файловика. Ни на какие другие цели.
[свернуть]

На этом базовая настройка завершена и можно приступать к работе.

Таки не думайте, шо ви самый умный. Здесь все Евреи!!!