Lab155Alt: различия между версиями
Vovan (обсуждение | вклад) (Новая страница: «=Настройка после клонирования образа на базе AltEduPve= ==Задать переменную с именем диска==…») |
Avp (обсуждение | вклад) |
||
(не показано 5 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
− | = | + | =Порядок клонирования= |
− | + | Зайти на <tt>apve3<tt> по ssh и выполнить копирование через <tt>dd</tt> по сети образа: | |
− | Имя диска зависит от аппаратной конфигурации (определяется через fdisk -l) | + | apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd |
+ | |||
+ | В это время машина назначения должна быть загружена в <tt>Pmagick</tt>. Предположим, что накопитель, на который должен быть развёрнут образ, называется <code>/dev/sda</code>. Тогда, если машина назначения, например, имеет адрес 172.16.155.1, команда развёртывания на неё <tt>dd<tt>-образа (команду давать из <tt>apve3</tt>) будет такой: | ||
+ | |||
+ | dd if=/mnt/samba/fdisk3/alt-edu-pve-template-70g.dd bs=4M | ssh root@172.16.155.1 /bin/dd of=/dev/sda bs=4M | ||
+ | |||
+ | где <code>bs</code> задаёт размер блока (в данном случае, 4 мегабайта.) | ||
+ | |||
+ | Так нужно развернуть одну машину. Остальные -- широковещательным клонированием в пределах компьютерного класса через <tt>g4l</tt> | ||
+ | |||
+ | |||
+ | = Настройка после клонирования образа на базе AltEduPve = | ||
+ | |||
+ | == Задать переменную с именем диска == | ||
+ | |||
+ | Имя диска зависит от аппаратной конфигурации (определяется через <code>fdisk -l</code>) | ||
Обычно | Обычно | ||
− | DISK='/dev/ | + | DISK='/dev/sda' |
==Задать переменную с именем сетевого интерфейса для моста== | ==Задать переменную с именем сетевого интерфейса для моста== | ||
Строка 26: | Строка 41: | ||
==Выполнить скрипт из partedmagic== | ==Выполнить скрипт из partedmagic== | ||
+ | |||
+ | <!-- | ||
+ | Удаляем второй раздел (тот, что с LVM) с накопителя, и создаём вместо него новый, по размеру накопителя. Например, если у нас расклонированный накопитель <code>/dev/sda</code>, то значит, мы пересоздаём <code>/dev/sda2</code>: | ||
<pre> | <pre> | ||
Строка 40: | Строка 58: | ||
EOF | EOF | ||
</pre> | </pre> | ||
+ | --> | ||
+ | |||
+ | Как можно видеть, второй раздел накопителя (<code>sda2</code>) меньше, чем размер накопителя: | ||
+ | <pre> | ||
+ | $ fdisk -l | ||
+ | Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors | ||
+ | Disk model: Samsung SSD 860 | ||
+ | Units: sectors of 1 * 512 = 512 bytes | ||
+ | Sector size (logical/physical): 512 bytes / 512 bytes | ||
+ | I/O size (minimum/optimal): 512 bytes / 512 bytes | ||
+ | Disklabel type: dos | ||
+ | Disk identifier: 0x26b09aef | ||
− | + | Device Boot Start End Sectors Size Id Type | |
− | + | /dev/sda1 2048 2097151 2095104 1023M 83 Linux | |
+ | /dev/sda2 2097152 146800639 144703488 69G 8e Linux LVM | ||
+ | |||
+ | ... | ||
+ | </pre> | ||
+ | |||
+ | Растягиваем второй раздел до размера накопителя: | ||
+ | <pre> | ||
+ | $ parted /dev/sda | ||
+ | (parted) resizepart | ||
+ | Partition number? 2 | ||
+ | End? [75.2GB]? 464GB | ||
+ | (parted) p | ||
+ | Model: ATA Samsung SSD 860 (scsi) | ||
+ | Disk /dev/sda: 500GB | ||
+ | Sector size (logical/physical): 512B/512B | ||
+ | Partition Table: msdos | ||
+ | Disk Flags: | ||
− | + | Number Start End Size Type File system Flags | |
− | + | 1 1049kB 1074MB 1073MB primary ext4 | |
+ | 2 1074MB 464GB 463GB primary lvm | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | </pre> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | Меняем размер физического раздела LVM. В нашем случае раздел называется <code>/dev/sda2</code>: | ||
<pre> | <pre> | ||
+ | pvresize "/dev/sda2" | ||
+ | vgchange -ay | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | mkdir /mnt/d | ||
+ | mount /dev/alt-vg/root /mnt/d | ||
+ | |||
+ | IP=$MACHINE_IP | ||
+ | HOST=$MACHINE_NAME | ||
+ | echo "127.0.0.1 localhost" > /mnt/d/etc/hosts | ||
+ | echo "$IP $HOST.nntc.nnov.ru $HOST" >> /mnt/d/etc/hosts | ||
+ | echo "$HOST" > /mnt/d/etc/hostname | ||
+ | |||
+ | rm -rf /mnt/d/etc/net/ifaces/* | ||
+ | mkdir /mnt/d/etc/net/ifaces/vmbr0 | ||
+ | cat << EOF > /mnt/d/etc/net/ifaces/vmbr0/options | ||
+ | TYPE=bri | ||
+ | VLAN_AWARE=yes | ||
+ | VIDS=2-2048 | ||
+ | ONBOOT=yes | ||
+ | DISABLED=no | ||
+ | NM_CONTROLLED=no | ||
+ | CONFIG_WIRELESS=no | ||
+ | CONFIG_IPV4=yes | ||
+ | CONFIG_IPV6=no | ||
+ | BOOTPROTO=static | ||
+ | HOST="$MACHINE_ETH_DEVICE" | ||
+ | EOF | ||
+ | |||
cat << EOF > /mnt/d/etc/sysconfig/network | cat << EOF > /mnt/d/etc/sysconfig/network | ||
# When set to no, this may cause most daemons' initscripts skip starting. | # When set to no, this may cause most daemons' initscripts skip starting. | ||
Строка 85: | Строка 145: | ||
RESOLV_MODS=yes | RESOLV_MODS=yes | ||
EOF | EOF | ||
+ | |||
+ | echo "$MACHINE_IP/$MACHINE_MASK" > /mnt/d/etc/net/ifaces/vmbr0/ipv4address | ||
+ | echo "default via $MACHINE_GATEWAY" > /mnt/d/etc/net/ifaces/vmbr0/ipv4route | ||
+ | echo "nameserver $MACHINE_GATEWAY" > /mnt/d/etc/net/ifaces/vmbr0/resolve.conf | ||
+ | reboot | ||
</pre> | </pre> | ||
− | + | == Выполнить скрипт уже из pve, подключившись в рута по ssh == | |
− | |||
− | |||
− | |||
− | |||
− | ==Выполнить скрипт уже из pve, подключившись в рута по ssh== | ||
apt-get install -y firefox | apt-get install -y firefox | ||
Строка 110: | Строка 170: | ||
pvesm add cifs pveshare --server 172.16.254.123 --share mcluster1 --username mcluster1 --password --content iso,backup | pvesm add cifs pveshare --server 172.16.254.123 --share mcluster1 --username mcluster1 --password --content iso,backup | ||
+ | |||
+ | |||
+ | |||
+ | [[Категория:Клонирование]] | ||
+ | [[Категория:Альт]] | ||
+ | [[Категория:PVE]] |
Текущая версия на 15:11, 4 августа 2021
Порядок клонирования
Зайти на apve3 по ssh и выполнить копирование через dd по сети образа:
apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd
В это время машина назначения должна быть загружена в Pmagick. Предположим, что накопитель, на который должен быть развёрнут образ, называется /dev/sda
. Тогда, если машина назначения, например, имеет адрес 172.16.155.1, команда развёртывания на неё dd-образа (команду давать из apve3) будет такой:
dd if=/mnt/samba/fdisk3/alt-edu-pve-template-70g.dd bs=4M | ssh root@172.16.155.1 /bin/dd of=/dev/sda bs=4M
где bs
задаёт размер блока (в данном случае, 4 мегабайта.)
Так нужно развернуть одну машину. Остальные -- широковещательным клонированием в пределах компьютерного класса через g4l
Настройка после клонирования образа на базе AltEduPve
Задать переменную с именем диска
Имя диска зависит от аппаратной конфигурации (определяется через fdisk -l
)
Обычно
DISK='/dev/sda'
Задать переменную с именем сетевого интерфейса для моста
Зависит от аппаратной конфигурации (определяется через ip a)
Обычно
MACHINE_ETH_DEVICE='eth0'
Задать переменные для настройки сети согласно позиции машины в классе
MACHINE_NAME='alt-edu-pve-lab155-01' MACHINE_IP='172.16.155.1' MACHINE_MASK='16' MACHINE_GATEWAY='172.16.1.1' MACHINE_DNS='172.16.1.1'
Выполнить скрипт из partedmagic
Как можно видеть, второй раздел накопителя (sda2
) меньше, чем размер накопителя:
$ fdisk -l Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors Disk model: Samsung SSD 860 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x26b09aef Device Boot Start End Sectors Size Id Type /dev/sda1 2048 2097151 2095104 1023M 83 Linux /dev/sda2 2097152 146800639 144703488 69G 8e Linux LVM ...
Растягиваем второй раздел до размера накопителя:
$ parted /dev/sda (parted) resizepart Partition number? 2 End? [75.2GB]? 464GB (parted) p Model: ATA Samsung SSD 860 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 1074MB 1073MB primary ext4 2 1074MB 464GB 463GB primary lvm
Меняем размер физического раздела LVM. В нашем случае раздел называется /dev/sda2
:
pvresize "/dev/sda2" vgchange -ay
mkdir /mnt/d mount /dev/alt-vg/root /mnt/d IP=$MACHINE_IP HOST=$MACHINE_NAME echo "127.0.0.1 localhost" > /mnt/d/etc/hosts echo "$IP $HOST.nntc.nnov.ru $HOST" >> /mnt/d/etc/hosts echo "$HOST" > /mnt/d/etc/hostname rm -rf /mnt/d/etc/net/ifaces/* mkdir /mnt/d/etc/net/ifaces/vmbr0 cat << EOF > /mnt/d/etc/net/ifaces/vmbr0/options TYPE=bri VLAN_AWARE=yes VIDS=2-2048 ONBOOT=yes DISABLED=no NM_CONTROLLED=no CONFIG_WIRELESS=no CONFIG_IPV4=yes CONFIG_IPV6=no BOOTPROTO=static HOST="$MACHINE_ETH_DEVICE" EOF cat << EOF > /mnt/d/etc/sysconfig/network # When set to no, this may cause most daemons' initscripts skip starting. NETWORKING=yes # Used by hotplug/pcmcia/ifplugd scripts to detect current network config # subsystem. CONFMETHOD=etcnet # Used by rc.sysinit to setup system hostname at boot. HOSTNAME=$HOST # This is used by ALTLinux ppp-common to decide if we want to install # nameserver lines into /etc/resolv.conf or not. RESOLV_MODS=yes EOF echo "$MACHINE_IP/$MACHINE_MASK" > /mnt/d/etc/net/ifaces/vmbr0/ipv4address echo "default via $MACHINE_GATEWAY" > /mnt/d/etc/net/ifaces/vmbr0/ipv4route echo "nameserver $MACHINE_GATEWAY" > /mnt/d/etc/net/ifaces/vmbr0/resolve.conf reboot
Выполнить скрипт уже из pve, подключившись в рута по ssh
apt-get install -y firefox rpm -e chromium-disable-webfonts
vgchange -ay
lvcreate -y alt-vg --name vmstorage -L 400g zpool create zfspool /dev/alt-vg/vmstorage -f zfs set compression=off zfspool zfs set sync=disabled zfspool
mkdir /zfspool/storage chown storage:storage /zfspool/storage -R
pvesm add zfspool vmstorage --pool zfspool --content images,rootdir
pvesm add cifs pveshare --server 172.16.254.123 --share mcluster1 --username mcluster1 --password --content iso,backup