Unterschiede zwischen den Revisionen 125 und 126
Revision 125 vom 2021-09-05 10:06:20
Größe: 5203
Kommentar:
Revision 126 vom 2021-09-05 10:49:21
Größe: 5080
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 106: Zeile 106:
 * Inhalt von `ssh://git@ssh.git.thinkmo.de:2226/thinkmo/ganeti-os-thinkmo.git` nach `/usr/local/lib/ganeti/os/thinkmo/` kopieren.
 * Platz für /var/lib/ganeti/export schaffen
 * (./) Inhalt von `ssh://git@ssh.git.thinkmo.de:2226/thinkmo/ganeti-os-thinkmo.git` nach `/usr/local/lib/ganeti/os/thinkmo/` kopieren.
 * (./) Platz für /var/lib/ganeti/export schaffen
Zeile 111: Zeile 111:
 * --(VM: TODO: grub-config anpassen für serielle Console auf KVM.)-- [[https://git.thinkmo.de/thinkmo/ansible/-/commit/4ded2243086638f499b6eef454c84a8cbdb91774|Erledigt]] (./)
 * --(VM: TODO: Netzkonfiguration anpassen.)-- (./) (bis auf `shell.thinkmo.de`)
 * (./) --(VM: TODO: grub-config anpassen für serielle Console auf KVM.)-- [[https://git.thinkmo.de/thinkmo/ansible/-/commit/4ded2243086638f499b6eef454c84a8cbdb91774|Erledigt]]
 * (./) (bis auf `shell.thinkmo.de`) --(VM: TODO: Netzkonfiguration anpassen.)--
 * (./) --(Alt:
`gnt-instance modify -o thinkmo s1-smtprelay.thinkmo.de`)--
Zeile 114: Zeile 115:
 * (./) Alt: `gnt-instance modify -o thinkmo s1-smtprelay.thinkmo.de`
 * Alt: `gnt-backup export --node s2n s1-smtprelay.thinkmo.de`
 * Kopieren von `s2n:/var/lib/ganeti/export/s1-smtprelay.thinkmo.de` auf neuen Host (nach `/var/lib/ganeti/export/`).
 * `config.ini` modifizieren: `instance.hypervisor = kvm`, `hypervisor` leeren.
 * Neu: TODO: `gnt-backup import -t file --net 0:mode=routed,link=vm,ip=fc01:2345::23:1 --src-node debian --no-name-check --no-ip-check s1-smtprelay.thinkmo.de`
 * Alt: `gnt-backup export --node s1n s1-smtprelay.thinkmo.de`
 * Kopieren von `s1n:/var/lib/ganeti/export/s1-smtprelay.thinkmo.de` auf neuen Host (nach `/var/lib/ganeti/export/`).
 * `ansible-playbook ganeti_import_instance.yml -l s1-smtprelay.thinkmo.de -e import_node=s3.thinkmo.de`

Hier gehört alles hin, was an Programmen oder Skripten auf dem Server selber eingerichtet/installiert werden muss.

Leeren von s2n

  • acme.int.thinkmo.de:

    • (./) Verschieben.

    • (./) Konvertieren zu plain.

  • backup.int.thinkmo.de: (./) Entfernen nachdem den Daten bei tw gelandet sind.

    • rsync der repos ist fertig.
    • borg check des resultats laeuft noch, bisher aber unauffaellig.
  • dnsmaster.int.thinkmo.de: (./) Konvertieren zu plain.

  • git.int.thinkmo.de: (./) Konvertieren zu plain.

  • gitlab-runner.int.thinkmo.de:

    • (./) Verschieben.

    • (./) Konvertieren zu plain.

  • ldap.int.thinkmo.de:

    • (./) Verschieben.

    • (./) Konvertieren zu plain.

  • mail.thinkmo.de: (./) Konvertieren zu plain.

  • monitor.int.thinkmo.de:

    • (./) Verschieben.

    • (./) Konvertieren zu plain.

  • mx.thinkmo.de: (./) Konvertieren zu plain.

  • news.thinkmo.de:

    • (./) DNS und Netz anpassen.

    • (./) Verschieben.

  • postgres.int.thinkmo.de: (./) PostgreSQL-Replikation entfernen.

  • postgres-repl.int.thinkmo.de: (./) Entfernen.

  • s2-dns.thinkmo.de: (./) Entfernen.

  • s2-httprelay.thinkmo.de: (./) Entfernen, auch DNS für viele andere.

  • s2-smtprelay.thinkmo.de: (./) Entfernen.

  • shell.thinkmo.de:

    • (./) Reverse-Eintrag für 2a01:4f8:a1:6e:0:22:0:1 erstellen.

    • (./) DNS und Netz anpassen.

    • (./) Verschieben.

  • single.int.thinkmo.de: (./) Konvertieren zu plain.

  • vpn.thinkmo.de: (./) Konvertieren zu plain.

  • web-moin.int.thinkmo.de: (./) Konvertieren zu plain.

  • web.int.thinkmo.de: (./) Konvertieren zu plain.

  • (./) Node aus Ganeti werfen.

  • /dev/sd[ab]1: Überschreiben.

  • /dev/sd[ab]2: Überschreiben.

  • /dev/sd[ab]3: Überschreiben.

  • /dev/sd[ab]3: LUKS-Superblock entfernen (cryptsetup luksErase) und überschreiben so weit geht.

Verschieben

  • gnt-instance shutdown example.thinkmo.de

  • gnt-instance modify -t drbd -n s1n example.thinkmo.de

  • gnt-instance failover example.thinkmo.de

  • gnt-instance modify -t plain example.thinkmo.de

  • gnt-instance start example.thinkmo.de

Umzug auf s3

Zeitplan

  • BB -> 4.9. oder 18.9.

Hardware

  • Mainboard z.B. Asus Pro WS 565-ACE (Hetzner hat aber auch schon andere verwendet)

Backup

  • Ziel: erstmal zu tw nach Hause, 2TB Platte exclusiv dafür. finaler ssh key eintragen, force append-only, repo segment size 50MB?
  • (./) thinkmo: repos initialisieren mit repokey-blake2 (random borg key passphrase), backups mit zstd (level=?)

  • (./) erste tests mit s1/s2-httprelay sehen gut aus: hatte ca jede stunde ein backup gemacht

  • (./) check --one-file-system option - haben wir irgendwo mehr als 1 fs? -> es wird dann fuer z.B. /srv separates script erzeugt.

  • (./) exclude .ansible/tmp/ - wieso bleibt da soviel schrott liegen?

  • (./) merge PR / deploy -> alle VMs

  • backup s4
  • backup monitoring (nagios plugin / conf / test-script siehe ~root@monitoring.int)

Setup neuer Hosts

  • wollen wir ne kvm-console? https://docs.hetzner.com/de/robot/dedicated-server/maintainance/kvm-console

    • BIOS-Settings checken
    • memtest86+?
      • tut nicht mit aktueller hardware und unnötig da ECC
    • Debian von eigenen Medien booten/installieren?
      • debootstrap reicht
  • partitionierung (GPT)
    • /boot/efi, /boot/efi2 : EFI boot partition (ESP == EF00)
    • / : mdraid + ext4 (minimalsystem debian 11, minimum 8GB)
    • swap : mdraid (wegen overcommit: 64GB? 128GB? oder overcommit anpassen?)
    • rest für zfs (setup via ansible)
  • IPSec (nicht automatisiert).
  • ansible-playbook site.playbook

  • ansible-playbook ganeti_setup_node.yml

  • ansible-playbook ganeti_setup_cluster.yml

Setup alte Hosts

  • (./) Inhalt von ssh://git@ssh.git.thinkmo.de:2226/thinkmo/ganeti-os-thinkmo.git nach /usr/local/lib/ganeti/os/thinkmo/ kopieren.

  • (./) Platz für /var/lib/ganeti/export schaffen

Umzug einzelne VM

  • (./) VM: TODO: grub-config anpassen für serielle Console auf KVM. Erledigt

  • (./) (bis auf shell.thinkmo.de) VM: TODO: Netzkonfiguration anpassen.

  • (./) Alt: gnt-instance modify -o thinkmo s1-smtprelay.thinkmo.de

  • Leeren Platz mit Nullen überschreiben, da Xen kein Discard kann (dd if=/dev/zero of=/file status=progress; rm /file)

  • Alt: gnt-backup export --node s1n s1-smtprelay.thinkmo.de

  • Kopieren von s1n:/var/lib/ganeti/export/s1-smtprelay.thinkmo.de auf neuen Host (nach /var/lib/ganeti/export/).

  • ansible-playbook ganeti_import_instance.yml -l s1-smtprelay.thinkmo.de -e import_node=s3.thinkmo.de

Umzug auf s4

s4.thinkmo.de = hetzner cloud instance 2 vcpus, 2GB RAM, 40GB SSD

  • (./) debian 11 vorinstalliert von hetzner

  • (./) ssh keys tw + bb, kein pw login

  • (./) swap 2GB

  • (./) s4.thinkmo.de A / AAAA

  • (./) secondary dns

  • monitoring von s3

ServerTodo (zuletzt geändert am 2021-11-09 21:05:03 durch ThomasWaldmann)