==== Migración s4y01 a da.sys02 ==== === Hoja de ruta === v Parar código producción v Parar apache + mysql + monit v No tenemos página de mantenimiento así que no hacemos nada, dejamos deshabilitado durante migración v Sincro db viejo -> nuevo v Podíamos haber hecho split, sincro primero de bbdd y luego de código v Cambiar config de base de datos viejo -> nuevo v Mamel se encarga de cambiar la config v Comprobar que la nueva bbdd está actualizada v Efectuar un pago y comprobar que se graba correctamente v Subir apache nuevo y viejo v Cambiar monit de mysql en el viejo para que no lo suba automáticamente (reiniciar monit) v Comprobar que el código nuevo funciona (nueva ip en ''/etc/hosts'' y probar) v Comprobar que SSL funciona en servidor nuevo - Miramos otros servicios (monit, munin, sphinx, admin, crones...) v Sphinx <- ya no se usa, ni se instaló v Munin v Monit v Admin v Crones v Correos v Cambiar DNS v Cambiar DNS en OVH/Cloudflare v Deshabilitar script de sincronizado - Hacer backup automática en el servidor de copias de seguridad === Diario de migración (20160808) === **10:45** - Comenzamos migración, down apache/mysql/monit (no tenemos página en mantenimiento así que a pelo bajamos servicios) (da.sys01) $ /etc/init.d/monit stop (da.sys01) $ /etc/init.d/apache2 stop (da.sys01) $ /etc/init.d/mysql stop **11:10** - Sync de todo, bbdd + código (da.sys02) $ ./rsync_s4y01.sh # Mejorable, en vez de hacer sync de todo podríamos haber hecho sync sólo de db y una vez # cambiadas pass y demás hacer sólo del código **11:25** - Configuración de las bases de datos cambiada, código nuevo y viejo apunta a la base de datos nueva. NO levantamos mysql viejo, lo quitamos de monit para que no se levante automáticamente y no haya líos. (da.sys01) $ /etc/init.d/monit start (da.sys01) $ /etc/init.d/apache2 start **11:30** - Comprobamos que todo esté funcionando adecuadamente, hacemos pago y comprobamos que se guarde \\ **11:40** - Comprobamos código, IP del nuevo server en ''/etc/hosts'' y navegamos en modo incógnito \\ **11:50** - Miramos otros servicios (monit, munin, sphinx, admin, crones...) \\ **12:00** - Probando correos. Para probar correos cambiamos el host del MX en la propia máquina y le damos a recordar contraseña en la web: (da.sys02) $ dig bidobido.com MX | grep MX ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> bidobido.com MX ;bidobido.com. IN MX bidobido.com. 222 IN MX 1 mail.bidobido.com. (da.sys02) $ nano /etc/hosts ... 94.23.195.221 mail.bidobido.com ... (da.sys02) $ ping mail.bidobido.com PING mail.bidobido.com (94.23.195.221) 56(84) bytes of data. 64 bytes from da.sys02 (94.23.195.221): icmp_req=1 ttl=64 time=0.038 ms 64 bytes from da.sys02 (94.23.195.221): icmp_req=2 ttl=64 time=0.030 ms **12:50** - Cambio de DNS's en CloudFlare \\ **13:00** - Probando correos, crones, clientes... todo parece funcionar \\ **13:10** - Programando copias de seguridad en ''da.backup'' \\ Cambio porque sí