Skip to content

sergioCaceresMC/ars-o

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Forma adecuada de uso para el despliegue inicial

0.5. Indicaciones previas: constantes

Previo a la ejecución del programa, es necesario que el usuario especifique la dirección IP_HOST desde la que se trabaja, asi como indicar en el flag de portabilidad si el sistema contiene o no la imagen necesaria en local. En caso de estar en laboratorios, este flag se debe poner como False.

También es necesario indicar usuario y contraseña del cliente para el correcto despliegue Estas configuraciones se deben hacer en const.py.

IP_HOST = "192.168.1.255"
IMG_PORTABLE_FLAG = True 
REMOTE_USER= "user_name"
REMOTE_PSSWRD= "abc_password"

1. Crear los servidores

Al ejecutar el comando create por primera vez, se creará la imagen de servidores necesaria para el funcionamiento del sistema. Este proceso puede tardar unos minutos. Si el sistema ya cuenta con una imagen válida, la usará directamente.

python3 pfinal2.py create 4

2. Configurar el sistema

Después de crear los servidores, se debe ejecutar el comando config para completar la creación de la base de datos y la instalación de HAProxy en el balanceador.

python3 pfinal2.py config

2.1. Llenar base de datos - opcional -

Para rellenar la base de datos con datos de prueba se ejecuta config seed que usará la semilla introducida en los servidores para rellenar la base de datos

python3 pfinal2.py config seed

Para rellenar la base de datos con datos de prueba específicos se ejecuta config seed <archivo> usará un archivo del equipo para generar datos de prueba. Esto puede fallar. No nos hacemos responsables del uso de un archivo con el formato incorrecto, se proporciona un ejemplo en el proyecto.

python3 pfinal2.py config seed ./ejemploSeeder.js

2.2. Configurar el sistema en remoto - opcional -

En caso de querer un despliegue en remoto se debe volver a ejecutar el comando config con el añadido remote seguido de la dirección IP de la máquina donde se desea ejecutar. De no especificarlo se usa la dirección 138.4.31.22, asociada a un ordenador de la universidad, con el riesgo de que este esté apagado.

python3 pfinal2.py config remote 138.4.31.25

3. Iniciar los servicios

Una vez realizada la configuración, al ejecutar el comando start se iniciarán correctamente todos los sistemas.

python3 pfinal2.py start

Añadir servidores extra

En caso de querer añadir más servidores se debe usar el comando add que creará los servidores apuntando al ecosistema en local. En caso de usar la configuración en remoto es necesario ejecutar config reconfig y luego start

1. Crear los servidores

Para crearlos se ejecuta el comando add que los crea y los configura para el despliegue en local. En caso de querer un despliegue en remoto pase al punto 2. Es necesario que después del add se haga un start.

python3 pfinal2.py add 4

2. Configurar en remoto

Para configurar los servidores nuevos sin volver a instalar y crear los remotos, ejecute config reconfig <ip> en ip debe escribir la dirección IP de la máquina que desea elegir.

python3 pfinal2.py config reconfig 138.4.31.25

Comandos disponibles

Comando Descripción
create Definido como: python pfinal2.py create <opt: num servidores>. Crea el número de servidores definido por el usuario, o 2 por defecto. La cabecera IP será 134.3.
add Definido como: python pfinal2.py add <opt: number>. Añade al entorno el número indicado de servidores, si no se indica, crea 1 por defecto.
delete Definido como: python pfina2.py delete <opt: servidor>. Borra todo el entorno o un servidor en específico si se indica.
config Definido como: python pfinal2.py config. Crea la base de datos y configura el balanceador y la base de datos. Es necesario ejecutarlo para que los servidores funcionen. En caso de configurar remote se debe agregar la dirección ip de la computadora objetivo python pfinal2.py config remote <ip-B>. En caso de querer rellenar la base de datos con una seed específica se usa la sintaxis python pfinal2.py config seed <opt: ruta de archivo>
help Definido como: python pfinal2.py help. Muestra las órdenes posibles.
list Definido como: python pfinal2.py list. Lista la información, se puede especificar mediante input si se quiere info detallada de alguno.
start Definido como: python pfinal2.py start <opt: servidor>. Arranca una máquina si se especifica, o todas las máquinas por defecto.
stop Definido como: python pfinal2.py stop <opt: servidor>. Detiene una máquina si se especifica, o todas las máquinas por defecto.
repair Definido como: python pfinal2.py repair <opt: boolean>. Vuelve a crear la ecosistema desde cero reparando posibles fallos en la creación de las imágenes del servidor. Este comando vuelve a ejecutar un create con la misma ip y el número de servidores que había en caché al momento de repararlo. Este proceso puede tardar porque vuelve a crear las imágenes.

About

práctica 2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors