Diskussion:Dell PowerEdge T330

Aus C3D2
Zur Navigation springen Zur Suche springen

in der Debian-Installerei, gibt es ZFS keinerlei

"Gedächtnisprotokoll" von user:vater

https://openzfs.github.io/openzfs-docs/Getting%20Started/Debian/Debian%20Bookworm%20Root%20on%20ZFS.html



debian-live-12.6.0-amd64-kde.iso
https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-12.6.0-amd64-kde.iso



gsettings set org.gnome.desktop.media-handling automount false



sudo -i



nano /etc/apt/sources.list

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


apt update



apt install --yes openssh-server

systemctl restart ssh

(

passwd user


----


ssh user@172.321.321.321


----


sudo -i

)


apt install --yes debootstrap gdisk zfsutils-linux



DISK1=/dev/disk/by-id/ata-SanDisk_SD8TB8U256G1001_174406801762

DISK2=/dev/disk/by-id/ata-SanDisk_SD8TB8U256G1001_174954800387



swapoff --all


(

apt install --yes mdadm

cat /proc/mdstat

(

mdadm --zero-superblock --force ${DISK1}-part4

mdadm --zero-superblock --force ${DISK2}-part4

)
)


blkdiscard -f $DISK1

blkdiscard -f $DISK2



sgdisk --zap-all $DISK1

sgdisk --zap-all $DISK2

sgdisk -n2:1M:+512M -t2:EF00 $DISK1

sgdisk -n2:1M:+512M -t2:EF00 $DISK2

sgdisk -n3:0:+1G -t3:BF01 $DISK1

sgdisk -n3:0:+1G -t3:BF01 $DISK2

sgdisk -n4:0:0 -t4:BF00 $DISK1

sgdisk -n4:0:0 -t4:BF00 $DISK2



zpool create \
    -o ashift=12 \
    -o autotrim=on \
    -o compatibility=grub2 \
    -o cachefile=/etc/zfs/zpool.cache \
    -O devices=off \
    -O acltype=posixacl -O xattr=sa \
    -O compression=lz4 \
    -O normalization=formD \
    -O relatime=on \
    -O canmount=off -O mountpoint=/boot -R /mnt \
    bpool mirror \
    ${DISK1}-part3 \
    ${DISK2}-part3

zpool create \
    -o ashift=12 \
    -o autotrim=on \
    -O encryption=on -O keylocation=prompt -O keyformat=passphrase \
    -O acltype=posixacl -O xattr=sa -O dnodesize=auto \
    -O compression=lz4 \
    -O normalization=formD \
    -O relatime=on \
    -O canmount=off -O mountpoint=/ -R /mnt \
    rpool mirror \
    ${DISK1}-part4 \
    ${DISK2}-part4

rootroot



zfs create \
    -o canmount=off \
    -o mountpoint=none \
    rpool/ROOT

zfs create \
    -o canmount=off \
    -o mountpoint=none \
    bpool/BOOT



zfs create \
    -o canmount=noauto \
    -o mountpoint=/ \
    rpool/ROOT/debian

zfs mount rpool/ROOT/debian



zfs create \
    -o mountpoint=/boot \
    bpool/BOOT/debian



zfs create \
    rpool/home

zfs create \
    -o mountpoint=/root \
    rpool/home/root

chmod 700 /mnt/root



zfs create \
    -o canmount=off \
    rpool/var

zfs create  \
    -o canmount=off \
    rpool/var/lib

zfs create \
    rpool/var/log

zfs create \
    rpool/var/spool


(-

zfs create \
    -o canmount=off \
    rpool/usr

zfs create \
    rpool/usr/local

-)


zfs create \
    -o com.sun:auto-snapshot=false \
    rpool/tmp

chmod 1777 /mnt/tmp



mkdir /mnt/run

mount -t tmpfs tmpfs /mnt/run

mkdir /mnt/run/lock



debootstrap bookworm /mnt



mkdir /mnt/etc/zfs

cp /etc/zfs/zpool.cache /mnt/etc/zfs/



hostname hackbert

hostname > /mnt/etc/hostname

(-
-- 127.0.1.1 soll bei OpenStack keinesfalls verwendet werden.

nano /mnt/etc/hosts

127.0.1.1       hackbert

-)


nano /mnt/etc/network/interfaces.d/eno1

auto eno1
iface eno1 inet dhcp



nano /mnt/etc/apt/sources.list

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

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

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



mount --make-private --rbind /dev /mnt/dev

mount --make-private --rbind /proc /mnt/proc

mount --make-private --rbind /sys /mnt/sys

chroot /mnt /usr/bin/env DISK1=$DISK1 DISK2=$DISK2 bash --login



apt update

apt install --yes console-setup locales



dpkg-reconfigure locales tzdata keyboard-configuration console-setup



apt install --yes dpkg-dev linux-headers-generic linux-image-generic zfs-initramfs

echo REMAKE_INITRD=yes > /etc/dkms/zfs.conf


(

apt install systemd-timesyncd

)


apt install dosfstools

mkdosfs -F 32 -s 1 -n EFI ${DISK}-part2

mkdir /boot/efi

echo /dev/disk/by-uuid/$(blkid -s UUID -o value ${DISK1}-part2) \
   /boot/efi vfat defaults 0 0 >> /etc/fstab

mount /boot/efi

apt install --yes grub-efi-amd64 shim-signed



apt purge --yes os-prober



passwd



/etc/systemd/system/zfs-import-bpool.service

[Unit]
DefaultDependencies=no
Before=zfs-import-scan.service
Before=zfs-import-cache.service

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/zpool import -N -o cachefile=none bpool
# Work-around to preserve zpool cache:
ExecStartPre=-/bin/mv /etc/zfs/zpool.cache /etc/zfs/preboot_zpool.cache
ExecStartPost=-/bin/mv /etc/zfs/preboot_zpool.cache /etc/zfs/zpool.cache

[Install]
WantedBy=zfs-import.target

systemctl enable zfs-import-bpool.service



apt install --yes openssh-server

nano /etc/ssh/sshd_config
PermitRootLogin yes



grub-probe /boot

update-initramfs -c -k all



nano /etc/default/grub

#GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT=""

#GRUB_CMDLINE_LINUX=""
GRUB_CMDLINE_LINUX="root=ZFS=rpool/ROOT/debian"

#GRUB_TERMINAL=console
GRUB_TERMINAL=console

update-grub


grub-install \
    --target=x86_64-efi \
    --efi-directory=/boot/efi \
    --bootloader-id=debian \
    --recheck \
    --no-floppy



mkdir /etc/zfs/zfs-list.cache

touch /etc/zfs/zfs-list.cache/bpool

touch /etc/zfs/zfs-list.cache/rpool

zed -F &

cat /etc/zfs/zfs-list.cache/bpool

cat /etc/zfs/zfs-list.cache/rpool

(-
zfs set canmount=on     bpool/BOOT/debian

zfs set canmount=noauto rpool/ROOT/debian
-)

fg

sed -Ei "s|/mnt/?|/|" /etc/zfs/zfs-list.cache/*



zfs snapshot bpool/BOOT/debian@install

zfs snapshot rpool/ROOT/debian@install



exit



mount \
    | grep -v zfs \
    | tac \
    | awk '/\/mnt/ {print $3}' \
    | xargs -i{} umount -lf {}

zpool export -a



reboot


----



sudo -i


(-

username=rewt

zfs create rpool/home/$username

adduser $username



cp -a /etc/skel/. /home/$username

chown -R $username:$username /home/$username

usermod -a -G audio,cdrom,dip,floppy,netdev,plugdev,sudo,video $username

-)


DISK1=/dev/disk/by-id/ata-SanDisk_SD8TB8U256G1001_174406801762

DISK2=/dev/disk/by-id/ata-SanDisk_SD8TB8U256G1001_174954800387



umount /boot/efi

dd if=${DISK1}-part2 of=${DISK2}-part2

1048576+0 records in
1048576+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 9.19224 s, 58.4 MB/s

efibootmgr -c -g -d ${DISK2}-part2 -p 2 -L "debian" -l '\EFI\debian\grubx64.efi'
efibootmgr: ** Warning ** : Boot0009 has same label debian
BootCurrent: 0009
BootOrder: 000A,0009
Boot0009* debian
Boot000A* debian

mount /boot/efi



----------------------------
----------------------------


https://docs.openstack.org/kolla-ansible/2024.1/


source ./venv/bin/activate


kolla-ansible -i ansible/inventory/all-in-one bootstrap

kolla-ansible
prechecks

python3-dbus
installiert

kolla-ansible
prechecks

kolla-ansible
deploy

kolla-ansible
post-deploy

source /etc/kolla/admin-openrc.sh

less /etc/kolla/passwords.yml


http://
admin
password


vim
installiert

./venv/share/kolla-ansible/.init/runonce
(netzwerk angepasst internal und external)
./venv/share/kolla-ansible/.init/runonce


vim


(mindestens) noch zu erledigende Aufgaben

  • Erstellung dpool
  • Anmeldung (aus der Ferne) mit dem Konto nicht (weiterhin) zulassen
  • Konten (mit Dataset für ZFS) erstellen
  • Erstellung Dataset (Datasets) für ZFS für Orte für OpenStack
  • Anmeldung aus der Ferne beim Start vom System (Dropbear) ermöglichen

Installation 2025-06-28

2025-06-28 Mittag installierten lino und marenz pve. (vater war leider nicht (mehr mit) dabei.)

Im Nachhinein (2025-06-29 Mittag) schrieb vater Dinge (als Dokumentation für Arme) auf, die vater sah (oder hörte).

vater legt das nun hier einmal doof (zur Weiterverwendung) ab, da vermutlich (2025-06-29 Nachmittag) lino eine neue Installation - samt Vermerk der Konfiguration, insbesondere auch mit ansible, - vornehmen mag.
## Installation

### Konfiguration Massenspeicher für die Installation

2 Geräte (SSD, nicht HDD) als mirror für ZFS

; Filesystem: zfs (RAID1)
:; Disk Setup:
::; Harddisk 0: …
::; Harddisk 1: …
::; Harddisk 2: <code>-- do not use --</code>
::; Harddisk 3: <code>-- do not use --</code>

### Konfiguration Lokalisation

; Country: …
; Time zone: …
; Keyboard Layout: …

### Konfiguration Passwort

> Bei PVE wird bei der Installation

>> eine Passwort für das Konto *root* (mit ultimativen administrativen Berechtigungen) gesetzt.
>>> Das Passwort war ein gut bekanntes 8-stelliges Passwort.

>> eine Mail-Adresse (um an sie Mails zum System zu senden) gesetzt.
>>> Die Mail-Adresse war ….

### Konfiguration Netzwerk

## Konfiguration

### Quellen für Pakete

2025-06-28 wurde (direkt nach der Installation) die Quelle auf die übliche Verwendung von PVE ohne Lizenz für professionelle Unterstützung durch Registrierung umgestellt.

### Konten

#### Konto *lino*
10001

#### Konto *marenz*
10002

#### Konto *vater*
10003

lino legte für vater einen öffentlichen Schlüssel für SSH ab.

Installation 2025-06-29

Installation PVE via GUI

Inspiration für die Konfiguration

Konfiguration PVE via GUI

Konfiguration PVE via ansible

Ort
/tmp/

vielleicht zu klären

Verwendung der 2 (weiteren) Geräte für Massenspeicher

Vorschlag user:vater
weiterer Pool für ZFS mit der Bezeichnung dpool (d für data, statt r für root bei rpool)

Verschlüsslung von Daten auf den Geräten für Massenspeicher

samt Prozess der Entschlüsslung aus der Ferne