Lab155Alt: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
 
(не показаны 3 промежуточные версии этого же участника)
Строка 5: Строка 5:
 
  apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd
 
  apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd
  
В это время машина назначения должна быть загружена в <tt>Pmagick</tt>. Тогда, если машина назначения, например, имеет адрес 172.16.155.1, команда развёртывания на неё <tt>dd<tt>-образа (команду давать из <tt>apve3</tt>) будет такой:
+
В это время машина назначения должна быть загружена в <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
 
  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
Строка 22: Строка 22:
 
Обычно
 
Обычно
  
  DISK='/dev/nvme0n1'
+
  DISK='/dev/sda'
  
 
==Задать переменную с именем сетевого интерфейса для моста==
 
==Задать переменную с именем сетевого интерфейса для моста==
Строка 41: Строка 41:
  
 
==Выполнить скрипт из partedmagic==
 
==Выполнить скрипт из partedmagic==
 +
 +
<!--
 +
Удаляем второй раздел (тот, что с LVM) с накопителя, и создаём вместо него новый, по размеру накопителя.  Например, если у нас расклонированный накопитель <code>/dev/sda</code>, то значит, мы пересоздаём <code>/dev/sda2</code>:
  
 
<pre>
 
<pre>
Строка 54: Строка 57:
 
w
 
w
 
EOF
 
EOF
 +
</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>
  
pvresize "${DISK}p2"
+
Растягиваем второй раздел до размера накопителя:
 +
<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>
 +
pvresize "/dev/sda2"
 
vgchange -ay
 
vgchange -ay
 +
</pre>
  
 +
<pre>
 
mkdir /mnt/d
 
mkdir /mnt/d
 
mount /dev/alt-vg/root /mnt/d
 
mount /dev/alt-vg/root /mnt/d
Строка 123: Строка 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