IT-Tagebuch

Meine Gedanken rund um die Datenpflege

Server

Inhalte rund um Server, vorrangig Debian.

Proxmox - Serverdoku inkl. Umzug

- Veröffentlicht unter Server von

Heute ist es soweit, meine Proxmoxinstanz soll vom MSI Cubi Mini-PC auf den Shuttle XPC umsteigen, zwei Gründe führen dazu: - mehr Arbeitsspeicher ist möglich (bis zu 64GB, aktuell 32GB verbaut) statt wie im Cubi 16 GB - CPU-Upgrade vom N5000 auf einen I7-7700 den ich günstig in den Kleinanzeigen finden konnte, die Leistung brauche ich vermutlich nicht aber wir werden mal schauen - Frigate wird sich bestimmt freuen :-D

Was ist zu tun?

. Backup der VMs auf dem alten Host Dafür habe ich auf dem Proxmoxbackupserver mein NAS per NFS eingebunden

mkdir /media/nas
mount 10.11.11.7:/nfs/Backup /media/nas

Dahin lasse ich erstmal vor dem Ausschalten die Sicherungen laufen, das wird dauern.....

Folgende IP-Adressen sind neu auf dem System vergeben:

Proxmox-IP: 10.11.11.10
Proxmox-Backupserver: 10.11.11.178
alle anderen IPs blieben bestehen

Openmediavault

einbinden vom Laufwerk lsblk -l /dev/disk/by-id => ata-SanDisk_SDSSDH3_2T00_204088800504 -> ../../sdc

qm set VMID -scsi1 /dev/disk/by-id/ata-SanDisk_SDSSDH3_2T00_204088800504

Homeassistant

Usb-Geräte wieder einbinden lsusb USB-Device herausfinden und in der GUI eintragen

Standby der Backupplatte einstellen hdparm -Y /dev/sdb

Proxmox Backupserver - Sicherung automatisieren

- Veröffentlicht unter Server von

Der Proxmoxbackupserver wird über eine Automatisierung automatisch einmal im Monat gestartet, dies ist am 5. des Monats um 11:30.

IP-Adresse Backupserver: 10.11.11.178

Im Anschluss erfolgt der automatische Aufruf des Skriptes "backup_ausloesen.sh", welche alle Maschinen vom Proxmox-Server sichert. Es werden jeweils 5 Sicherungen aufbewahrt, bevor automatisiert überschrieben wird.

Skriptinhalt

#### Storage aktivieren    
pvesm set pbs-lokal -disable 0
sleep 30s

#### backup auslösen
vzdump 100 101 102 --storage pbs-lokal --node pve --notes-template '{{guestname}}' --all 0 --f>
sleep 60s

#### Storage deaktivieren
pvesm set pbs-lokal -disable 1
sleep 60s

#### System abschalten
ssh 10.11.11.148 -p 22 -l root -t "systemctl poweroff"

Im Anschluss erfolgt das automatische Abschalten der Steckdose, wenn der Server ausgeschaltet ist.

Crontab

30 11 5 * * /root/backup_ausloesen.sh >/dev/null 2>&1

Home Assistant Automatisierung [einschalten]

alias: 05. des Monats - 11:20 | pbs starten
description: ""
triggers:
  - trigger: time
    at: "11:20:00"
conditions:
  - condition: template
    value_template: "{{ now().day == 5 }}"
actions:
  - type: turn_on
    device_id: 32df2b2c6cdb3e1521fadc117027b816
    entity_id: 136ac430996d742a97ff1f2726820e42
    domain: switch
mode: single

Home Assistant Automatisierung [ausschalten]

alias: AUTO pbs-Steckdose abschalten wenn Server aus
description: ""
triggers:
  - type: power
    device_id: 32df2b2c6cdb3e1521fadc117027b816
    entity_id: a27de6345b8277d9cd10ca437d2685cc
    domain: sensor
    trigger: device
    below: 5
    for:
      hours: 0
      minutes: 20
      seconds: 0
conditions: []
actions:
  - type: turn_off
    device_id: 32df2b2c6cdb3e1521fadc117027b816
    entity_id: 136ac430996d742a97ff1f2726820e42
    domain: switch
mode: single

Serverbackup mit Restic und Rclone

- Veröffentlicht unter Server von

Mithilfe von Restic und Rclone ist die Backupsicherung vom Server ein leichtes. In diesem Anwendungsfall wird das Backup auf eine Hetzner Storagebox die per WebDAV eingebunden ist durchgeführt.

1. Restic für die Sicherung

apt update
apt install restic

2. Rclone für den Zugriff

curl https://rclone.org/install.sh | bash

Die Installation erfolgt dann automatisiert im Anschluss.

3. Rclone konfigurieren Aufrufen des Konfigurationsmenüs

rclone config

Folgende Einstellungen habe ich für die Storagebox vorgenommen

  • new remote
  • name> storagebox (frei wählbar)
  • 56 (WEBDAV)
  • als Zielurl die der Storagebox angeben: https://uXXXXXX@uXXXXXX.your-storagebox.de
  • Punkt 6, rclone webdav-Server
  • username eingeben uXXXXXXXX
  • yes, Passwort der Storagebox eingeben
  • Enter, No, Yes, Quit

4. Schlüsselaustausch der Maschinen durchführen

Der Schlüsselaustausch erfolgt...

ssh-copy-id -p23 -s uXXXXXX@uXXXXXX.your-storagebox.de

5. Storagebox vorbereiten

Per WinSCP o.ä. zur Storagebox verbinden und den gewünschten Ordner erstellen. Im Anschluss das Repository initialisieren.

restic --repo rclone:storagebox:/ZIELORDNER init

Passwort für das Repo festlegen und sicher verwahren! Andernfalls ist ein Restore nicht mehr möglich! Im folgenden erstellen wir ein erstes Backup und schauen ob die Verbindung funktioniert.

restic --repo rclone:storagebox:/ZIELORDNER backup QUELLORDNER

Nun fassen wir das ganze in einem Skript zusammen.

#!/bin/bash
# Script um mit Restic & Rclone Daten automatisiert zu sichern!

# PW hinterlegen
export RESTIC_PASSWORD=einSICHERESpasswort!

#Was soll gesichert werden?
backup_pfad=/Pfad/zum/Ordner

#Programm Start
restic -r rclone:storagebox:/ZIELORDNER backup $backup_pfad

#aufräumen, letzten 30 Snapshots behalten
restic -r rclone:storagebox:/Zielordner forget --keep-last 30 --prune

Nicht vergessen das Skript ausführbar zu machen (chown +x skriptname.sh) und per Crontab automatisiert durchzuführen!

Wie kann ich die erstellten Sicherungen nun sehen?

Auch dafür erstellen wir uns der Einfachheithalber ein kurzes, aber knappes Skript.

#!/bin/bash
# Script um mit Restic & Rclone Snapshots anzuzeigen

# PW hinterlegen
export RESTIC_PASSWORD=meinSICHERESpasswort

#Programm Start
restic -r rclone:storagebox:/REPO snapshots

Nach dem Aufruf erhalten wir die Infos wann welcher Snapshot mit welchem Pfad erstellt worden ist. Wie geht es nun weiter? Das Backup wollen wir uns im Detail einmal anschauen, dass allerdings an anderer Stelle.