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

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
Строка 1: Строка 1:
 
=Порядок клонирования=
 
=Порядок клонирования=
  
Зайти на apve1 по ssh и выполнить копирование через dd по сети образа:
+
Зайти на <tt>apve3<tt> по ssh и выполнить копирование через <tt>dd</tt> по сети образа:
  
 
  apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd
 
  apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd
  
В это время машина назначения должна быть загружена в Pmagick. Тогда, если машина назначения, например, имеет адрес 172.16.155.1, команда развёртывания на неё dd образа (команду давать из apve3) будет такой:
+
В это время машина назначения должна быть загружена в <tt>Pmagick</tt>. Тогда, если машина назначения, например, имеет адрес 172.16.155.1, команда развёртывания на неё <tt>dd<tt>-образа (команду давать из <tt>apve3</tt>) будет такой:
  
  dd if=/mnt/samba/fdisk3/alt-edu-pve-template-70g.dd | ssh root@172.16.155.1 /bin/dd of=/dev/nvme0n1
+
  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
  
Так нужно развернуть одну машину. Остальные -- широковещательным клонированием в пределах компьютерного класса через g4l
+
где <code>bs</code> задаёт размер блока (в данном случае, 4 мегабайта.)
  
 +
Так нужно развернуть одну машину. Остальные -- широковещательным клонированием в пределах компьютерного класса через <tt>g4l</tt>
  
=Настройка после клонирования образа на базе AltEduPve=
 
  
==Задать переменную с именем диска==
+
= Настройка после клонирования образа на базе AltEduPve =
  
Имя диска зависит от аппаратной конфигурации (определяется через fdisk -l)
+
== Задать переменную с именем диска ==
 +
 
 +
Имя диска зависит от аппаратной конфигурации (определяется через <code>fdisk -l</code>)
  
 
Обычно
 
Обычно
Строка 52: Строка 54:
 
w
 
w
 
EOF
 
EOF
</pre>
 
  
pvresize "${DISK}p2"
+
pvresize "${DISK}p2"
vgchange -ay
+
vgchange -ay
  
mkdir /mnt/d
+
mkdir /mnt/d
mount /dev/alt-vg/root /mnt/d
+
mount /dev/alt-vg/root /mnt/d
  
IP=$MACHINE_IP
+
IP=$MACHINE_IP
HOST=$MACHINE_NAME
+
HOST=$MACHINE_NAME
echo "127.0.0.1 localhost" > /mnt/d/etc/hosts
+
echo "127.0.0.1 localhost" > /mnt/d/etc/hosts
echo "$IP $HOST.nntc.nnov.ru $HOST" >> /mnt/d/etc/hosts
+
echo "$IP $HOST.nntc.nnov.ru $HOST" >> /mnt/d/etc/hosts
echo "$HOST" > /mnt/d/etc/hostname
+
echo "$HOST" > /mnt/d/etc/hostname
  
rm -rf /mnt/d/etc/net/ifaces/*
+
rm -rf /mnt/d/etc/net/ifaces/*
mkdir /mnt/d/etc/net/ifaces/vmbr0
+
mkdir /mnt/d/etc/net/ifaces/vmbr0
cat << EOF > /mnt/d/etc/net/ifaces/vmbr0/options
+
cat << EOF > /mnt/d/etc/net/ifaces/vmbr0/options
TYPE=bri
+
TYPE=bri
VLAN_AWARE=yes
+
VLAN_AWARE=yes
VIDS=2-2048
+
VIDS=2-2048
ONBOOT=yes
+
ONBOOT=yes
DISABLED=no
+
DISABLED=no
NM_CONTROLLED=no
+
NM_CONTROLLED=no
CONFIG_WIRELESS=no
+
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
+
CONFIG_IPV4=yes
CONFIG_IPV6=no
+
CONFIG_IPV6=no
BOOTPROTO=static
+
BOOTPROTO=static
HOST="$MACHINE_ETH_DEVICE"
+
HOST="$MACHINE_ETH_DEVICE"
EOF
+
EOF
  
<pre>
 
 
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.
Строка 98: Строка 98:
 
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>
  
echo "$MACHINE_IP/$MACHINE_MASK" > /mnt/d/etc/net/ifaces/vmbr0/ipv4address
+
== Выполнить скрипт уже из pve, подключившись в рута по ssh ==
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
 
  apt-get install -y firefox

Версия 08:54, 4 августа 2021

Порядок клонирования

Зайти на apve3 по ssh и выполнить копирование через dd по сети образа:

apve3: /mnt/samba/fdisk3/alt-edu-pve-template-70g.dd

В это время машина назначения должна быть загружена в Pmagick. Тогда, если машина назначения, например, имеет адрес 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/nvme0n1'

Задать переменную с именем сетевого интерфейса для моста

Зависит от аппаратной конфигурации (определяется через 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

fdisk $DISK <<EOF
d
2
n
p
2


N
w
EOF

pvresize "${DISK}p2"
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