AltEduPve: различия между версиями
Vovan (обсуждение | вклад) (→Установка PVE) |
Vovan (обсуждение | вклад) (→Установка PVE) |
||
Строка 51: | Строка 51: | ||
su - | su - | ||
− | Заводим переменные, в которых будем | + | Заводим переменные, в которых будем хранить наше имя хоста и сетевые параметры: |
− | MACHINE_NAME='altedu-pve- | + | MACHINE_NAME='altedu-pve-template' |
− | MACHINE_IP='172.16. | + | MACHINE_IP='172.16.87.87' |
+ | MACHINE_MASK='16' | ||
+ | MACHINE_GATEWAY='172.16.1.1' | ||
+ | MACHINE_DNS='172.16.1.1' | ||
+ | MACHINE_ETH_DEVICE='eth0' | ||
Переименовываем машину и настраиваем определённым образом хост-файл: | Переименовываем машину и настраиваем определённым образом хост-файл: | ||
Строка 63: | Строка 67: | ||
echo "127.0.0.1 localhost" > /etc/hosts | echo "127.0.0.1 localhost" > /etc/hosts | ||
echo "$IP $HOST.nntc.nnov.ru $HOST" >> /etc/hosts | echo "$IP $HOST.nntc.nnov.ru $HOST" >> /etc/hosts | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Обновляем систему | Обновляем систему | ||
apt-get update -qq | apt-get update -qq | ||
− | apt-get dist-upgrade | + | apt-get -y dist-upgrade |
Устанавливаем необходимые пакеты и включаем необходимые сервисы | Устанавливаем необходимые пакеты и включаем необходимые сервисы | ||
Строка 80: | Строка 77: | ||
apt-get install -qq -y pve-manager kernel-modules-zfs-std-def | apt-get install -qq -y pve-manager kernel-modules-zfs-std-def | ||
− | systemctl start rrdcached ksmtuned crond lxcfs openvswitch nfs-client.target | + | systemctl start rrdcached ksmtuned crond lxcfs openvswitch nfs-client.target lxc lxc-net lxc-monitord pvedaemon pve-firewall pvestatd pve-ha-lrm pve-ha-crm spiceproxy pveproxy pve-cluster |
− | |||
− | + | systemctl enable rrdcached ksmtuned crond lxcfs openvswitch nfs-client.target corosync lxc lxc-net lxc-monitord pve-cluster pvedaemon pve-firewall pvestatd pve-ha-lrm pve-ha-crm spiceproxy pveproxy pve-guests pve-cluster | |
− | systemctl enable | ||
− | |||
− | |||
− | |||
Перенастраиваем сеть в режим "мост": | Перенастраиваем сеть в режим "мост": | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
rm -rf /etc/net/ifaces/* | rm -rf /etc/net/ifaces/* |
Версия 13:29, 2 июня 2021
Содержание
Зачем и почему
Этот раздел не технический. Если цели и задачи понятны, то его можно пропустить :)
Что это?
Это статья, описывающая процесс развёртывания Proxmox Virtual Environment (PVE) в дистрибутиве Alt Education (Альт Образование)
Для чего?
При современных возможностях вычислительной техники при обучении IT-специальностям (и не только им) полезно бывает использовать виртуальные окружения для проведения лабораторных работ.
PVE является отличной альтернативой средам настольной виртуализации и превосходит по возможностям, важным с точки зрения получения обучающимися практических навыков работы с различным спектром программного обеспечения, начиная от базовых основ операционных систем, заканчивая высокоуровневыми языками программирования и платформами разработки программного обеспечения.
Среди ключевых важных и полезных возможностей PVE при использовании с образовательных целях следует отметить следующие:
- Веб-интерфейс управления (обучающемуся не обязательно находиться физически на компьютере, чтобы иметь полный доступ к виртуальной машине)
- Разграничение прав доступа (ресурсы одной аппаратной машины посредством механизма пользователей и ролей можно распределить между несколькими обучающимися)
- Шаблонизация и связанные копии (на базе шаблонов виртуальных машин можно быстро (очень быстро, секунды) создавать клонов, диски которых будут представлять из себя связанные копии относительно диска шаблона) -- это позволяет экономить дисковые и временнЫе ресурсы (проверено при работе с хранилищами на ZFS)
- Удобный интерфейс взаимодействия с внешними хранилищами (всё настраивается из Веб-интерфейса). При использовании нескольких физических машин с PVE посредством подключения хранилищ можно легко организовать обмен резервными копиями и шаблонами
- Возможность предоставления доступа к виртуальным машинам извне (вынеся порт Веб-интерфейса за пределы шлюза веб интерфейс со всем функционалом доступа к виртуальным машинам будет доступен извне) -- может быть актуально при полностью или частично дистанционном подходе к практическому обучению
- Возможность кластеризации решения. Кластеризация даёт удобный механизм управления группой физических машин из одного Веб-интерфейса (из любого из Веб-интерфейсов на любой машине-узле кластера). Помимо единого "командного пункта" кластеризация даёт возможность миграции виртуальных машин между физическими узлами (без необходимости ввода команд в консоли (мышкой из веб интерфейса), без остановки машин - всё автоматизировано (опять же: без консоли, мышкой))
- Наверняка, что-то важное из плюсов данного решения, должного быть здесь, упущено...
Установка
Важная информация
Установка операционной системы
Установка PVE
Представим, что после установки ваша операционная система доступна в сети по адресу:
172.16.224.198
, в системе имеется единственный обычный пользователь
student
с паролем, который вам известен. Также вам известен пароль от суперпользователя (он же root).
Представили? Тогда продолжим с этими исходными данными.
Входим на сервер по ssh:
ssh student@172.16.224.198
Переключаемся в суперпользователя:
su -
Заводим переменные, в которых будем хранить наше имя хоста и сетевые параметры:
MACHINE_NAME='altedu-pve-template' MACHINE_IP='172.16.87.87' MACHINE_MASK='16' MACHINE_GATEWAY='172.16.1.1' MACHINE_DNS='172.16.1.1' MACHINE_ETH_DEVICE='eth0'
Переименовываем машину и настраиваем определённым образом хост-файл:
hostnamectl set-hostname $MACHINE_NAME IP=$MACHINE_IP HOST=$(hostname) echo "127.0.0.1 localhost" > /etc/hosts echo "$IP $HOST.nntc.nnov.ru $HOST" >> /etc/hosts
Обновляем систему
apt-get update -qq apt-get -y dist-upgrade
Устанавливаем необходимые пакеты и включаем необходимые сервисы
apt-get install -qq -y pve-manager kernel-modules-zfs-std-def
systemctl start rrdcached ksmtuned crond lxcfs openvswitch nfs-client.target lxc lxc-net lxc-monitord pvedaemon pve-firewall pvestatd pve-ha-lrm pve-ha-crm spiceproxy pveproxy pve-cluster
systemctl enable rrdcached ksmtuned crond lxcfs openvswitch nfs-client.target corosync lxc lxc-net lxc-monitord pve-cluster pvedaemon pve-firewall pvestatd pve-ha-lrm pve-ha-crm spiceproxy pveproxy pve-guests pve-cluster
Перенастраиваем сеть в режим "мост":
rm -rf /etc/net/ifaces/* mkdir /etc/net/ifaces/vmbr0 cat << EOF > /etc/net/ifaces/vmbr0/options TYPE=bri ONBOOT=yes DISABLED=no NM_CONTROLLED=no CONFIG_WIRELESS=no CONFIG_IPV4=yes CONFIG_IPV6=no BOOTPROTO=static HOST="$MACHINE_ETH_DEVICE" EOF echo "$MACHINE_IP/$MACHINE_MASK" > /etc/net/ifaces/vmbr0/ipv4address echo "default via $MACHINE_GATEWAY" > /etc/net/ifaces/vmbr0/ipv4route echo "nameserver $MACHINE_GATEWAY" > /etc/resolve.conf service network restart
Перезагружаемся (чтобы убедиться, что после полного рестарта все сервисы были запущены и система готова).
Веб-интерфейс системы должен находиться по адресу:
https://localhost:8006
Для доступа в систему по ssh от пользователя root рекомендуется использовать ключи доступа ssh. Если же по каким-либо причинам необходимо разрешить доступ под суперпользователем по паролю, то это можно включить следующими командами (выполнять их нужно из-под суперпользователя):
sed -i 's/#PermitRootLogin without-password/PermitRootLogin yes/g' /etc/openssh/sshd_config systemctl restart sshd