Hallo zusammen,
was lange währt wird endlich gut, oder wie sagt man?
ich hatte vor einiger Zeit mal angekündigt, eine Anleitung zum Serverumzug/Neuinstallation zu schreiben, hier ist sie nun.
Wer Fehler findet, bitte kurz hier posten damit ich die Anleitung entsprechend verbessern/korrigieren kann.
Vorwort:
Ich bin kein Freund von zuviel Automatisierung, deswegen erledige ich das meiste von Hand, nicht per Script.
So behalte ich die Kontrolle was bei den einzelnen Vorgägngen passiert.
Diese Anleitung ist weiterhin darauf ausgelegt, das die komplette mySQL DB mit kopiert wird,
somit auch der vadmin-User. Deswegen 3.2. unbedingt beachten!
Ausserdem gehe ich davon aus, dass die PD-Admin Version auf dem alten Server identisch ist mit der
auf dem neuen. Ansonsten ist trixerei angesagt...
Erkänzend sei gesagt, dass man den Umzug natürlich auch recht komfortabel per rsync machen kann,
so erledigt es auch Herr Bradler selbst. Er hat diese Anleitung gelesen und für richtig bewertet.
/usr/local/pd-admin2 und /opt/pdadmin kopiert Herr Bradler komplett.
Ich verwende kein rsync, weil meine Anleitung auch darauf abzielt, einen defekten Rechner zu
ersetzen und das System aus dem Backup zu rekonstruieren.
ZitatAlles anzeigen1. VOR DER PD-ADMIN INSTALLTION
1.1. Userdaten
/etc/passwd
/etc/group
/etc/shadow
(/etc/gshadow)
mit den Versionen des alten Servers abgleichen
NICHT einfach rüberkopieren, da die Systeminstallation unter umständen User und
Gruppen angelegt hat, die nicht einfach überschrieben werden sollten.
1.2. Pakete
evtl installieren fehlt oft bei Debian minimal-Installationen:
- vim
- locate
- gcc
- patch
- make
- psmisc (killall)
- ntpdate
- file
- screen
- dnsutils (dig, nslookup)
- whois
- rrdtool (installiert perl)
- imagemagick
1.3. Prüfen
- wget
- exim (löschen)
- inetd (deaktivieren)
- xinetd
1.4. Lizenz
Doppelte Lizenz für zwei Wochen bei Bradler & Krantz beantragen
2. Installation
2.1 PD-Admin installieren
PD-Admin ganz normal nach Anleitung installieren, Daten wie gewohnt aufschreiben
Alle Server-Dienste anhalten (qmail, apache, mysql, etc.)
Siehe http://www.pd-admin.de/faq/#26
2.2. Backup-Verzeichnis
Verzeichnis /backup anlegen, dieses nutze ich für PD-Admin Backups
und für das Kopieren der alten Serverdaten auf den neuen Rechner.
Hinweis:
Das Verzeichnis /home/[reseller]/backup sollte nicht verwendet werden,
hier gibt es Rechteprobleme
3. Vorbereitungen zum Restore der alten Daten
3.1. Daten bereitstellen
Backup des alten Servers in /backup/restore/ auspacken
3.2. vadmin Passwort
Das alte vadmin Passwort in folgenden Dateien eintragen:
/var/qmail/vadmin-check.pl
/usr/local/pd-admin2/etc/proftpd.conf
/bin/checksmtppasswd
/usr/local/pd-admin2/etc/authlib/authmysqlrc
[EDIT wegen Dovecot von Eisenherz]
/usr/local/pd-admin2/dovecot-2.2/etc/dovecot/dovecot-sql.conf.ext
3.3 phpMyAdmin
die Daten vom Control-User aus
/usr/local/pd-admin2/htdocs/phpMyAdmin/config.inc.php
auf den neuen Server übertragen
4. Zurückspielen der Datensicherung
4.1. /home Verzeichnis
/backup/restore/home aus Sicherung nach /home kopieren (wahlweise bei großen Datenmengen verschrieben)
Nur bei update von einer älteren SE:
/backup/restore/usr/local/pd-admin2/var/mysql nach /home/mysql kopieren
4.2. Weitere zurückzusichernde Dateien aus dem entsprechenden Backup-Pfad holen
/var/qmail/users/*
/var/qmail/control/*
/opt/pdadmin/etc/*
/opt/pdadmin/nav/*
/opt/pdadmin/sslcerts/*
ggf. Apache-Konfiguration in /usr/local/pd-admin2/conf/httpd.conf-template vervollständigen
evtl:
/var/qmail/bin/spamfwd.pl kopieren (Rechte beachten!)
@dotqmail_special_forward richtig eintragen
Siehe SPAM nicht weiterleiten an externe Emailadressen oder Mailinglisten
evtl:
crontabs vom alten Server auslesen und installieren
5. Konfiguration
5.1. pdadmin.conf
Neue IP und Backup-Verzeichnis einstellen in
/opt/pdadmin/etc/pdadmin.conf
5.2. qMail
UID und GID in
/var/qmail/users/assign
prüfen. Ggf anpassen und anschliessend
/var/qmail/bin/qmail-newu
ausführen.
[EDIT wegen Dovecot von Eisenherz]
Bei Dovecot muss auch dort die neu ID rein:
/usr/local/pd-admin2/dovecot-2.2/etc/dovecot/dovecot-sql.conf.ext
Im Bereich:
user_query = \
select pop3.home as home, UID as uid, GID as gid \
5.3. Apache
ggf. Apache-Konfiguration
5.4 IP-Adresse
Beim Serverumzug und wechsel der IP-Adresse muss die neue Adresse an folgenden Stellen eingetragen sein:
- /opt/pdadmin/etc/pdadmin.conf
-> $standard_ip = '89.238.83.30';
- Tabelle vadmin.domains,
-> Spalte IP
und ggf.
- /usr/local/pd-admin2/conf/httpd.conf-template
Normal sollte hier aber $$STANDARD_IP gesetzt sein.
Danach:
/opt/pdadmin/bin/httpd_vhosts.pl
Soll der Hostname auch geändert werden, müssen ggf. noch Änderungen an diversen qmail Dateien vollzogen werden,
hier hilft ein Blick ins Forum.
5.5. System starten
Lizenz neu laden
httpd.conf erzeugen
Evtl. booten um sicherzustellen, dass alle Dienste im Problemfall (remote reboot)
ordnungsgemäß anlaufen.
5.6. Mails umleiten
Zweck ist, die Mails ab dem Zeitpunkt des Wechsels nur noch zum neuen Server kommen zu lassen,
auch wenn sich noch nicht überall die neuen Zonen rumgesprochen haben.
0. Am besten eine Woche vorher die TTL in allen betroffenen Zonen drastisch runter stellen, dies sollte man so oder so machen.
1. neuen Server gemäß Umzugsanleitung installieren, Mailserver zum laufen bringen, Dienste starten
2. im neuen und im alten Server in der resolv.conf die IP-Adressen der Nameserver eintragen, wo die Zonen liegen
3. qmail-smtpd anhalten, nun werden Mails nur temporär abgelehnt werden, gehen also nicht verloren
4. Mail-Order mit rsync abgleichen
5. Zonen updaten
6. nun auf dem alten Server alle Einträge aus der /var/qmail/contril/virtualdomains löschen, die rcpthosts aber unverändert belassen.
7. Dienste wieder starten
Das Endergebnis ist noch wie gewünscht:
der alte Server nimmt noch Mails an, leitet sie dann aber durch die aktualisierten Zone und den Eintrag in der resolv.con
auf den neuen Server weiter, der sortiert sie korrekt ein
Herr Bradler hat mir zu der letzten Auflistung unter 5.6. seine Vorgehensweise beschrieben:
5.7 Kunden-Crons anlegen
Hier habe ich noch keine gescheite Lösung. Also muss man in der Tabelle vadmin.crontab nachsehen, welcher User Crons hat, und diese durch Durchklicken im Customer-Bereich in den Cronfiles neu anlegen.