close Warning: Can't synchronize with repository "keplertools" (/srv/svn/keplertools does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 13 years ago

Closed 7 years ago

#1207 closed Aufgabe (erledigt)

Automatische Backups für paedml

Reported by: Rüdiger Kupper Owned by: Rüdiger Kupper
Priority: bald erledigen Milestone: Schuljahr 2018/19
Component: Server: Backups Severity: beeinträchtigt den Unterricht einiger Lehrer
Keywords: Cc: bau

Description

Aus comment:8:ticket:1205:

Du hast ja die Sicherung beim proxmoxltsp6 getestet, wir sollten die Sicherung des paedml vom proxmoxpaedml mal auf unsere ToDo-Liste setzen:

  • Sicherungsplatte im ltspL1 einbauen
  • Sekundensnapshot auf proxmoxpaedml
  • mount des Snapshots
  • mount der Sicherungsplatte per NFS
  • rsync des gemounteten Snapshots auf die Sicherungsplatte

Das brauchen wir gar nicht von Hand zu machen, das kann alles der Proxmox erledigen:

  • Man muss lediglich ein genügen großes "Storage" einrichten und es als "Backup-Storage" markieren.
  • Das kann ein "local storage" sein, also eine lokale Platte im proxmoxpaedml, es kann aber auch ein NFS-Share sein, z.B. ein NAS oder eben eine Platte im proxmoxL1.
  • Dann kann man im Proxmox-Webinterface auf Knopfdruck Backups machen, das geht im laufenden Betrieb, ohne dass die VM etwas davon mitbekommt.
  • Außerdem kann man einen Zeitplan festlegen, nach dem automatisch Backups gemacht werden, also z.B. jede Woche oder täglich.
  • Lediglich beim Zurückspielen eines Backups muss die VM abgeschaltet werden.

Das sollten wir jetzt möglichst bald einrichten. Es würde schon reichen, einfach eine Platte einzubauen. Die Einrichtung geht dann recht flott. Und ich hätte ein besseres Gefühl, denn man sieht ja, dass doch immer etwas passieren kann.

Change History (23)

comment:1 by Rüdiger Kupper, 13 years ago

Wir können eigentlich sofort Backups auf der lokalen Platte einrichten:

Die Root-Platte des virtuellen paedml ist so riesig (870 GiB), das brauchen wir niemals:

root@proxmoxpaedml:~# lvs
  LV            VG   Attr     LSize   Pool Origin Data%  Move Log Copy%  Convert
  pve-root      pve  -wi-ao--  18,62g                                           
  pve-swap      pve  -wi-ao--  22,35g                                           
  vm-100-disk-1 pve  -wi-ao-- 870,00g                                           

Vorschlag:

  • Root-Platte der VM verkleinern, auf, sagen wir: 100 GiB (dazu muss die VM gestoppt werden. Wenn, dann sollten wir das also noch heute durchführen)
  • Den gewonnenen Platz entweder der Root-Platte des proxmoxpaedml zuschlagen, oder als neues logical Volume einrichten
  • dort einen "local storage für Backups" erstellen
  • Backupplan einrichten

Dann würde der paedml immerhin mal auf die Lokale Platte des proxmoxpaedml gesichert.

comment:2 by bau, 13 years ago

Ich meine, ich habe den proxmoxpaedml mit einer zusätzlichen Sicherungsplatte ausgestattet - ich muss aber mal vor Ort nachsehen. Ich glaube die Config war so:

  • Raid1 über sda1, sdb1, sdc1 und sdd1
  • sdd ist in einem Wechselrahmen eingebaut und könnte rausgezogen werden
  • Sicherungsplatte in einem weiteren Wechselrahmen (ich vermute mal sde) Die Platte hat derzeit 500GB, haben wir da die Sicherungs-Platte aus dem alten paedml reingeschoben? Irgendeine Platte lag ja auch freiverdrahtet im Gehäuse rum, die habe ich beim Crash des Netzteils ausgebaut, ich vermute mal, das ist die TB-Platte, die eigentlich reingehört.
  • Egal: wir haben die Sicherung vom Umzug auf zwei Platten und zusätzlich die Daten nochmals auf dem alten paedml - ich denke, wir nehmen erstmal die TB-Platte im Wechselrahmen - ich sehe mal nach.

Keineswegs sollten wir an der Platte des virtuellen paedml was rumschrauben, da sind die Partitionen innen angelegt und wir haben keine Sicherung! Der größte Anteil der Platte wird für die Homes verwendet.

in reply to:  2 comment:3 by Rüdiger Kupper, 13 years ago

Replying to bau:

Keineswegs sollten wir an der Platte des virtuellen paedml was rumschrauben, da sind die Partitionen innen angelegt und wir haben keine Sicherung! Der größte Anteil der Platte wird für die Homes verwendet.

Ja, richtig, ich hatte nicht beachtet, dass dort auch die Homes drin liegen. Dann sind die 870GiB auch berechtigt.

  • /dev/sd{a,b,c,d}1 sind zum RAID /dev/md0 zusammengebaut
  • Unter /dev/sde liegt derzeit das Backup vom alten paedml. Von dort habe ich die Tauschverzeichnisse wiederhergestellt.
  • die "frei liegende" Platte muss also die vorgesehene Backup-Platte gewesen sein

Also bei Gelegenheit die Backupplatte einbauen, dann können wir darauf schonmal Backups machen.

Last edited 13 years ago by Rüdiger Kupper (previous) (diff)

comment:4 by bau, 12 years ago

Backupplatte ist eingebaut und wird bereits als Backupspace für die LTSP-Proxmoxe benutzt. Es fehlt nun lediglich noch ein Backupkonzept für die paedml. Wir sollten die freigewordenen RAID-Platten auf den LTSP-Servern nutzen und vielleicht in die ltspLX Platten für Backups einbauen. Dann kann der paedml sich dort hinsichern.

comment:5 by jas, 12 years ago

Milestone: Schuljahr 2013/14 → Schuljahr 2014/15

comment:6 by jas, 10 years ago

Milestone: Schuljahr 2015/16 → Schuljahr 2016/17

Wie siehts hier eigentlich aus?

comment:7 by horn, 9 years ago

Milestone: Schuljahr 2016/17 → Schuljahr 2017/18

comment:8 by lehm, 7 years ago

Resolution: → erledigt
Status: new → closed

comment:9 by lehm, 7 years ago

Ist das noch aktuell?

comment:10 by bau, 7 years ago

Ja, wir sollten mal über eine Backup-Lösung nachdenken!

comment:11 by Rüdiger Kupper, 7 years ago

Resolution: erledigt
Status: closed → reopened

Ja, wir sollten nicht nur, sondern wir müssen!

comment:12 by bau, 7 years ago

Backup-Server läuft (mit 6TB LVM), steht im Bücherkeller.
ToDo (kup): Backupscript einrichten

  • SMART einrichten, so dass Plattenprobleme erkannt werden
  • Mail sichern /var/spool/cyrus/mail/b/user/bau
  • Home-Verzeichnisse:
    • Dokumente
    • Bilder
    • Videos
    • Templates
    • public_html
  • Tausch-Verzeichnisse
    • /home/share/teachers
    • /home/share/projects
    • /home/share/classes
    • /home/share/students eher nicht
  • /var/www
  • /var/linbo (auch die cloops?)
  • sophomorix-Verzeichnisse: /var/cache/sophomorix/tasks
  • ...?

Sichern per LVM-Snapshot auf proxmoxpaedml:

  • /dev/mapper/pve1-vm--100--disk--1 enthält die komplette virtuelle paedml-Platte
  • Snapshot (ro) machen
  • Snapshot wegen der Partitionen mit kpartx
  • dann Partition mounten

Sichern per LVM-Snapshot auf paedml

  • /dev/mapper/vg-home
  • /dev/mapper/vg-root
  • /dev/mapper/vg-spool+cups
  • /dev/mapper/vg-swap
  • /dev/mapper/vg-var

comment:13 by Rüdiger Kupper, 7 years ago

SMART-Selbsttest (long) laufen.

comment:14 by Rüdiger Kupper, 7 years ago

So, nach einigem Rumgefummele läuft jetzt auch der postfix auf backup. Nur die Mails an root werden nicht weitergeleitet an root@…. Keine Ahnung, warum.

Nachdem das klappt, hab ich das auch gleich auf dem proxmoxpaedml erledigt, damit wir die Fehlermeldungen der Platten dort auch bekommen.

Habe auch dort die Selbsttests angeworfen.

comment:15 by Rüdiger Kupper, 7 years ago

Ich habe auch mal in diesem Ticket hochgescollt und die ursprüngliche Beschreibung gelesen. Das war ja eine andere Idee: Die Backup-Lösung nutzen, die der Proxmox bereits eingebaut mitbringt.

Was ist denn unsere Strategie für den neuen Server? Zwei Vorschläge:

  1. Den alten paedml mit Hilfe von Proxmox mit allem drum und dran wegsichern. Auf dem neuen Server einen Proxmox aufsetzen und die komplette Maschine dort wieder importieren. Dann nach und nach die verschiedenen Dienste (Mail, Webserver, Trac, WebUntis, Datenbanken, …) auf andere (virtuelle) Maschinen umziehen.
  2. Auf der neuen Maschine eine aktuelle Linuxmusterlösung von Grund auf neu installieren. Die anderen Dienste (s.o.) auf anderen virtuellen Maschinen neu aufziehen und die Daten übertragen. Die Dateien vom alten paedml direkt ins GlusterFS einspielen.

Variante 2 gäbe uns ein "frisches" System würde aber vermutlich lange brauchen, bis alles läuft. Mit Variante 1 hätten wir schnell wieder einen laufenden Server mit allen Diensten, doch wir hätten das gleiche betagte System auf einer neuen Maschine und müssten es Stück für Stück modernisieren.

Was ist denn unsere Strategie?

comment:16 by bau, 7 years ago

Wir können natürlich auch den proxmox backups machen lassen, das ist sicher eine gute Sache, da dann ein funktionierendes virtuelles System im Backup liegt.

Wir wollten aber irgendwie gerade tagesaktuelle Backups der Dateien und Mails der User.

Ich schlage vor:

  • aktuellen paedml mit 32GB Speicher ausstatten
  • GlusterFS für die Dateien (home und share) einrichten
  • neue Proxmoxe auf den IBM-Maschinen einrichten, dort kann dann auch LML7 getestet werden

comment:17 by Rüdiger Kupper, 7 years ago

Die Backup laufen heute Nacht zum ersten mal regulär per Cronjob durch:
21:35

  • paedml:/home
  • paedml:/var
  • paedml:/

Also die verschiedenen LVM-Volumes, die auf dem paedml exitieren jedes für sich gesichert.
21:35

Bei /var habe ich sehr lange herumprobiert, was man ausschließen könnte, doch es scheint mir ganz so, als liegen da z.B. unter /var/cache wichtige Daten der Linuxmusterlösung. Die Linux-Spezifikation erfordert eigentlich, dass alle Daten unterhalb /var/cache bei Bedarf von den Programmen regeneriert werden können. Ich traue der Angelegenheit aber nicht, daher sichere ich es jetzt doch mit.
Das können wir mal testen, wenn wir die Probe auf's Exempel machen: den paedml aus dem Backup auf einer "leeren" Maschine wiederherstellen.
21:38
Und auch /home/share/school sichere ich mit, denn das Verzeichnis ist zwar vermüllt, insgesamt aber nur 8GB groß. Also vernachlässigbar.
21:38
Was ich jetzt noch nicht fertig umgesetzt habe, sind die LVM-Snapshots vor dem Sichern. Doch weil das Backup nachts zwischen 2 und 3 Uhr läuft, ist die Gefahr recht gering, dass sich in der Zeit etwas an den Dateien ändert (Ausnahme: root-Partition).

comment:18 by Rüdiger Kupper, 7 years ago

Priority: hoch → normal
TODO
  • Morgen prüfen, ob alles wie gewünscht gesichert wurde (und auch nicht mehr)
  • LVM-Snapshots implementieren

comment:19 by Rüdiger Kupper, 7 years ago

Owner: changed from bau to Rüdiger Kupper
Status: reopened → accepted

comment:20 by Rüdiger Kupper, 7 years ago

Cc: bau added

comment:21 by Rüdiger Kupper, 7 years ago

So, jetzt hat root@backup auch den richtigen SSH-Schlüssel. Backups laufen heute Nacht durch, morgen prüfen, ob alles wie gewünscht gelaufen ist.

comment:22 by Rüdiger Kupper, 7 years ago

Component: Server (paedml) → Backup

Anschlussticket: #3452

comment:23 by Rüdiger Kupper, 7 years ago

Resolution: → erledigt
Status: accepted → closed
Note: See TracTickets for help on using tickets.