Post on 13-Sep-2020
Gestión de la sala de telecomunicaciones - Tareas #5687
Tareas # 5678 (Cerrada): Hacia una solución de virtualización
Tareas # 5680 (Cerrada): Plan de migración
Tareas # 5681 (Cerrada): Replicar los servicios de ed en nazz
Migrar servidor Web (Apache) y sus aplicaciones (owncloud, zabbix, etc)
05/18/2017 03:20 PM - Victor Alem
Status: Cerrada Start date: 05/18/2017
Priority: Normal Due date: 06/20/2017
Assignee: Docentes - Admin Redes % Done: 100%
Category: Estimated time: 0.00 hour
Target version: Spent time: 7.00 hours
Description
Investigar e implementar la migración de estos servicios.
History
#1 - 05/25/2017 01:44 PM - Mauricio Barrios
- Status changed from En curso to Resuelta
- Assignee changed from Mauricio Barrios to Docentes - Admin Redes
- % Done changed from 0 to 100
Introducción:
Migración de servicios webs alojados en Ed.
La migración de todos los servicios alojados en Ed a el servidor Nazz es necesaria temporalmente para la implementación de la virtualización del servidor
Ed el cual es el propósito principal, separar servicios en maquinas virtuales dentro de un mismo servidor es un mecanismo habitual en los servidores
multiservicios ya que los mismos agregan un mecanismo mas de seguridad, orden y optimización de los recursos que el hardware dispone.
Migración de apache desde Ed a Nazz:
Ya que todos los servicios web a migrar dependen de apache2 para su funcionamiento se comenzó por ver si estaba instalado el servidor apache en Nazz
y su estado, al ingresar a la carpeta /etc se puede apreciar que existe la carpeta apache2 con los archivos relacionados al servicio.
Luego se procedió a ingresar el comando:
$ /etc/init.d/apache2 status
el cual nos devuelve el estado actual del servicio, indicando que esta activo y corriendo, entonces ahora podemos migrar los servicios dependientes.
Migración de Owncloud:
Comenzamos por averiguar si Owncloud no estaba previamente instalado en el servidor Nazz, y en caso de que lo estuviese verificar que las versiones
son iguales o al menos sean compatibles con la configuración existente en Ed. Para averiguar la versión actual de Owncloud simplemente basta con
entrar al dominio en un navegador y ver su status:
https://nube.tadmin.cure.edu.uy/status.php
Donde se puede ver que es la versión 9.0.2.2.
El servicio OwnCloud esta ligado a apache2, PHP5 y a una base de datos en MySQL, en este caso apache2 y PHP5 ya estaban previamente instalados
en Nazz y la base de datos sera migrada desde Ed con toda la configuración adecuada para que funcione.
Para averiguar si existe o no instalada alguna versión de Owncloud en Nazz basta con ingresar el siguiente comando como root:
$ a2ensite
Este comando nos indica cuales son los servicios de apache2 que pueden ser habilitados, por lo tanto si en la salida del mismo aparece Owncloud
sabremos que ya existe alguna versión instalada , lo cual no fue el caso, por lo que procedimos a instalar la misma versión que en Ed.
Para esto obtenemos el paquete de la pagina oficial de Owncloud.
$ wget https://download.owncloud.org/community/owncloud-9.0.2.tar.bz2
Luego descomprimimos y movemos la carpeta resultante al directorio /var/www con los siguientes comandos:
$ tar -xjf owncloud-9.0.2.tar.bz2
$mv -r owncloud /var/wwwl
En necesario habilitar los siguientes módulos en apache2 :
$a2enmod rewrite
$a2enmod headers
$a2enmod env
01/02/2021 1/3
$a2enmod dir
$a2enmod mime
Recargar los módulos de apache:
$service apache2 reload
Asignar permisos al usuario de apache www-data sobre los archivos de OwnCloud:
$chown -r www-data /var/www/owncloud
Por ultimo es necesario reiniciar el servicio:
$service apache2 restart.
Migración Zabbix:
Verificamos en Nazz que ésta aplicación no estuviera instalada.
Luego procedimos a instalarlo, siguiendo los siguientes pasos:
Descargamos el paquete que nos configurará los repositorios para instalar la versión de Zabbix que ya estaba instalado en Ed:
$wget http://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.0-1+trusty_all.deb
-Actualizamos la lista de los paquetes disponibles:
$sudo apt-get update
-Lo instalamos:
$ dpkg -i zabbix-release_3.0-1+trusty_all.deb
-Luego instalamos el servidor y el frontend:
$sudo apt-get install zabbix-server-mysql zabbix-frontend-php
-Configuramos la conexión a la base de datos MySQL de Zabbix:
$sudo nano /etc/zabbix/zabbix_server.conf
-Verificamos dentro de dicho archivo que los siguientes campos estuvieran descomentados, y le asignamos una contraseña:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
-Se procedió a reiniciar el servicio:
$sudo service zabbix-server restart
-Se configuro la zona horaria en el siguiente archivo:
/etc/zabbix/apache.conf
-Descomentamos y cambiamos el campo php_value date.timezone de la siguiente manera:
php_value date.timezone America/Montevideo
En el archivo /etc/php5/apache2/php.ini descomentamos la siguiente línea:
always_populate_raw_post_data = -1
-Luego procedimos a reiniciar Apache:
$sudo service apache2 restart
-Para verificar que funcionara y para poder acceder a la interfaz web de Zabbix, tuvimos que habilitar el servicio estando ubicado en el directorio
etc/apache2/sites.available :
$a2enconf zabbix
-Luego estando fuera del servidor Ed, tuvimos que agregar en el archivo /etc/hosts la siguiente línea :
164.73.226.10 zabbix
-Luego nos dirigimos a la interfaz web para empezar la configuración del frontend:
https://IP_Servidor/zabbix
-Se abrirá una ventana, en la cual debemos dar clic en Next.
-Cuando nos aparezca la ventana con la configure DB connection, hay que ingresar una contraseña para el usuario Zabbix, y nuevamente damos clic en
Next.
-Luego seleccionamos Next en todas las ventanas que aparezcan, hasta llegar a seleccionar Finish.
-Luego se puede ingresar a Zabbix con el usuario Admin, y la contraseña configurada anteriormente.
En este punto solo hace falta tener las mismas configuraciones que en Ed para que los servicios queden funcionando por lo que se realizo una copia de
los archivos en las carpetas "conf-available" y "sites-available" de la carpeta "/etc/apache2" en el servidor ed hacia nazz a través de los comandos:
$sudo scp -r /etc/apache2/conf-available/ root@164.73.226.10:/etc/apache2/
$sudo scp -r /etc/apache2/sites-available/ root@164.73.226.10:/etc/apache2/
Esta carpetas contienen los servicios y sus configuraciones disponibles.
Por ultimo debemos habilitar las configuraciones que estaban en los archivos que se copiaron, se procedió a realizar el comando:
a2ensite
01/02/2021 2/3
El cual nos devuelve los posibles servicios a habilitar, de los cuales habilitamos los cuales nos parecieron útiles (drupal, owncloud, wordpress,
www.tadmin.cure.edu.uy y zabbix)
Esto se realiza haciendo el comando anterior y el servicio a querer habilitar (por ej.):
a2ensite zabbix
Lo cual habilitaría el servicio, en este caso, zabbix en base a los archivos en las carpetas anteriormente copiadas. Modificando los archivos en
/etc/apache2/sites-enabled.
Observación: no se habilitó owncloud-le-ssl ya que pasar los certificados de una maquina a otra no asegura su funcionamiento, ademas dicho certificado
esta vencido.
Después de habilitar los servicios seleccionados, se procede a ejecutar el comando:
"service apache2 reload"
Finalmente para hacer efectivo los cambios realizados, se ejecuto:
service apache2 restart
Verificación:
Para la verificación de dichos servicios simplemente basta con conectarse a sus respectivos dominios, para realizar esto sin ser redirigidos a sus
dominios originales en Ed se puede modificar el archivo /etc/hosts de la maquina donde se realizara la verificación o cambiar directamente en el DNS,
sustituyendo la IP de ED por la de Nazz.
#2 - 05/25/2017 05:47 PM - Victor Alem
- Assignee changed from Docentes - Admin Redes to Juan Martín Alegre
Paso para verificar.
#3 - 06/20/2017 07:05 PM - Juan Martín Alegre
- Assignee changed from Juan Martín Alegre to Docentes - Admin Redes
Al cabo de realizar las correspondientes verificaciones de funcionamiento, se han encontrado errores de los cuales se desconoce el origen de los mismos.
Por lo cual se procederá a reinstalar dichos servicios en el servidor nuevo.
#4 - 07/05/2017 08:11 PM - Victor Alem
- Due date set to 06/20/2017
- Status changed from Resuelta to Cerrada
Juan Martín Alegre escribió:
Al cabo de realizar las correspondientes verificaciones de funcionamiento, se han encontrado errores de los cuales se desconoce el origen de los
mismos. Por lo cual se procederá a reinstalar dichos servicios en el servidor nuevo.
Juan, hubiese merecido saber qué errores aparecían y donde miraron para intentar resolver el problema. Eso es tarea de un buen sysadmin. Por más que
no hayan resuelto el problema, el tiempo dedicado y el camino recorrido, vale la pena saberlo.
Cerramos la tarea.
01/02/2021 3/3