Realización de Backups Aastra Telecom Realización de Backups 16 enero 2014 Contenidos 1 Introducción 3 2 General 4 3 Backup de datos 5 4 Mirror de configuración 6 5 Safety backup 6 6 PC-Regen 8 7 Programación de tareas (backups automáticos) 2 11 1 Introducción El objetivo del presente documento es explicar los distintos tipos de backups disponibles en MX-ONE, cómo realizarlos y cómo programarlos para que se ejecuten automáticamente con la herramienta de Linux “crontab”. Nota: Si es posible es preciso asegurarse que los procesos que hacen uso intensivo de la memoria, tales como el safety backup, se realicen siempre en periodos de tráfico bajo. 3 2 General El procedimiento para realizar backups totales de un sistema se lleva a cabo en tres pasos: 1. Realizar un backup de datos. El backup de datos del sistema de telefonía se almacena en cada servidor de telefonía y debería realizarse diariamente o bien después de hacer un número de cambios en el sistema. Los datos almacenados en este tipo de backup son utilizados por el sistema a la hora de llevar a cabo una recarga de datos cuando, por ejemplo, se recupera de ciertas condiciones de error. 2. Crear un mirror de configuración. Almacena los backup de datos y la información de configuración de todos los servidores de telefonía. Este proceso es parte de la preparación para el denominado safety backup y debería realizarse, al menos, de forma semanal. Este tipo de backup contiene todos los datos del sistema y se utilizan, por ejemplo, para reparar un servidor. 3. Crear un safety backup. El proceso consiste en copiar el mirror de configuración y cualquier otro fichero/carpeta que se indique en este proceso desde el servidor de telefonía número 1 a una cinta de backup o a otro tipo de medio externo. El resultado es un backup externo del sistema completo y se puede utilizar para reparar un servidor (comando repair_lim del sistema) o para restaurar un sistema completo cuando, por ejemplo, se ha de sustituir un servidor. No es necesario realizar los tres pasos anteriores al mismo tiempo. Es posible hacer un backup de datos sin crear un mirror de configuración y crear un mirror de configuración sin crear un safety backup. Utilizando la función crontab del Linux es posible crear, de forma automática, backup de datos, mirror de configuración y safety backups. 4 Si existiera una inconsistencia en los datos del sistema, sería necesario restaurarlos desde un backup. El procedimiento para restaurarlos se compone de tres pasos: 1. Restaurar un safety backup. Restaurar el safety backup del servidor de telefonía número 1 2. Restaurar un mirror de configuración. Restaurar los backup de datos y la información de configuración desde el servidor de telefonía número 1 a todos los servidores de telefonía 3. Restaurar un backup de datos. Restaurar los backup de datos en todos los servidores de telefonía. Al igual que en el procedimiento de backup, no es necesario realizar esto tres pasos al mismo tiempo. Si existen inconsistencias en los datos del sistema puede ser suficiente restaurar el último backup de datos. 3 Backup de datos En un backup de datos, los datos del sistema de las unidades de programa se almacenan en un sistema de ficheros. Cuando se hace una recarga de una unidad de programa, se recargan los datos para todas las unidades de programa de tal manera que se evitan posibles inconsistencias. La acción de restaurar los datos del sistema podría resultar en una pérdida de datos de éste si se hiciera de forma parcial, por lo que la única forma de asegurar que los datos del sistema son consistentes es hace una restauración completa de los datos. Para cada servidor de telefonía, en su disco duro se almacenan los últimos cinco backups de datos. Para cada backup se crea una nueva carpeta en el directorio /var/opt/eri_sn. Cada carpeta de backup se denomina utilizando la siguiente nomenclatura: xdata_y_z, donde y es el número del servidor de telefonía y z es la marca de fecha y hora. Se crea un fichero en dicha carpeta para cada unidad de programa que tiene datos de sistema. El fichero de configuración de datos xdata_y.conf se actualizan para incluir el nuevo backup. Los backups válidos se especifican en dicho fichero. Si existieran ya cinco backups, se eliminaría la carpeta de backup más antigua. En una restauración de datos, se utiliza el fichero de backup más reciente. Si se quiere cargar un backup anterior, hay que modificar el fichero de configuración de datos, situando en primer lugar el nombre del backup deseado. Para iniciar un backup de datos se ejecuta el siguiente comando: 5 data_backup Para restaurar desde un backup de datos se ejecuta el siguiente comando: data_restore 4 Mirror de configuración Cuando se crea un mirror de configuración, el último backup de datos y los ficheros de configuración necesarios para reconfigurar un sistema de cada servidor de telefonía se almacenan en todos los servidores de telefonía. Los datos se almacenan en el directorio /eri_sn/mirror. Se puede añadir el parámetro “export” para indicar en qué servidores se quiere almacenar los datos del sistema, si se omite se almacena la información en todos los servidores. Se recomienda tener los datos del mirror del sistema al menos en dos servidores del sistema de distintas sedes. Para iniciar un mirror de la configuración se ejecuta el siguiente comando: config_mirror [-export] Para restaurar desde un mirror de la configuración se ejecutan los siguientes comandos: config_restore data_restore 5 Safety backup Una vez creado un mirror de configuración se debe realizar un safety backup de la información desde el servidor de telefonía número 1. Es posible especificar qué información se debe incluir en el safety backup (las carpetas /eri_sn/mirror y /etc/opt/eri_sn son obligatorias) y también en qué dispositivo se va a escribir esta información para lo cual se puede usar cualquier dispositivo. Para el caso de grabadores de cinta también es posible especificar si la cinta se debe rebobinar antes y después de que el safety 6 backup se haya realizado. Para configurar estas opciones modificar el archivo /etc/opt/eri_sn/safety_backup.conf. Para iniciar un safety backup se debe seguir el siguiente procedimiento: 1) Asegurarse de que se realizan tanto el backup de datos como el mirror de configuración 2) En el servidor 1, cambiar usuario a root 3) Abrir en un editor el fichero /etc/opt/eri_sn/safety_backup.conf 4) Comprobar los valores para los parámetros Device y Rewind. Actualizar si fuera necesario 5) Comprobar la información en la línea Include. necesario Actualizar si fuera 6) Guardar el fichero 7) Ejecutar el script de safety backup por medio del comando (este comando se debe ejecutar desde Linux con el usuario root): eri_sn_safety_backup Para restaurar desde un safety backup se debe seguir el siguiente procedimiento: 1) Copiar el safety backup en el servidor de telefonía número 1 2) En el servidor 1, cambiar la carpeta de trabajo a / (directorio raíz). NOTA: Es muy importante cambiar la carpeta de trabajo a / (raíz) para evitar que el safety backup sea restaurado en una carpeta errónea. El safety backup se restaurará siempre en la carpeta actual de trabajo (de acuerdo al resultado del comando pwd de Linux) 3) Es posible buscar las diferencias entre el safety backup y el sistema de ficheros mediante el comando: tar -d --file=xxx (el directorio de trabajo debe ser / ) donde xxx es el nombre del fichero de safety backup. 5) Para restaurar todos los ficheros desde el backup y sobreescribir los existentes, utilizar el comando: tar -x -p --overwrite -v --file=xxx 6) Restaurar el mirror de configuración desde el servidor de telefonía número 1. Para más información ver sección 4 7 7) Reiniciar el servicio xinetd en todos los servidores de telefonía. Utilizar el comando: /etc/init.d/xinetd restart 8) Reiniciar el servicio nfsserver en todos los servidores de telefonía que gestionen media gateways del tipo EMG. Utilizar el comando: /etc/init.d/nfsserver restart 9) Restaurar los backup de datos. Para más información ver sección 3 10) Para coordinar el sistema, introducir el comando: start -system. 11) Para reiniciar el sistema, introducir el comando: restart -system. 6 PC-Regen PC-Regen es una aplicación de PC que permite volcar en unos ficheros los parámetros de programación de un sistema de telefonía. Es decir, todos aquellos datos que se han introducido mediante comandos en línea o por medio de las aplicaciones de gestión (Manager Telephony System y Manager Provisioning) que han generado unos datos de programación en el sistema. PC-Regen no vuelca datos como por ejemplo, el fichero de licencias o las mismas unidades de programa que deben ser restaurados aparte. PC-Regen se utiliza en los procesos de migración desde MD110 a MX-ONE o bien en procesos de actualización de versiones de MX-ONE, de tal manera que es capaz de volcar los datos de los sistemas y versiones actuales y regenerarlos en el formato de la nueva versión que se acaba de instalar. Pero PC-Regen se puede utilizar, también, como complemento o alternativa a los procedimientos de backup descritos hasta ahora en este documento. En este documento solo se describen los procedimientos para guardar y recuperar los datos de programación de un sistema de telefonía cuyas versiones de origen y destino son las mismas. Para efectuar las operaciones descritas en los siguientes capítulos, se necesita un ordenador con PC-Regen y una herramienta de transferencia de ficheros entre un sistema basado en Windows (el ordenador) a otro (el servidor de telefonía) basado en Linux. 8 Para generar los datos de PC-Regen se debe seguir el siguiente procedimiento: 1) Disponer del programa PC-Regen en un ordenador con Windows y configurarlo de acuerdo a la versión de MX-ONE de la que se quieran obtener los datos, seleccionando una carpeta de origen de los datos y una carpeta de destino de los datos (más adelante se explica el uso de cada una de las carpetas). 2) En el programa pulsar sobre “Data Gen” y a continuación en “Start” para generar el script de obtención de datos. 3) Crear en MX-ONE un directorio donde se almacenarán los archivos de configuración generados en el proceso. Se crea el directorio con el comando: mkdir /home/eri_sn_admin/Documents/PCREGEN_SOURCE 4) Transferir los archivos DATA.TXT, racep2.bat y pu_add_info.bat desde el ordenador a la carpeta PCREGEN_SOURCE en el sistema MX-ONE. DATA.TXT se encuentra en la carpeta seleccionada en PC_Regen como origen de los datos (paso 1). Los archivos racep2.bat y pu_add_info.bat se encuentran en C:\Program Files\Aastra\PC-RegenforMX-ONE\PCRegen. 5) Ejecutar el PC-Regen en MX-ONE con la siguiente secuencia de comandos (desde la Shell de Linux y con el usuario “root”): 9 cd /home/eri_sn_admin/Documents/PCREGEN_SOURCE chmod +x DATA.txt dos2unix DATA.txt source DATA.txt | tee log_source.txt 6) Comprobar en el archivo log_source.txt que todos los comandos se han ejecutado adecuadamente. 7) Transferir todos los archivos de la carpeta PCREGEN_SOURCE del sistema MX-ONE a la carpeta establecida como origen de los datos en PC-Regen (paso 1). Para introducir en el sistema los datos de PC-Regen se debe seguir el siguiente procedimiento: 1) Disponer del programa PC-Regen en un ordenador con Windows y configurarlo de acuerdo a la versión de MX-ONE de la que se han obtenido los datos y la versión de MX-ONE en la se van a introducir los datos (puede ser igual o superior a la versión del sistema del que se han obtenido los datos). Seleccionar la carpeta de origen de los datos y una carpeta de destino donde se generarán los archivos para introducir los datos en el sistema. 10 2) En el programa pulsar sobre “Regeneration” y a continuación en “Start” para generar el script de generación de datos y los archivos con los datos a generar. 3) Crear en MX-ONE un directorio donde se almacenarán los archivos de configuración generados en el proceso. Se crea el directorio con el comando: mkdir /home/eri_sn_admin/Documents/PCREGEN_TARGET 4) Transferir todos los archivos de la carpeta de destino de los datos en PC-Regen (paso 1) al directorio PCREGEN_TARGET del sistema MXONE. 5) Ejecutar el PC-Regen en MX-ONE con la siguiente secuencia de comandos (desde la Shell de Linux y con el usuario “root”): cd /home/eri_sn_admin/Documents/PCREGEN_TARGET chmod +x REGENCMD.TXT dos2unix * source REGENCMD.TXT | tee log_target.txt 6) Comprobar en el archivo log_target.txt que todos los comandos se han ejecutado adecuadamente. 7) Realizar un backup de los datos del sistema con el comando: data_backup 7 Programación de tareas (backups automáticos) Incluir los comandos de backup (data_backup, config_mirror, y eri_sn_safety_backup) en la tabla de comandos programados del servidor de telefonía número 1, crontab, para activar el backup automático del sistema MX-ONE. Para editar la tabla de crontab ejecutar como root el comando: crontab -e Añadir las líneas que determinen cuándo ejecutar los comandos programados. Los primeros 5 campos especifican cuándo ejecutar el comando y el campo restante determina qué comando ejecutar (ver ejemplos más adelante). Se recomienda permitir al menos 30 minutos entre diferentes trabajos. Los campos deben estar separados por un espacio como mínimo. 11 Utilizar una línea de encabezamiento (comenzando con #) para que la información sea más sencilla de leer. Asegurarse de que el archivo siempre acaba con un retorno de carro. Una vez acabada la configuración del archivo de crontab, guardarlo y cerrar el editor. Crontab instala automáticamente la nueva tabla con los comandos programados a menos que detecte algún error en el formato del archivo, en cuyo caso indicará la existencia de este error para poder solucionarlo. Ejemplo 1: Realizar un backup de datos cada noche a las 01:30. Ejemplo 2: Realizar un backup de datos cada lunes (primer día de la semana) y cada viernes (quinto día de la semana) a las 22:00. Crear un mirror de configuración cada viernes a las 23:00. Ejemplo 3: Realizar un backup de datos cada noche a las 02:00. Crear un mirror de configuración cada domingo por la noche (séptimo día de la semana) a las 02:30. Hacer un safety backup cada domingo por la noche a las 03:00. 12