¡Esta es una revisión vieja del documento!
Tabla de Contenidos
PLAN DE MIGRACIÓN COMPLETO: FARAMIR → GIMLI
PLAN DE MIGRACIÓN COMPLETO
Faramir → Gimli
Oracle Cloud - Reducción de Capa Gratuita
ÍNDICE
INFORMACIÓN GENERAL
Servidores Involucrados
- Origen: faramir (a eliminar)
- Destino: gimli (permanece)
Datos a Migrar
- Dokuwiki: ~1.2 GB (archivos de texto)
- WordPress: ~450 MB (incluye PDFs e imágenes)
- Base de Datos: MariaDB 10.11.14
- PHP: 8.4.24
Dominios
pruebaewelinapmu.my.to(WordPress)dokuwiki(sin dominio específico)
Notas Importantes
- ✅ gimli ya es reverse proxy y gestiona certificados SSL
- ✅ check_sites y scripts comunes ya existen en gimli
- ✅ El dominio ya apunta a gimli (DNS configurado)
- ✅ Ambos servidores tienen la misma versión de Ubuntu
- ⚠️ TODO: Nginx (no Apache)
FASE 0: PREPARACIÓN Y BACKUP
0.1 Verificar Espacio en Gimli
# En gimli df -h /var/www df -h /tmp df -h /home # Espacio requerido: mínimo 3GB libres (datos + backups)
0.2 Verificar Versiones y Compatibilidad
# En faramir lsb_release -a php --version mariadb --version nginx -v # En gimli lsb_release -a php --version mariadb --version nginx -v
0.3 Crear Directorios en Gimli
# En gimli sudo mkdir -p /var/www/dokuwiki sudo mkdir -p /var/www/pruebaewelinapmu sudo chown -R www-data:www-data /var/www/dokuwiki /var/www/pruebaewelinapmu sudo mkdir -p /tmp/migracion_backup
0.4 Backup Completo en Faramir
# En faramir - Crear directorio de backup mkdir -p ~/backup_migracion cd ~/backup_migracion # 1. Backup de MariaDB sudo mysqldump --all-databases --single-transaction --routines --triggers > all_databases.sql gzip all_databases.sql # 2. Backup de Dokuwiki sudo tar -czf dokuwiki_backup.tar.gz -C /var/www dokuwiki # 3. Backup de WordPress sudo tar -czf wordpress_backup.tar.gz -C /var/www pruebaewelinapmu # 4. Backup de configuración Nginx sudo tar -czf nginx_config_backup.tar.gz -C /etc nginx # 5. Backup de crontabs crontab -l > crontab_usuario.txt sudo crontab -l > crontab_root.txt # 6. Backup de listas de paquetes dpkg -l | grep '^ii' | awk '{print $2}' > paquetes_instalados.txt dpkg --get-selections > paquetes_selecciones.txt apt-mark showmanual > paquetes_manuales.txt # 7. Verificar backups ls -lh tar -tzf dokuwiki_backup.tar.gz | head -20 tar -tzf wordpress_backup.tar.gz | head -20 zcat all_databases.sql.gz | head -50 # 8. Copiar backups a gimli scp *.tar.gz *.txt ubuntu@gimli:/tmp/migracion_backup/
0.5 Verificar Backups en Gimli
# En gimli cd /tmp/migracion_backup ls -lh md5sum *.tar.gz *.txt # Guardar checksums para verificar integridad
FASE 1: SINCRONIZACIÓN DE PAQUETES UBUNTU
1.1 Verificar Repositorios Adicionales
# En faramir - Listar repositorios adicionales ls -la /etc/apt/sources.list.d/ # Copiar archivos de repositorios a gimli scp /etc/apt/sources.list.d/* ubuntu@gimli:/tmp/migracion_backup/repos/
# En gimli - Copiar repositorios adicionales sudo cp /tmp/migracion_backup/repos/* /etc/apt/sources.list.d/ 2>/dev/null sudo apt update
1.2 Sincronizar Paquetes (Método Principal)
# En gimli cd /tmp/migracion_backup # Método 1: Usando selecciones de paquetes (RECOMENDADO) sudo dpkg --set-selections < paquetes_selecciones.txt sudo apt-get dselect-upgrade -y # Si falla, método alternativo: sudo apt install -y $(cat paquetes_instalados.txt) 2>&1 | tee instalacion_paquetes.log # Verificar paquetes fallidos grep "Unable to locate package" instalacion_paquetes.log grep "dependency problems" instalacion_paquetes.log
1.3 Verificar Paquetes Críticos
# En gimli - Verificar paquetes web esenciales for pkg in nginx php8.4-fpm php8.4-mysql php8.4-xml php8.4-gd \ php8.4-mbstring php8.4-curl php8.4-zip php8.4-intl mariadb-server \ mariadb-client certbot python3-certbot-nginx rsync git curl wget unzip \ zip tar htop vim nano tree ncdu fail2ban ufw composer wp-cli mycli; do if ! dpkg -l | grep -q "^ii.*$pkg"; then echo "❌ FALTA: $pkg - Instalando..." sudo apt install -y $pkg else echo "✅ OK: $pkg" fi done
1.4 Instalar Extensiones PHP Adicionales
# En gimli - Extensiones comunes para WordPress sudo apt install -y php8.4-imagick php8.4-soap php8.4-bcmath sudo systemctl restart php8.4-fpm
1.5 Verificar Servicios
# En gimli sudo systemctl status nginx sudo systemctl status php8.4-fpm sudo systemctl status mariadb sudo systemctl status fail2ban
FASE 2: CONFIGURACIÓN DE NGINX
2.1 Copiar Configuración de Nginx
# En gimli cd /tmp/migracion_backup # Copiar sites-available completos sudo cp -r nginx/sites-available/* /etc/nginx/sites-available/ # Copiar otras configuraciones si existen sudo cp -r nginx/conf.d/* /etc/nginx/conf.d/ 2>/dev/null # Verificar archivos copiados ls -la /etc/nginx/sites-available/
2.2 Configurar Sitios para Certificados SSL Existentes
# En gimli - Editar configuraciones según sea necesario # Configuración ejemplo para pruebaewelinapmu.my.to sudo nano /etc/nginx/sites-available/pruebaewelinapmu # Asegurar que usa los certificados de gimli # La configuración debe tener: # ssl_certificate /etc/letsencrypt/live/pruebaewelinapmu.my.to/fullchain.pem; # ssl_certificate_key /etc/letsencrypt/live/pruebaewelinapmu.my.to/privkey.pem;
2.3 Activar Sitios y Recargar Nginx
# En gimli sudo ln -s /etc/nginx/sites-available/dokuwiki /etc/nginx/sites-enabled/ 2>/dev/null sudo ln -s /etc/nginx/sites-available/pruebaewelinapmu /etc/nginx/sites-enabled/ 2>/dev/null # Prueba de configuración sudo nginx -t # Si todo ok, recargar sudo systemctl reload nginx
2.4 Verificar Certificados SSL
# En gimli - Listar certificados existentes sudo ls -la /etc/letsencrypt/live/ # Verificar que pruebaewelinapmu.my.to tiene certificado sudo certbot certificates | grep pruebaewelinapmu # Si no tiene certificado, obtenerlo sudo certbot --nginx -d pruebaewelinapmu.my.to -d www.pruebaewelinapmu.my.to
FASE 3: MIGRACIÓN DE BASE DE DATOS
3.1 Preparar MariaDB en Gimli
# En gimli - Asegurar que MariaDB está funcionando sudo systemctl start mariadb sudo systemctl enable mariadb # Configurar seguridad básica (si no está hecha) sudo mysql_secure_installation
3.2 Restaurar Base de Datos
# En gimli cd /tmp/migracion_backup # Descomprimir backup sudo gunzip all_databases.sql.gz # Restaurar sudo mysql < all_databases.sql # Verificar bases de datos restauradas sudo mysql -e "SHOW DATABASES;" sudo mysql -e "SELECT User, Host FROM mysql.user;"
3.3 Identificar Base de Datos de WordPress
# En gimli - Identificar nombre de la BD de WordPress grep -i "DB_NAME" /var/www/pruebaewelinapmu/wp-config.php 2>/dev/null || \ ssh ubuntu@faramir "grep -i 'DB_NAME' /var/www/pruebaewelinapmu/wp-config.php"
3.4 Crear Usuario para WordPress (si es necesario)
# En gimli - Obtener credenciales de faramir ssh ubuntu@faramir "grep -E 'DB_NAME|DB_USER|DB_PASSWORD|DB_HOST' /var/www/pruebaewelinapmu/wp-config.php" # Crear usuario en gimli (si no existe) sudo mysql -e "CREATE USER IF NOT EXISTS 'wordpress_user'@'localhost' IDENTIFIED BY 'contraseña_segura';" sudo mysql -e "GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wordpress_user'@'localhost';" sudo mysql -e "FLUSH PRIVILEGES;"
FASE 4: MIGRACIÓN DE ARCHIVOS
4.1 Migrar Dokuwiki
# En gimli cd /tmp/migracion_backup # Extraer Dokuwiki sudo tar -xzf dokuwiki_backup.tar.gz -C /var/www/ # Verificar ls -la /var/www/dokuwiki
4.2 Migrar Archivos de WordPress (Manteniendo Núcleo Limpio)
# En gimli - Extraer solo wp-content y archivos necesarios cd /tmp/migracion_backup # Extraer el contenido sudo tar -xzf wordpress_backup.tar.gz -C /var/www/ # Opción 1: Si queremos mantener wp-content solo sudo mv /var/www/pruebaewelinapmu/wp-content /tmp/wp-content_tmp sudo rm -rf /var/www/pruebaewelinapmu sudo mkdir -p /var/www/pruebaewelinapmu sudo mv /tmp/wp-content_tmp /var/www/pruebaewelinapmu/wp-content # Opción 2: Copiar todo (menos archivos del core) cd /var/www/pruebaewelinapmu sudo rm -rf wp-admin wp-includes *.php sudo tar -xzf /tmp/migracion_backup/wordpress_backup.tar.gz --strip-components=1 -C /var/www/pruebaewelinapmu
4.3 Copiar wp-config.php
# En gimli - Copiar wp-config.php de faramir scp ubuntu@faramir:/var/www/pruebaewelinapmu/wp-config.php /tmp/ sudo cp /tmp/wp-config.php /var/www/pruebaewelinapmu/ # Editar wp-config.php con las credenciales correctas sudo nano /var/www/pruebaewelinapmu/wp-config.php # Asegurar DB_HOST, DB_NAME, DB_USER, DB_PASSWORD
4.4 Copiar .htaccess (si existe)
# En gimli scp ubuntu@faramir:/var/www/pruebaewelinapmu/.htaccess /tmp/ 2>/dev/null sudo cp /tmp/.htaccess /var/www/pruebaewelinapmu/ 2>/dev/null
FASE 5: INSTALACIÓN Y CONFIGURACIÓN DE WORDPRESS
5.1 Instalar WP-CLI (si no está instalado)
# En gimli sudo curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar sudo chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp wp --version
5.2 Descargar WordPress Última Versión (Núcleo Limpio)
# En gimli cd /var/www/pruebaewelinapmu # Asegurar permisos sudo chown -R www-data:www-data /var/www/pruebaewelinapmu # Descargar WordPress limpio (si no está) sudo -u www-data wp core download --locale=es_ES --force --skip-content # Verificar archivos del core sudo -u www-data wp core verify-checksums
5.3 Configurar WordPress
# En gimli cd /var/www/pruebaewelinapmu # Verificar wp-config.php sudo -u www-data wp config edit # Si no existe wp-config.php, crearlo sudo -u www-data wp config create \ --dbname=wordpress_db \ --dbuser=wordpress_user \ --dbpass='contraseña' \ --dbhost=localhost \ --locale=es_ES # Añadir configuraciones adicionales sudo -u www-data wp config set WP_DEBUG false --raw sudo -u www-data wp config set WP_DEBUG_LOG false --raw sudo -u www-data wp config set WP_DEBUG_DISPLAY false --raw sudo -u www-data wp config set WP_MEMORY_LIMIT 256M sudo -u www-data wp config set WP_MAX_MEMORY_LIMIT 512M
5.4 Ajustar Permisos de WordPress
# En gimli sudo find /var/www/pruebaewelinapmu -type d -exec chmod 755 {} \; sudo find /var/www/pruebaewelinapmu -type f -exec chmod 644 {} \; sudo chmod 600 /var/www/pruebaewelinapmu/wp-config.php sudo chown -R www-data:www-data /var/www/pruebaewelinapmu
FASE 6: MIGRACIÓN DE PLUGINS Y TEMAS
6.1 Migrar Plugins
# Opción A: Copiar archivos directamente rsync -avz --progress ubuntu@faramir:/var/www/pruebaewelinapmu/wp-content/plugins/ /var/www/pruebaewelinapmu/wp-content/plugins/ # Opción B: Usar WP-CLI con lista de plugins # En faramir - Obtener lista de plugins activos ssh ubuntu@faramir "cd /var/www/pruebaewelinapmu && wp plugin list --status=active --field=name" > /tmp/plugins.txt # En gimli - Instalar plugins cd /var/www/pruebaewelinapmu while read plugin; do sudo -u www-data wp plugin install $plugin --activate done < /tmp/plugins.txt # Verificar plugins instalados sudo -u www-data wp plugin list
6.2 Migrar Temas
# Opción A: Copiar archivos directamente rsync -avz --progress ubuntu@faramir:/var/www/pruebaewelinapmu/wp-content/themes/ /var/www/pruebaewelinapmu/wp-content/themes/ # Opción B: Usar WP-CLI # En faramir - Obtener lista de temas activos ssh ubuntu@faramir "cd /var/www/pruebaewelinapmu && wp theme list --status=active --field=name" > /tmp/themes.txt # En gimli - Instalar temas cd /var/www/pruebaewelinapmu while read theme; do sudo -u www-data wp theme install $theme --activate done < /tmp/themes.txt # Verificar temas instalados sudo -u www-data wp theme list
6.3 Migrar Uploads (archivos multimedia)
# En gimli - Sincronización inicial rsync -avz --progress ubuntu@faramir:/var/www/pruebaewelinapmu/wp-content/uploads/ /var/www/pruebaewelinapmu/wp-content/uploads/ # Verificar tamaño y cantidad du -sh /var/www/pruebaewelinapmu/wp-content/uploads/ find /var/www/pruebaewelinapmu/wp-content/uploads/ -type f | wc -l
6.4 Migrar Otros Directorios de wp-content
# En gimli - Migrar lenguajes y otros rsync -avz --progress ubuntu@faramir:/var/www/pruebaewelinapmu/wp-content/languages/ /var/www/pruebaewelinapmu/wp-content/languages/ 2>/dev/null # Verificar estructura completa ls -la /var/www/pruebaewelinapmu/wp-content/
6.5 Actualizar URLs en Base de Datos
# En gimli - Actualizar URLs después de la migración cd /var/www/pruebaewelinapmu # Buscar y reemplazar URLs del sitio OLD_URL=$(ssh ubuntu@faramir "grep 'WP_HOME' /var/www/pruebaewelinapmu/wp-config.php | cut -d\\' -f4" || echo "http://faramir") NEW_URL="https://pruebaewelinapmu.my.to" sudo -u www-data wp search-replace "$OLD_URL" "$NEW_URL" # Si hay URLs con http/https mixtos sudo -u www-data wp search-replace "http://pruebaewelinapmu" "https://pruebaewelinapmu" # Verificar sudo -u www-data wp option get siteurl sudo -u www-data wp option get home
FASE 7: CONFIGURACIÓN DE CRON JOBS
7.1 Configurar Crontab de Usuario (ubuntu)
# En gimli crontab -e # ============================================ # CRONTAB DE USUARIO UBUNTU EN GIMLI # ============================================ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/home/ubuntu/bin # ========== DE GANDALF (MANTENIDAS) ========== # Hourly 12 * * * * check_sites # Daily 15 09 * * * check_sites Diario 30 00 * * * copias/backup 40 10 1 * * report_fail2ban >/dev/null @daily sudo apto update 2>/dev/null >/dev/null @daily check_reboot # Reboot @reboot notify "I've just rebooted" # ========== DE FARAMIR (MIGRADAS) ========== # Permisos Dokuwiki (diario) 01 00 * * * sudo find /var/www/dokuwiki -type d -exec chmod 775 {} \; 02 00 * * * sudo find /var/www/dokuwiki -type f -exec chmod 664 {} \; # Backups Dokuwiki y datos 08 00 * * * copias/backup 09 00 * * * copias/backup_data # Propietario Dokuwiki 08 01 * * * sudo chown www-data:www-data -R /var/www/dokuwiki
7.2 Configurar Crontab de Root
# En gimli sudo crontab -e # ============================================ # CRONTAB DE ROOT EN GIMLI # ============================================ # ========== DE FARAMIR (MIGRADAS) ========== # Permisos WordPress (cada 15 minutos) */15 * * * * find /var/www/pruebaewelinapmu -type d -exec chmod g+rwx {} \; */15 * * * * find /var/www/pruebaewelinapmu -type f -exec chmod g+rw {} \;
7.3 Verificar Scripts y Permisos
# En gimli - Verificar que los scripts existen ls -la /home/ubuntu/bin/ which check_sites which check_reboot which notify which copias/backup 2>/dev/null # Probar ejecución manual /home/ubuntu/bin/check_sites /home/ubuntu/bin/check_reboot
7.4 Testear Crons
# En gimli - Verificar que los crons se ejecutarán correctamente # Forzar ejecución manual de tareas programadas sudo run-parts /etc/cron.daily 2>&1 | head -20
FASE 8: VERIFICACIÓN Y PRUEBAS
8.1 Verificar Servicios y Puertos
# En gimli sudo systemctl status nginx sudo systemctl status php8.4-fpm sudo systemctl status mariadb sudo systemctl status fail2ban # Verificar puertos sudo netstat -tlnp | grep -E ':(80|443|3306)'
8.2 Probar Dokuwiki
# En gimli - Verificar archivos ls -la /var/www/dokuwiki/ sudo -u www-data ls -la /var/www/dokuwiki/data/ # Probar acceso vía curl curl -I http://localhost/dokuwiki curl -I https://pruebaewelinapmu.my.to # Si dokuwiki tiene dominio # Navegar a la URL de Dokuwiki en el navegador # Verificar: # - Página de inicio # - Crear/editar página # - Archivos multimedia
8.3 Probar WordPress
# En gimli - Verificar archivos ls -la /var/www/pruebaewelinapmu/ sudo -u www-data wp core verify-checksums # Probar frontend curl -I https://pruebaewelinapmu.my.to curl -I https://pruebaewelinapmu.my.to/wp-admin # Verificar plugins cargados sudo -u www-data wp plugin list # Verificar temas sudo -u www-data wp theme list # Probar en navegador: # - Frontend: https://pruebaewelinapmu.my.to # - Admin: https://pruebaewelinapmu.my.to/wp-admin # - Verificar que PDFs e imágenes se cargan # - Probar funcionalidad de plugins críticos
8.4 Verificar Logs
# En gimli - Monitorizar logs durante pruebas sudo tail -f /var/log/nginx/access.log sudo tail -f /var/log/nginx/error.log sudo tail -f /var/log/php8.4-fpm.log sudo tail -f /var/log/mysql/error.log sudo tail -f /var/log/fail2ban.log # Buscar errores sudo grep -i error /var/log/nginx/error.log | tail -20 sudo grep -i error /var/log/php8.4-fpm.log | tail -20
8.5 Probar Scripts y Crons
# En gimli - Probar scripts /home/ubuntu/bin/check_sites /home/ubuntu/bin/check_reboot /home/ubuntu/bin/report_fail2ban > /tmp/test_fail2ban.txt && cat /tmp/test_fail2ban.txt # Verificar que los cambios de permisos funcionan sudo find /var/www/dokuwiki -type d -exec ls -ld {} \; | head -5 sudo find /var/www/pruebaewelinapmu -type d -exec ls -ld {} \; | head -5
8.6 Probar Backup y Restauración (Simulación)
# En gimli - Probar que los backups funcionan copias/backup 2>&1 | head -20 copias/backup_data 2>&1 | head -20
8.7 Pruebas de Rendimiento
# En gimli - Pruebas básicas de carga ab -n 100 -c 10 https://pruebaewelinapmu.my.to/ # O usar herramientas como curl en bucle # Monitorear recursos htop iostat 2
FASE 9: CORTE FINAL Y DESMANTELAMIENTO
9.1 Preparar Corte Final
# En gimli - Última sincronización antes del corte # Copiar cambios recientes de faramir a gimli # 1. Última sincronización de archivos rsync -avz --delete ubuntu@faramir:/var/www/dokuwiki/ /var/www/dokuwiki/ rsync -avz --delete --exclude='wp-admin' --exclude='wp-includes' ubuntu@faramir:/var/www/pruebaewelinapmu/ /var/www/pruebaewelinapmu/ # 2. Último backup de BD ssh ubuntu@faramir "sudo mysqldump --single-transaction wordpress_db > /tmp/wordpress_final.sql" scp ubuntu@faramir:/tmp/wordpress_final.sql /tmp/ sudo mysql wordpress_db < /tmp/wordpress_final.sql
9.2 Período de Gracia (48 horas)
# Mantener faramir funcionando pero sin tráfico # En faramir - Redirigir tráfico a gimli (opcional) sudo nginx -s stop 2>/dev/null || true
9.3 Confirmación y Corte Definitivo
# Después de 48 horas sin problemas: # 1. En faramir - Desactivar servicios web sudo systemctl stop nginx sudo systemctl disable nginx sudo systemctl stop php8.4-fpm sudo systemctl disable php8.4-fpm sudo systemctl stop mariadb sudo systemctl disable mariadb # 2. Backup final de faramir cd ~ sudo tar -czf faramir_final_backup_$(date +%Y%m%d).tar.gz \ /var/www \ /etc/nginx \ /etc/mysql \ /home/ubuntu/.crontab \ /var/lib/mysql # 3. Verificar que gimli maneja todo correctamente curl -I https://pruebaewelinapmu.my.to curl -I http://dokuwiki # o el dominio correspondiente
9.4 Limpieza de Faramir (Opcional - Cuando estés completamente seguro)
# En faramir - Solo después de confirmar que todo funciona # ADVERTENCIA: ¡Esto eliminará datos! sudo systemctl stop nginx php8.4-fpm mariadb sudo apt-get remove --purge nginx* php* mariadb* mysql* -y sudo rm -rf /var/www/* sudo rm -rf /etc/nginx sudo rm -rf /var/lib/mysql sudo rm -rf /etc/letsencrypt
PLAN DE ROLLBACK
Si Algo Sale Mal Durante la Migración
# === ROLLBACK WORDPRESS === # En gimli cd /var/www/pruebaewelinapmu # 1. Restaurar desde backup (si existe) # Deshacer cambios en BD sudo mysql wordpress_db < /tmp/migracion_backup/wordpress_db_backup.sql # 2. Restaurar archivos sudo rm -rf /var/www/pruebaewelinapmu sudo tar -xzf /tmp/migracion_backup/wordpress_backup.tar.gz -C /var/www/ # 3. Restaurar Nginx sudo cp /etc/nginx/sites-available/pruebaewelinapmu.bak /etc/nginx/sites-available/pruebaewelinapmu sudo systemctl reload nginx # === ROLLBACK DOKUWIKI === cd /var/www sudo rm -rf dokuwiki sudo tar -xzf /tmp/migracion_backup/dokuwiki_backup.tar.gz -C /var/www/ # === ROLLBACK COMPLETO === # Si todo falla, restaurar todo el servidor # En gimli sudo tar -xzf /tmp/migracion_backup/faramir_full_backup.tar.gz -C / sudo systemctl restart nginx php8.4-fpm mariadb
CHECKLIST FINAL
Preparación
- ☐ Verificar espacio en gimli (mínimo 3GB libres)
- ☐ Verificar versiones de Ubuntu, PHP, MariaDB, Nginx
- ☐ Crear directorios en gimli
- ☐ Hacer backup completo en faramir
- ☐ Copiar backups a gimli
Sincronización de Paquetes
- ☐ Copiar repositorios adicionales
- ☐ Instalar paquetes de faramir en gimli
- ☐ Verificar paquetes críticos (PHP, Nginx, MariaDB, etc.)
- ☐ Verificar servicios activos
Migración de Datos
- ☐ Configurar Nginx con sitios de faramir
- ☐ Restaurar base de datos MariaDB
- ☐ Migrar Dokuwiki (archivos)
- ☐ Migrar WordPress (wp-content, config)
- ☐ Instalar WordPress núcleo limpio
- ☐ Migrar plugins y temas
- ☐ Migrar archivos multimedia (uploads)
- ☐ Actualizar URLs en WordPress
Configuración
- ☐ Configurar crontab de usuario
- ☐ Configurar crontab de root
- ☐ Verificar scripts y permisos
Pruebas
- ☐ Verificar servicios
- ☐ Probar Dokuwiki
- ☐ Probar WordPress frontend
- ☐ Probar WordPress admin
- ☐ Probar archivos multimedia (PDFs, imágenes)
- ☐ Verificar logs (sin errores)
- ☐ Probar scripts y crons
- ☐ Probar backups
Corte
- ☐ Última sincronización de datos
- ☐ Desactivar servicios en faramir
- ☐ Backup final de faramir
- ☐ Verificar todo en gimli después del corte
Seguimiento
- ☐ Monitorizar durante 48 horas
- ☐ Verificar certificados SSL
- ☐ Confirmar DNS propagado
- ☐ Documentar cualquier incidencia
NOTAS ADICIONALES
Horarios Recomendados
- Backup: Realizar en horario de bajo tráfico (ej. 2:00 AM)
- Migración: Fin de semana o horario nocturno
- Período de gracia: 48 horas mínimo
Contactos de Emergencia
- Documentar números de teléfono/email de soporte
- Tener acceso a la consola de Oracle Cloud por si falla el SSH
Monitoreo Post-Migración
# En gimli - Script de monitoreo básico watch -n 30 'curl -s -o /dev/null -w "%{http_code}" https://pruebaewelinapmu.my.to && echo " - WordPress OK"' watch -n 30 'curl -s -o /dev/null -w "%{http_code}" http://localhost/dokuwiki && echo " - Dokuwiki OK"'