gecoscc instalar - guadalinex-archive/guadalinex-v9 GitHub Wiki
Instalación de GECOS CC
El proceso de instalación de GECOS Centro de Control se ha probado en CentOS 6.5. Recuerde que la máquina debe tener unos requisitos mínimos.
Despliegue de GECOS CC
Tras instalar CentOS 6.5 minimal, el despliegue de GECOS CC se realiza casi en su totalidad de forma automática con un script. Siga los pasos que se indican:
-
Paso 1: Descargue CentOS 6.5 minimal (Mirror CICA)
-
Paso 2: Instale CentOS 6.5 minimal en la máquina que vaya a ser el servidor. Recuerde configurar la red durante la instalación.
-
Paso 3: Tras la instalación y el reinicio, ejecute los siguientes comandos como
root
para comprobar que las herramientas mínimas están presentes:-
yum update
-
yum install wget curl which tar
-
-
Paso 4: Inicie la instalación de todo el entorno con el script automático, usando el siguiente comando como
root
:wget https://raw.githubusercontent.com/gecos-team/gecoscc-chef-server-repo/master/scripts/gecoscc-chef-server-install.sh -O - | bash
(también puede usarcurl -L
, en vez dewget
)
El proceso durará unos minutos. Esto dejará configurado e iniciado (incluso tras reiniciar) en la máquina un chef-server
en https://localhost:443/ y gecoscc-ui
en http://localhost:80/. En la siguiente sección se crea un usuario administrador, se añaden a gecoscc-ui
las políticas y los nodos que hubiera en Chef si es el caso.
Nota: Si durante la ejecución del script hay un error al reiniciar nginx
, vuelva a ejecutar dicho script y continuará por donde lo dejó.
Inicialización
Es posible que tras la instalación tenga que hacer algunas acciones para inicializar GECOS Centro de Control, como creación de un administrador, importación de políticas y quizás otros datos. A continuación se explican.
Nota: la versión de gecosccui
mostrada en este manual puede ser distinta a la que haya instalado en su servidor, simplemente indique la suya.
Roles de administrador
Existen varios roles de administrador que trabajan con GECOS Centro de Control. Cree los que considere necesarios:
-
Superadministrador: posee todos los privilegios, puede crear otros administradores desde la interfaz y asignarles unidades organizativas. Puede crearlo con el siguiente comando (nótese la opción
-s
de superusuario)./opt/gecosccui-0.5.0/bin/pmanage /opt/gecosccui-0.5.0/gecoscc.ini create_chef_administrator -u nuevo_admin -e [email protected] -a admin -s -k /etc/chef-server/admin.pem -n
-
Administrador (tipo I): puede controlar las unidades organizativas que le haya asignado un superadministrador y aplicar políticas.
-
Administrador (tipo II): puede vincular puestos de trabajo al servidor GECOS a través del Asistente de Configuración de GECOS (pero no controla los puestos desde la interfaz).
El superadministrador puede crear estos tres tipos de administradores desde la interfaz de GECOS Centro de Control.
Importación de políticas
Para importar las políticas existentes en chef-server
haga lo siguiente:
/opt/gecosccui-0.5.0/bin/pmanage /opt/gecosccui-0.5.0/gecoscc.ini import_policies -a admin -k /etc/chef-server/admin.pem
Importación de máquinas
El paso de importar las máquinas, organizaciones y usuarios de chef-server
a gecoscc-ui
en caso de que existan es opcional, ya que en una instalación limpia no debería haber nada:
/opt/gecosccui-0.5.0/bin/pmanage /opt/gecosccui-0.5.0/gecoscc.ini import_chef_nodes -a admin -k /etc/chef-server/admin.pem
Acceder a GECOS CC
Para acceder a GECOS Centro de Control, abra el navegador y cargue la dirección http://localhost:80/. En la pantalla de bienvenida e identificación que se muestra, rellene el nombre y contraseña del administrador que creó en la sección anterior.
Si lo necesita, chef-server
se encuentra en https://localhost:443/.
Solución de problemas
Si le surgen problemas durante la instalación, compruebe lo siguiente:
-
Tiene al menos 2 GB de memoria RAM, ya que el proceso de compilación es costoso.
-
Tiene al menos 20 GB libres de disco duro, por el mismo motivo anterior.
-
No ha habido ningún problema de red que haya afectado a la descarga de algún paquete. Si ha sucedido, relance el script.
-
Si ha fallado nginx, relance el script.
Importador de Directorio Activo
Si en la red de su organización se utiliza Directorio Activo, puede importar la estructura de usuarios, grupos, impresoras, etc, a GECOS Centro de Control fácilmente. Para ello, debe utilizar el script ad-export.ps1
que encontrará en el proyecto gecos-ad-sync
(es importante que el directorio Pscx
con las dependencias esté en la misma ruta de ejecución que el script).
El script importa los siguientes elementos: unidades organizativas, usuarios, grupos, ordenadores, impresoras compartidas y carpetas compartidas. La ejecución del script la puede realizar de dos modos, con una importación puntual o programando una tarea para que se realice de manera periódica.
Configuración del script
En las primeras líneas del script dispone de unas variables de configuración. Abra el script y rellénelas con los valores adecuados.
Variable | Posible valor | Significado |
---|---|---|
$GecosCCAPIUrl |
“http://gecoscc/api/ad_import/” | La URL de la API de importación. Será la IP/dominio más /api/ad_import/ . |
$GecosCCAPIUsername |
“ad-import” | Un administrador de GECOS CC. |
$GecosCCAPIPassword |
“ad-import” | La contraseña de dicho administrador. |
$GecosCCAPIRootOU |
“root” o “id” | El identificador de la unidad organizativa en la que importar los elementos. Si prefiere la unidad raiz utilice “root”, si prefiere otra, extraiga el identificador a partir de su URL (http://gecos-server/#ou/id-ou-padre/ou/id ). |
Opción 1: Importación puntual
Para la importación puntual siga estos pasos:
-
Paso 1: Abra la terminal de Powershell.
-
Paso 2: Vaya a la ruta donde tenga el script
ad-export.ps1
con el comandocd
, por ejemplo:cd C:\ruta_del_script\
. -
Paso 3: Ejecute el script con la instrucción
.\ad-export.sh
(nótese el punto antes de la barra).
Opción 2: Importación periódica
Para hacer la importación periódicamente haga lo siguiente:
-
Paso 1: Abra «Administrador del servidor» desde el menú «Equipo» y «Administrar».
-
Paso 2: En el árbol de la izquierda, despliegue «Configuración» y entre en «Programador de tareas».
-
Paso 3: Escoja «Crear tarea» en la lista de acciones de la derecha.
-
Paso 4: En la pestaña «General» rellene el nombre y la descripción, por ejemplo
ad-export
yscript de importación de AD para GECOSCC
, respectivamente. -
Paso 5: En la pestaña «Desencadenadores» añada uno nuevo e indique la frecuencia y/o fecha y hora.
-
Paso 6: En la pestaña «Acciones» cree una nueva y elija el script
ad-export.ps1
junto con la ruta donde se encuentre.
Firma de scripts
Si es necesario por defecto firmar los scripts para Powershell y eso le está impidiendo ejecutarlo, puede desactivarlo indicando la siguiente instrucción en la terminal: set-executionpolicy unrestricted
Configuración avanzada
GECOS CC puede configurarse a través del fichero /opt/gecosccui-0.5.0/gecoscc.ini
(ver plantilla) aunque se trata de opciones avanzadas que no debería cambiar a menos que tenga conocimientos adecuados.
Parámetro | Valor | Descripción |
---|---|---|
chef.url | https://localhost/ |
Conexión con Chef. |
mongo_uri | mongodb://localhost:27017/gecoscc |
Conexión con Mongo. |
session.data_dir | %(here)s/sessions/data |
Datos de sesión. |
session.lock_dir | %(here)s/sessions/lock |
Datos de sesión. |
pyramid.xyz | true/false/lang |
Especialmente interesante es pyramid.default_locale_name, que es el idioma en el que aparecerá la interfaz. |
firstboot_api.organization_name | Organization name |
El nombre de su organización. |
firstboot_api.media | %(here)s/../gecoscc/media/users |
Ruta donde se guardan datos de usarios y firstboot, especialmente los ficheros PEM. |
workers | 1 |
Número de hilos. |
timeout | 600 |
Tiempo tras el cual la conexión expira. |
level | INFO/DEBUG |
Nivel de verbosidad en los logs. |
Conexiones
GECOS Centro de Control establece distintas conexiones a través de sus APIs internas y externas (ver lista). A continuación se describen las externas.
API | Ruta | Descripción |
---|---|---|
ad_import.py | /api/ad-import/ |
Importación de datos de Active Directory. |
admin_users.py | /auth/config/ |
Las unidades organizativas del administrador, variables, etc, en JSON. |
chef_status.py | /chef/status/ |
Devuelve el estado de las tareas para la pestaña de eventos y cola. |
public_computers.py | /computers/list/ |
Lista de puestos existentes. |
public_ous.py | /ou/list/ |
Lista de unidades organizativas. |
register_computer.py | /register/computer/ |
Para vincular el puesto de trabajo al Centro de Control. |
register_user.py | /register/user/ |
Para vincular un usuario al Centro de Control en su primer login. |
Además cada puesto de trabajo se comunica con el Centro de Control a través de su chef-client.
Migración
Misma versión
Para migrar a una misma versión, por ejemplo por un cambio de servidor en el que ya cuente con una instalación limpia, tiene que conservar los siguientes datos y moverlos a su nueva ubicación.
Backup Chef
Para hacer un backup y restaurar los datos de Chef puede utilizar knife-backup.
Backup Mongo
Utilice mongodump -d gecoscc
para crear un dump, comprímalo y muévalo. Para importarlo utilice mongorestore directorio
.
Otros ficheros
Copie el directorio /opt/gecoscc/media/users
que contiene los ficheros PEM. Si ha hecho cambios en el fichero de configuración /opt/gecosccui-0.5.0/gecoscc.ini
o cualquier otro y quiere conservarlos, cópielos también.
Actualización a una versión superior
Cuando aparezca una versión superior de GECOS Centro de Control quizás le interese realizar una actualización para disfrutar de las mejoras. El script de actualización descargará la versión más reciente disponible de GECOS Centro de Control. Lance el script automático usando el siguiente comando como root
:
wget https://raw.githubusercontent.com/gecos-team/gecoscc-chef-server-repo/master/scripts/gecoscc-chef-server-install.sh -O - | bash
(también puede usarcurl -L
, en vez dewget
)
El proceso durará unos minutos. Si el modelo de datos interno ha cambiado, se proporcionará un script que haga la conversión para que sea transparente para el usuario.