Die Verteilung ändern
Diese Dokumentation beschreibt, wie Sie die Distribution, auf der BlueMind läuft, ändern können. Sie kann zum Aktualisieren der Distribution verwendet werden (z. B. von Ubuntu 16.04 auf Ubuntu 18.04).
Dieses Verfahren basiert auf der Installation eines Zielsystems, auf das die Daten migriert werden. Das neue System wird dann das erste System auf der Netzwerkebene ersetzen.
Voraussetzungen
Installation und Konfiguration von BlueMind
- Installieren Sie auf dem Zielsystem eine BlueMind-Version, die mit der des Ursprungssystems identisch ist; wenn auf dem Ursprungssystem beispielsweise BlueMind 4.8.23 verwendet wird, muss auf dem Zielsystem BlueMind 4.8.23 installiert sein
- Das Datenbankpasswort sichern: Das Datenbankpasswort wird bei der Installation von BlueMind automatisch generiert und in der Datei
/etc/bm/bm.inigespeichert. Da diese Datei jedoch bei der Datensynchronisation überschrieben wird, ist es wichtig, das Datenbankpasswort des Zielservers zu kopieren und zu sichern, bevor Sie mit den Migrationsschritten fortfahren. - Spielen Sie den installation wizard (oder setup wizard) auf dem Zielserver ab.
- Auf dem Zielserver alle Plugins installieren, die Auf dem Quellserver verwendet werden (LDAP-Import, Unternehmenssignaturen...)
- Konfigurieren Sie die externe URL des Zielservers: Wenn die ursprüngliche externe URL
bluemind.domain.tldlautet, muss BlueMind auf dem Zielsystem mitbluemind.domain.tldkonfiguriert werden. - Eine gültige Abonnement für dieses Betriebssystem installieren
NB: In diesem Fall ist es möglich, das gleiche Abonnement wieder zu verwenden, wobei der neue Server den alten ersetzt.. - Der Benutzer
rootauf dem Zielserver muss sich alsrootauf dem Ursprungsserver authentifizieren können, idealerweise mit Schlüsselauthentifizierung.
System
- Das Dienstprogramm
rsyncmuss auf beiden Systemen installiert sein. - Beenden Sie ggf. die folgenden Dienste:
- firewalld
- PostgreSQL
RedHat
Für Red Hat Server :
- ajouter les rpms adaptés à la version
Exemple pour la version 8 :dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpmdnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm - Getenforce deaktivieren :
sed -i s/=enforcing/=disabled/ /etc/selinux/config
Migration
Die Datenmigration erfolgt in drei Schritten, um die Ausfallzeit des Dienstes zu minimieren:
- Hot-Synchronisation der Daten vom Quell- zum Zielserver - zeitaufwendig, aber keine Unterbrechung des Dienstes.
- Kalte Synchronisierung - schneller Vorgang, der jedoch zu einer Unterbrechung des Dienstes führt.
- Austausch von Servern
Heiße Synchronisation
Ermöglicht die Erstellung einer ersten Kopie der Daten ohne Unterbrechung des Dienstes:
- Sich als
rootauf dem Zielserver anmelden:su -. - Stoppen Sie die Dienstleistungen auf diesem:
bmctl stop
systemctl stop postfix.service
- Synchronisieren Sie die Daten von BlueMind mit dem Dienstprogramm rsync:
rsync -avH --delete root@origsrv.domain.tld:/var/spool/cyrus/ /var/spool/cyrus/
rsync -avH --delete root@origsrv.domain.tld:/var/lib/cyrus/ /var/lib/cyrus/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-hsm/ /var/spool/bm-hsm/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/sieve/ /var/spool/sieve/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-elasticsearch/ /var/spool/bm-elasticsearch/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-docs/ /var/spool/bm-docs/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-filehosting/ /var/spool/bm-filehosting/
Diese Operationen können unterbrochen und/oder mehrmals durchgeführt werden.
:::info Synchronisationsfrequenz
Um die Ausfallzeit bei der kalten Synchronisierung zu minimieren, wird empfohlen, die heiße Synchronisierung so oft wie möglich durchzuführen. Dies ermöglicht es, die Menge der Daten, die zwischen den beiden Rechnern übertragen werden müssen, zu begrenzen.
Je kürzer die Zeit zwischen der heißen und der kalten Synchronisation ist, desto schneller ist die kalte Synchronisation.
:::
Kalte Synchronisation
- Stoppen Sie die Dienste auf dem ursprünglichen und dem Zielserver:
bmctl stop
systemctl stop postfix.service
- Führen Sie vom Zielserver aus eine erneute Datensynchronisierung durch:
rsync -avH --delete root@origsrv.domain.tld:/var/spool/cyrus/ /var/spool/cyrus/
rsync -avH --delete root@origsrv.domain.tld:/var/lib/cyrus/ /var/lib/cyrus/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-hsm/ /var/spool/bm-hsm/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/sieve/ /var/spool/sieve/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-elasticsearch/ /var/spool/bm-elasticsearch/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-docs/ /var/spool/bm-docs/
rsync -avH --delete root@origsrv.domain.tld:/var/spool/bm-filehosting/ /var/spool/bm-filehosting/
- Starten Sie PostgreSQL auf dem Ursprungsserver vom Zielserver aus:
ssh root@origsrv.domain.tld "systemctl start postgresql.service".
- Führen Sie vom Zielserver aus einen Datenbank-Dump des Ursprungsservers durch:
ssh root@origsrv.domain.tld "PGPASSWORD=bj pg_dump --format=c --username=bj --host localhost bj" > /tmp/dump-bj.sql
ssh root@origsrv.domain.tld "PGPASSWORD=bj pg_dump --format=c --username=bj --host localhost bj-data" > /tmp/dump-bj-data.sql
- Vom Zielserver kopieren Sie die Dateien vom Ursprungsserver:
rsync -av -r root@origsrv.domain.tld:/etc/bm/ /etc/bm
rsync -av -r root@origsrv.domain.tld:/etc/nginx/sw.htpasswd /etc/nginx/sw.htpasswd
rsync -av -r root@origsrv.domain.tld:/etc/bm-hps/ /etc/bm-hps
rsync -av -r root@origsrv.domain.tld:/etc/ssl/certs/bm_cert*.pem /etc/ssl/certs
rsync -av -r root@origsrv.domain.tld:/var/lib/bm-ca/ /var/lib/bm-ca
rsync -av -r root@origsrv.domain.tld:/usr/share/bm-elasticsearch/config/elasticsearch.yml /usr/share/bm-elasticsearch/config/elasticsearch.yml
rsync -av -r root@origsrv.domain.tld:/etc/imapd* /etc/
rsync -av -r root@origsrv.domain.tld:/etc/cyrus* /etc/
rsync -av -r root@origsrv.domain.tld:/etc/bm-webmail/ /etc/bm-webmail/
rsync -av -r root@origsrv.domain.tld:/etc/postfix/main.cf /etc/postfix/main.cf
rsync -av -r root@origsrv.domain.tld:/etc/postfix/master.cf /etc/postfix/master.cf
rsync -av -r root@origsrv.domain.tld:/etc/postfix/master_relay_transport-flat /etc/postfix/master_relay_transport-flat
rsync -av -r root@origsrv.domain.tld:/etc/postfix/master_relay_transport.db /etc/postfix/master_relay_transport.db
rsync -av -r root@origsrv.domain.tld:/etc/postfix/transport-flat /etc/postfix/transport-flat
rsync -av -r root@origsrv.domain.tld:/etc/postfix/transport.db /etc/postfix/transport.db
rsync -av -r root@origsrv.domain.tld:/etc/postfix/virtual_alias-flat /etc/postfix/virtual_alias-flat
rsync -av -r root@origsrv.domain.tld:/etc/postfix/virtual_alias.db /etc/postfix/virtual_alias.db
rsync -av -r root@origsrv.domain.tld:/etc/postfix/virtual_domains-flat /etc/postfix/virtual_domains-flat
rsync -av -r root@origsrv.domain.tld:/etc/postfix/virtual_domains.db /etc/postfix/virtual_domains.db
rsync -av -r root@origsrv.domain.tld:/etc/postfix/virtual_mailbox-flat /etc/postfix/virtual_mailbox-flat
rsync -av -r root@origsrv.domain.tld:/etc/postfix/virtual_mailbox.db /etc/postfix/virtual_mailbox.db
- Starten Sie PostgreSQL auf dem Zielserver:
systemctl start postgresql.service
- Mounten Sie die Datenbank auf dem Zielserver erneut:
chown postgres:postgres /tmp/dump*
su - postgres
dropdb bj
dropdb bj-data
createdb bj
createdb bj-data
pg_restore -C -d bj /tmp/dump-bj.sql
pg_restore -C -d bj-data /tmp/dump-bj-data.sql
Ersetzen von Servern
- Stoppen Sie den ursprünglichen Server
- Konfigurieren Sie die Datei
bm.inides Zielservers neu, um ihm die IP-Adresse des Ursprungsservers zuzuweisen (siehe Ändern der IP-Adresse eines BlueMind-Servers) - Starten Sie den Zielserver neu und verbinden Sie ihn anstelle des ursprünglichen Servers mit dem Netzwerk, so dass er anstelle des ursprünglichen Servers erreichbar ist.
Post-Migration
Melden Sie sich als Benutzer admin0@global.virt an der BlueMind-Verwaltungskonsole an und:
- Gehe zu Sicherheit > Firewall-Verwaltung und klicke sofort auf die Schaltfläche "Speichern", um die Firewall-Regeln von BlueMind zu erzwingen
- Gehe zu Systemverwaltung > E-Mail-Wartung, klicke auf die Schaltfläche "Ausführen" zur Neugenerierung der Postfix-Mail-Routing-Tabellen
- Gehe zu Systemverwaltung > Systemkonfiguration und ersetze die alte IP-Adresse im Feld "Meine Netzwerke" durch die neue Adresse oder den Adressbereich, für den du ein offenes Relais haben möchtest, bevor du auf die Schaltfläche "Speichern" klickst