A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Előző változat mindkét oldalon Előző változat | Előző változat Következő változat Következő változat mindkét oldalon | ||
moving_to_a_new_server [2009-04-08 00:00] |
moving_to_a_new_server [2009-04-08 14:24] erno@rigo.info |
||
---|---|---|---|
Sor 1: | Sor 1: | ||
+ | ====== Internetes megjelenés technikai hátterének költöztetése ====== | ||
+ | |||
+ | Ez a kis iromány megpróbálja összefoglalni a tennivalókat egy képzeletbeli cég komplex internetes megjelenésének technikai költöztetése szempontjából. A dokumentumban található összes cégnév és cím csak a fantázia szüleménye, a valósággal való bárminemű egyezésért a szerző nem vállal felelősséget! | ||
+ | |||
+ | ===== A környezet ===== | ||
+ | |||
+ | Tételezzük fel az alábbi helyzetet: | ||
+ | |||
+ | * A cég neve: //Cég Kft.// | ||
+ | * Honlapja: //www.ceg.hu // | ||
+ | * Email címei: //munkatars1@ceg.hu//, //munkatars2@ceg.hu//, stb... | ||
+ | |||
+ | A //Cég// részére a //GagyiHosting Bt.// (//gagyihosting.hu//) a következő szolgáltatásokat nyújtja: | ||
+ | |||
+ | * Web szerver: //10.0.0.1// vagy //www.ceg.hu // | ||
+ | * Ezen belül: Apache HTTP szerver, MySQL adatbázis szerver, aktív weblapok | ||
+ | * Mail szerver: //10.0.0.2// vagy //mx.ceg.hu // vagy //mx.gagyihosting.hu// | ||
+ | * Ezen belül: IMAP, POP3 szolgáltatott mailboxok a teljes levelezéssel | ||
+ | * Elsődleges DNS szerver: //10.0.1.1// vagy //ns1.gagyihosting.hu// | ||
+ | * Másodlagos DNS szerver: //10.0.2.1// vagy //ns2.gagyihosting.hu// | ||
+ | |||
+ | A //Cég// részére a //NetSzolgáltató Kft.// (//netszolgaltato.hu//) nyújtja az irodai internet szolgáltatást: | ||
+ | |||
+ | * Kimenő levelező SMTP szerver: //10.0.3.1// vagy //smtp.netszolgaltato.hu// | ||
+ | |||
+ | A //Cég// birtokában levő //ceg.hu// domain regisztrátora a //Regisztrátor Kft.// | ||
+ | |||
+ | ==== Megjegyzések ==== | ||
+ | |||
+ | * Jelen dokumentum nem fedi le azt az esetet, mikor a //Cég// a saját névszerverét üzemelteti, vagyis a névszerver címe pl. //ns1.ceg.hu//. | ||
+ | * Nem számít, hogy a fenti IP címek esetleg a valóságban azonosak, valójában a címekhez kapcsolódó szolgáltatások számítanak jelen dokumentum szempontjai szerint. | ||
+ | * Jelen dokumentum külön nem foglalkozik azzal az esettel, mikor a //Cég// kimenő leveleit nem a //NetSzolgáltató// fogadja, hanem a //GagyiHosting//. Ez általában nem jelent külön nehézséget, mivel a két szolgáltatás, vagyis az, hogy a //GagyiHosting// és a //ProfiHosting// is fogadja a kimenő leveleket, egy ideig párhuzamosan is üzemelhet minden fennakadás nélkül. | ||
+ | * Nem kezeljük külön azt az esetet, mikor a dinamikus weblap a különböző változó adatokat (pl. rendelések, stb...) nem egy SQL adatbázisban, hanem például saját formátumú fájlokban vagy más módon tárolja. Ebben az esetben a változó adatok kezelése gyakorlatban megegyezik a dokumentumban az adatbázis kezelése során leírtakkal. | ||
+ | |||
+ | ===== A feladat ===== | ||
+ | |||
+ | A //Cég// megunta a //GagyiHosting// szerencsétlenkedését és eldöntötte, hogy minden szolgáltatását lemondva átköltözik a //ProfiHosting Kft.//-hez. Ennek eredményeképp az alábbi helyzetet kívánja előállítani, az **összes szolgáltatás kiesésének minimalizálásával**: | ||
+ | |||
+ | A //Cég// részére a //ProfiHosting// (//profihosting.hu//) a művelet végén következő szolgáltatásokat nyújtja: | ||
+ | |||
+ | * Web szerver: //10.10.0.1// vagy //www.ceg.hu // | ||
+ | * Ezen belül: Apache HTTP szerver, MySQL adatbázis szerver, aktív weblapok | ||
+ | * Mail szerver: //10.10.0.2// vagy //mx.ceg.hu // vagy //mx.profihosting.hu// | ||
+ | * Ezen belül: IMAP, POP3 szolgáltatott mailboxok a teljes levelezéssel | ||
+ | * Elsődleges DNS szerver: //10.10.1.1// vagy //ns1.profihosting.hu// | ||
+ | * Másodlagos DNS szerver: //10.10.2.1// vagy //ns2.profihosting.hu// | ||
+ | |||
+ | A //NetSzolgáltató// és //Regisztrátor// feladatköre változatlan marad. | ||
+ | |||
+ | ===== Előkészületek ===== | ||
+ | |||
+ | ==== 1. DNS szolgáltatás ==== | ||
+ | |||
+ | A költöztetés kritikus része a DNS szerverek átírása, mivel a DNS architektúra működése és a szerverek osztott adminisztrációja miatt itt lehet legnagyobb késleltetésre számítani. Mindenképp jó előkészület a //ceg.hu// DNS tartomány (zóna) frissítési idejének csökkentése. A gyors átírás érdekében az alábbi beállításokat érdemes életbe léptetni, általában a költözés előtt 1-2 héttel, de legalább pár nappal: | ||
+ | |||
+ | * **TTL** - a time to live érték határozza meg, hogy egy adott zónára vonatkozó kérések eredményeit mennyi ideig lehet gyorsítótárban tárolni más névszervereken. A TTL érték alapértelmezésben, mint az összes többi beállítás is, másodpercben értendő. A 0 érték jelentése //elvileg// a gyorsítótárazás kikapcsolása, de ezt nem minden szerver fogja figyelembe venni. Érdemes 5-10 perces értékre állítani az alapértelmezett 1-2 nap helyett. | ||
+ | * **refresh** - ez az érték szabályozza, hogy a másodlagos (slave) DNS szerverek milyen gyakran frissítsék saját zónafájljukat az elsődleges (master) névszerver adatai alapján. Célszerűen érdemes 5-10 perces értékre állítani, bár a master általában értesítést küld a slave szervereknek, ha a zóna megváltozott. | ||
+ | |||
+ | A többi zóna beállítást alapértéken lehet hagyni, arra azonban különösen figyelni kell, hogy a **serial** értéke minden esetben növekedjék, mikor valamit módosítunk. | ||
+ | |||
+ | === Teendők === | ||
+ | |||
+ | A DNS szerverek módosítása, ahogy ez már említésre került, a költözés egyik kritikus lépése, mivel a legtöbb késlekedést és kiesést ez okozhatja. A //Cég//nek el kell döntenie, milyen stratégiát alkalmaz a DNS zónák frissítésével kapcsolatban a művelet során. Mindenképp célszerű, ha a költöztetést végző személyzet azonnali és közvetlen befolyással bír a zóna fájlokra. Ezzel kapcsolatban az alábbi megfontolások és teendők érvényesülnek. | ||
+ | |||
+ | == Ha a ceg.hu névszervere a GagyiHosting == | ||
+ | |||
+ | Az egyik lehetséges eset, hogy a //Cég//, vagyis a //ceg.hu// zóna DNS szervereit a //GagyiHosting// üzemelteti. Ez a helyzet általában, ha a névszerverek neve pl. //ns1.gagyihosting.hu//, ilyenkor érdemes lehet először előkészületként a DNS szolgáltatást átköltöztetni a //ProfiHosting//hoz, úgy, hogy a zónák tartalma, vagyis a nevekhez tartozó IP címek egyelőre változatlanok maradjanak. | ||
+ | |||
+ | Az így előállt új helyzet a következő lesz: | ||
+ | |||
+ | A //Cég// részére a //GagyiHosting Bt.// (//gagyihosting.hu//) a következő szolgáltatásokat nyújtja: | ||
+ | |||
+ | * Web szerver: //10.0.0.1// vagy //www.ceg.hu // | ||
+ | * Ezen belül: Apache HTTP szerver, MySQL adatbázis szerver, aktív weblapok | ||
+ | * Mail szerver: //10.0.0.2// vagy //mx.ceg.hu // vagy //mx.gagyihosting.hu// | ||
+ | * Ezen belül: IMAP, POP3 szolgáltatott mailboxok a teljes levelezéssel | ||
+ | |||
+ | A //Cég// részére a //ProfiHosting// (//profihosting.hu//) a művelet végén következő szolgáltatásokat nyújtja: | ||
+ | |||
+ | * Elsődleges DNS szerver: //10.10.1.1// vagy //ns1.profihosting.hu// | ||
+ | * Másodlagos DNS szerver: //10.10.2.1// vagy //ns2.profihosting.hu// | ||
+ | |||
+ | A helyzet kialakításához szükséges lépések: | ||
+ | |||
+ | * A zóna beállításához szükség lehet a //GagyiHosting// által tárolt adatokra is a //ProfiHosting// számára. Ezek kiszolgáltatása nem mindig megy zökkenőmentesen. | ||
+ | * A //ProfiHosting// elvégzi a //ceg.hu// zóna technikai beállítását, majd megadja a //Cég// számára az új technikai adatokat. | ||
+ | * Mivel a //ceg.hu// a //Cég// tulajdona, adminisztratív úton (levél, fax) neki kell kezdeményeznie a //Regisztrátor//nál a zóna technikai adatainak módosítását. | ||
+ | * A //Regisztrátor// módosítja a zóna delegáció adatait és visszajelez a //Cég// és a //ProfiHosting// számára. | ||
+ | * A //ProfiHosting// érvénybe lépteti a már említett **TTL** és **refresh** beállításokat. | ||
+ | |||
+ | Mivel a két hosting szolgáltatón kívül a //Regisztrátor// közreműködésére is szükség lesz a helyzet átalakításához, az átfutási idő nagyon változó, de kb. 1 hetes időtartammal érdemes számolni. | ||
+ | |||
+ | == Ha a ceg.hu névszervere a Cég saját szervere == | ||
+ | |||
+ | Ezt az esetet jelen dokumentumban nem fedjük le, ez inkább a szerver IP cím változtatás témakörébe tartozik. | ||
+ | |||
+ | ==== 2. Mail környezet ==== | ||
+ | |||
+ | A levelezési környezet költöztetésének előkészülete a következő lépésekből áll: | ||
+ | |||
+ | * A //Cég// átadja a //ProfiHosting// számára a levelezési címek és hozzájuk tartozó mailboxok listáját. | ||
+ | * A //ProfiHosting// beállítja saját levelező szerverét (//mx.profihosting.hu//), hogy fogadja és helyezze a megfelelő mailboxokba a //ceg.hu// domainre érkező leveleket, pl. a //munkatars1@ceg.hu//, //munkatars2@ceg.hu//, stb... címzésű levelek kerüljenek a számukra dedikált mailboxba. | ||
+ | * A //ProfiHosting// átadja az új mailboxok elérési adatait a //Cég// számára. | ||
+ | * A //Cég// beállítja és konfigurálja az új mailboxokat az összes munkatársnál | ||
+ | * A //Cég// utasítja a //GagyiHosting//ot, hogy a //ceg.hu// címeire érkező összes levelet másolatban továbbítsa az //mx.profihosting.hu// szerverre. Innentől párhuzamos működés áll fenn, minden levél duplán érkezik meg, egyszer az //mx.gagyihosting.hu// és egyszer az //mx.profihosting.hu// gépre. | ||
+ | * A //Cég// teszteli az új mailboxokat, a párhuzamos működés idején kezeli a levélduplikátumokat. | ||
+ | * A //Cég// utasítja a //GagyiHosting//ot, hogy a //ceg.hu// címeire érkező összes levelet továbbítsa az //mx.profihosting.hu// szerverre (ezt nevezik "mail relay" szolgáltatásnak). Innentől a levelek már csak az //mx.profihosting.hu// gépre érkeznek meg, de még áthaladnak az //mx.gagyihosting.hu// gépen is. | ||
+ | |||
+ | ==== 3. Web környezet ==== | ||
+ | |||
+ | A webes környezet költöztetésének előkészületei: | ||
+ | |||
+ | * A //Cég// és a //GagyiHosting// folyamatos technikai hozzáférést ad a //ProfiHosting//nak a //www.ceg.hu // kiszolgálójaként működő HTTP és adatbázis szolgáltatás adataihoz és konfigurációjához a //10.0.0.1// című gépen. | ||
+ | * A //ProfiHosting// létrehozza az átadott információ alapján a //10.10.0.1// című gépen a //www.ceg.hu // honlap másolatát, a hozzá tartozó adatbázissal együtt a //Cég// technikai szakembereinek segítségével. | ||
+ | * A //Cég// teszteli, az egyelőre csak más néven (pl. //ceg.profihosting.hu//) elérhető, előzetes honlapot. | ||
+ | |||
+ | ===== A költöztetés ===== | ||
+ | |||
+ | ==== 1. Mail környezet ==== | ||
+ | |||
+ | A levelezési környezet előkészítése magába foglalta a //Cég// részéről a tesztelést, a //GagyiHosting// részéről pedig már megszűnt a levelek helyi mailboxba történő kézbesítése, csak továbbító szerepet lát el. Ezek alapján az összes teendő: | ||
+ | |||
+ | * A //ProfiHosting// részéről a //ceg.hu// DNS zóna módosítása, az //mx.gagyihosting.hu// cím lecserélése //mx.profihosting.hu//-ra. | ||
+ | * A //ProfiHosting// részéről a régi levelek átmásolása az //mx.gagyihosting.hu// gépről az új, //mx.profihosting.hu// levelező szolgáltatóra. (Ez a lépés történhet az előkészítés részeként is, a "mail relay" szolgáltatás beállítása után.) | ||
+ | * A //GagyiHosting// részéről az első lépés végrehajtásától számított kb. 1 hét várakozás után a saját levelezési rendszeréből a //ceg.hu// konfigurációjának eltávolítása. | ||
+ | |||
+ | A fenti lépések segítségével a levelező szolgáltatás kiesése teljesen elkerülhető. | ||
+ | |||
+ | ==== 2. Web környezet ==== | ||
+ | |||
+ | A web környezet költöztetése szempontjából kritikus pont az adatbázis (pl.: MySQL) szerver adatintegritásának megőrzése. Dinamikus weblapok költöztetése esetén két esetet különböztethetünk meg: | ||
+ | |||
+ | === A webes környezet írási műveletei felfüggeszthetők === | ||
+ | |||
+ | Ez alatt azt értjük, hogy azok a műveletek, amik az adatbázis módosításával járnak, például új rendelések feladása, látogatottsági naplók készítése, stb... egy időre (1-2 óra) teljesen megszüntethetők, például az adminisztrációs felület, vagy a bejelentkezés kikapcsolásával. Ebben az esetben az alábbiakban említett "felfüggesztett időszak" a honlap korlátozott elérhetőségét jelenti. | ||
+ | |||
+ | === A webes környezet írási műveletei NEM felfüggeszthetők === | ||
+ | |||
+ | Értelem szerűen az előző ellentéte. Ebben az esetben az alábbiakban említett "felfüggesztett időszak" a honlap teljes elérhetetlenségét jelenti. | ||
+ | |||
+ | === Lépések === | ||
+ | |||
+ | * A //ProfiHosting// a változó adatokat szinkronizálja a még aktív //10.0.0.1// és az új //10.10.0.1// gép között. | ||
+ | * A //ProfiHosting// "felfüggesztett időszakot" kezdeményez a //GagyiHosting// //10.0.0.1// számítógépén és az új, //10.10.0.1// című gépen. | ||
+ | * A //ProfiHosting// módosítja a //www.ceg.hu // DNS rekordját, hogy az az új, //10.10.0.1// című gépre mutasson. Ez az a lépés, ami miatt a DNS **TTL** és **refresh** értékek megfelelő beállítása kiemelten fontos. | ||
+ | * A //ProfiHosting// a változó adatokat újra szinkronizálja a még aktív //10.0.0.1// és az új //10.10.0.1// gép között. | ||
+ | * A //ProfiHosting// megszünteti a "felfüggesztett időszakot" az új, //10.10.0.1// című gépen. A régi, //10.0.0.1// című gép felfüggesztése végleges marad! | ||
+ | * A //GagyiHosting// az előző lépés végrehajtásától számított kb. 1 hét várakozás után a saját webes rendszeréből a //www.ceg.hu // weblap konfigurációját eltávolítja. | ||
+ | |||
+ | A fenti lépések követése esetén a weblap felhasználók által tapasztalt "felfüggesztett időszak" a (második) adatbázis újra-szinkronizáció és a megváltoztatott DNS rekordok elterjedéséhez szükséges idő összege, az adatbázis másolásához szükséges idő függvényében ez általában 1-5 órát jelent. | ||
+ | |||
+ | ==== 3. DNS szolgáltatás ==== | ||
+ | |||
+ | A DNS szolgáltatás gyakorlatilag már az előkészítés során a //ProfiHosting// kiszolgálóira költözik, így nincs más teendő, mint a //GagyiHosting// oldalán megszüntetni a kiszolgálást. Ezt természetesen csak az előző lépések problémamentes végrehajtása után célszerű megtenni. | ||