{"id":84,"date":"2012-01-18T00:05:31","date_gmt":"2012-01-17T23:05:31","guid":{"rendered":"http:\/\/blog.roellig-it.de\/?p=84"},"modified":"2015-12-06T23:37:34","modified_gmt":"2015-12-06T22:37:34","slug":"mailsammler-die-naechste","status":"publish","type":"post","link":"https:\/\/blog.roellig-it.de\/index.php\/2012\/01\/18\/mailsammler-die-naechste\/","title":{"rendered":"Mailsammler die n\u00e4chste"},"content":{"rendered":"<p>Vor ca. 1 Woche kam mal wieder ein Auftrag mit der bitte ich solle doch mal ein Angebot f\u00fcr den Umzug eines Relativ gro\u00dfen Firmen Mailsystems und ein Storage System machen.<\/p>\n<p><!--more--><\/p>\n<p>Also bei dem zuk\u00fcnftigen Kunden um einen Termin gebeten um mir das gesamte System mal anzusehen. Wie erwartet war das System nichts besonderes und lieferte auch keine gro\u00dfen \u00dcberraschungen, was mich sp\u00e4ter eines besseren Belehren sollte. Es lief aber auf einem alten Debian Potato und alle Programme waren per Hand \u00fcbersetzt worden.<\/p>\n<p>Was ich nur nicht so toll fand war das alle Storage Systeme \u00fcber NFS eingebunden wurden und der Mailserver war Courier. Entsprechend hatte der Externe Admin auch mit der Performance zu k\u00e4mpfen. Kaum verwunderlich wei\u00df doch jeder halbwechs vern\u00fcnftige Admin das gerade Courier in gro\u00dfen Umgebungen eine sch\u00f6ne Spa\u00dfbremse ist.<\/p>\n<p>Die Storage Systeme waren auch nicht wirklich die Tollsten Ger\u00e4te und hatten nicht mal Hardware Raidcontroller an Board. Auch ein Blick in den Raidstatus brachte keine sch\u00f6nen Anblicke, den von 14 Platten des Externen Storagearrays waren schon 4 nicht mehr vorhanden. Gl\u00fccklicherweise war es ein Raid 1+0 was ein Paar mehr Ausf\u00e4lle verkraftet als ein Raid 1 aber Raidausf\u00e4lle sind nicht Super und zwingen zum Handeln.<\/p>\n<p>Da der Kunde nicht wirklich noch was in das System investieren wollte und um den Supergau zu vermeiden hab ich bei E-Bay ein paar alte Platten erstanden die den vorhandenen entsprachen und damit das Raid erst mal wieder in einen Stabilen Status gebracht.<\/p>\n<p>Das Synchronisieren hat zwar fast 24 Stunden gedauert aber mit dem Backup konnte ich feststellen das keine Daten Verloren waren. Soweit so gut. Das zwang nat\u00fcrlich den Kunden in eine Lage in der er Handeln musste um sich nicht selbst ins Knie zu schie\u00dfen und damit den Betrieb Still zu legen.<\/p>\n<p>Also ein bisschen nach verhandelt und den Auftrag bekommen.<\/p>\n<p>Insgesamt handelte es sich beim Mailsystem um 1 Courier Server mit Exim, um 4 Storage Server, die eigentlich alles auf die Platte bekommen haben was irgendwie drauf passte, zwei Apache Server und den Mysql\/LDAP Server der Redundant auch noch auf einem Storage Server lief. Insgesamt waren das knapp 4 TB an Daten.<\/p>\n<p>Nach dem der Kunde sich entschieden hatte wie er es haben wollte hab ich mich, wie eigentlich immer in solchen Situationen, in der Nacht daran gemacht alle Systeme 1:1 zu sichern. Dabei hilft mir wie \u00fcblich rsync und diverse Eigenbau Scripte die alle Datenbanken Exportieren und alles was irgendwie zu sichern ist auf einen externen Ministorage Server mit 20 TB Raid 1+0 Storage weg sichern. Angebunden wird die Kiste \u00fcber zwei 1 GBit Links um gen\u00fcgend Bandbreite zu haben.<\/p>\n<p>Damit war der erste Teil der Arbeit getan und ich konnte mich im B\u00fcro daran machen die Kopierten Maschinen als Virtuelle Maschinen \u00fcber KVM zum laufen zu bringen. Nat\u00fcrlich nur als Kopie damit nichts am Original Kaputt geht.<\/p>\n<p>Nachdem der Mailserver, die Storageserver und die Datenbank Virtuell ihren Dienst aufgenommen hatten konnte ich mich darum k\u00fcmmern den alten Courier Mailserver in unser System zu Migrieren. Daf\u00fcr nehme ich bei kleinen Servern meist IMAPCopy der alle Mailboxen vom alten auf den neuen Server Kopiert. In dem Fall aber hab ich daf\u00fcr ein PHP Script genommen was ich selbst Entwickelt habe und kaum Manuellen Eingriff ben\u00f6tigt. Das Script ben\u00f6tigt nur den Quellserver, den Zielserver und die Adresse der Datenbank, ob MySql oder OpenLDAP ist egal. Das Script Arbeitet v\u00f6llig Autonom alle vorhandenen Mailboxen ab und schiebt diese in unser Mailsystem, und legt gleichzeitig auch die neuen User in unserer LDAP DB an.<\/p>\n<p>Auch hier war der Mailserver ordentlich voll gepackt und hatte gute 2,5 TB mit 2 Domains und ca. 120 Mailboxen, wobei nochmal ca. 20 Shared Mailboxen waren. Der Rest ging f\u00fcr den eigentlichen Storage drauf, wobei der Kunde hier auch diverse Faxanschl\u00fcsse per Hylafax auf diverse Mailboxen Baute, was auch zu einem Ordentlichen Datenspeicher f\u00fchrte der bis in das Jahr 2001 zur\u00fcck reichte.<\/p>\n<p>Nachdem der Courier abgeschaltet werden konnte hab ich dann beim Kunden auch gleich die MX Eintr\u00e4ge auf unser Netzwerk umgebogen und den Courier des Kunden als Reserve stehen lassen, falls doch was schief laufen sollte.<\/p>\n<p>Zu guter Letzt wurde jedem Mitarbeiter ein neues Passwort verpasst und die Mitarbeiter des Kunden wurden in das neue Mailinterface eingearbeitet, was bei uns Horde ist.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vor ca. 1 Woche kam mal wieder ein Auftrag mit der bitte ich solle doch mal ein Angebot f\u00fcr den Umzug eines Relativ gro\u00dfen Firmen Mailsystems und ein Storage System machen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-84","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"_links":{"self":[{"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/posts\/84","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/comments?post=84"}],"version-history":[{"count":1,"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/posts\/84\/revisions"}],"predecessor-version":[{"id":241,"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/posts\/84\/revisions\/241"}],"wp:attachment":[{"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/media?parent=84"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/categories?post=84"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.roellig-it.de\/index.php\/wp-json\/wp\/v2\/tags?post=84"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}