GuillaumeSmaha.gluu-setup

Ansible Gluu: Configuración del rol

gluu-setup es un rol de Ansible para instalar fácilmente un servidor Gluu, sus módulos y el certificado.

En modo clúster, el rol instalará la clave SSH para permitir el acceso por parte del administrador del clúster, distribuirá certificados públicos entre todos los servidores, actualizará el servidor LDAP para aceptar conexiones externas y actualizará la configuración para usar todos los servidores LDAP.

Para usar las funcionalidades del modo clúster en este rol, todos los servidores Gluu deben estar en el grupo gluu-servers y el Administrador del Clúster de Gluu debe estar en el grupo gluu-cluster-manager.

Historia

El servidor de gestión de autenticación y acceso a API de código abierto de Gluu permite a las organizaciones ofrecer inicio de sesión único, autenticación fuerte y centralización.

Requisitos

Para poder desplegar, necesitarás:

  • Ansible en tu máquina de despliegue
  • También necesitas instalar esta dependencia de Python:
    • dnspython
$ pip install -r requirements.txt

Instalación

gluu-setup es un rol de Ansible distribuido globalmente a través de Ansible Galaxy. Para instalar el rol gluu-setup, puedes usar el siguiente comando.

$ ansible-galaxy install GuillaumeSmaha.gluu-setup

Actualización

Si deseas actualizar el rol, necesitas pasar el parámetro --force al instalar. Por favor, revisa el siguiente comando:

$ ansible-galaxy install --force GuillaumeSmaha.gluu-setup

Variables del rol

vars:

  # ===================================
  # Gluu en un solo nodo
  # ===================================

  # Define una versión personalizada del paquete a instalar.
  # Para obtener una lista de versiones de paquetes disponibles, visita: https://gluu.org/docs/ce/
  gluu_version: 3.1.7

  # Define el nombre de host utilizado por Gluu.
  gluu_hostname: '{{ ansible_ssh_host }}'

  # Dirección IP del host.
  gluu_ip: '{{ lookup("dig", "{{ gluu_internal_hostname }}.") | regex_replace("^NXDOMAIN$", "") | default(gluu_internal_hostname, true) }}'

  # Lista de módulos a instalar
  gluu_modules:
  - oxauth
  - oxtrust
  - ldap
  - httpd

  # Diccionario de certificados para Gluu.
  # Puedes agregar la clave que desees.
  # Cada clave debe contener la clave `publicKey` y opcionalmente la clave `privateKey` con la ruta de los archivos de certificado.
  gluu_certificates:

  # Tipo de servidor LDAP
  gluu_ldap_server: openldap

  # Certificado personalizado para el servidor y cliente LDAP
  gluu_ldap_certificate:
    cert_ca_file:
    cert_file:
    cert_key_file:

  # Archivo para personalizar el esquema LDAP
  gluu_ldap_custom_schema_file: custom_schema.json.default

  # Puedes establecer la contraseña LDAP.
  gluu_ldap_password:

  # Base inum de Gluu
  gluu_inum_base:

  # inum de la organización
  gluu_inum_org:

  # inum del aparato
  gluu_inum_appliance:

  # Propiedades para los certificados auto-generados (autofirmados)
  gluu_certificate_properties:
    org_name: Organización
    country_code: CA
    city: Montreal
    state: QC

  # ===================================
  # Gluu en múltiples nodos (clúster)
  # ===================================

  # Define si el servidor está en un clúster.
  gluu_cluster: False

  # Cuando gluu_cluster = True, define si hay servidores LDAP múltiples con replicación.
  gluu_cluster_ldap_replication: False

  # Cuando gluu_cluster = True, este parámetro permite establecer como configuración predeterminada otra configuración de host.
  gluu_install_from: main

  # Cuando gluu_cluster = True, puedes establecer los nombres de host de los servidores LDAP externos de Gluu.
  gluu_ldap_hostname:

Despliegue

Para desplegar, necesitas seguir algunos pasos:

  • Crea un nuevo archivo hosts. Consulta la documentación de inventario de ansible si necesitas ayuda.
  • Crea un nuevo playbook para desplegar tu aplicación, por ejemplo, deploy.yml
  • Configura las variables del rol (ver Variables del rol)
  • Incluye el rol GuillaumeSmaha.gluu-setup como parte de un play
  • Ejecuta el playbook de despliegue

ansible-playbook -i hosts deploy.yml

Si todo se ha configurado correctamente, este comando instalará el Administrador del Clúster de Gluu en el host.

Ejemplo de Playbook

En la carpeta de ejemplo, puedes consultar un proyecto de ejemplo que muestra cómo desplegar.

Para ejecutarlo, necesitarás tener Vagrant y el rol instalado. Consulta https://www.vagrantup.com para más información sobre Vagrant y nuestra sección de Instalación.

$ cd example
$ vagrant plugin install vagrant-lxc
$ vagrant plugin install vagrant-hostmanager
$ vagrant up --provider=lxc
$ ansible-galaxy install GuillaumeSmaha.gluu-setup
$ ansible-playbook -i env/ubuntu deploy.yml
$ ansible-playbook -i env/centos deploy.yml

Accede a Gluu yendo a:

https://gluu-setup-ubuntu/

o

https://gluu-setup-centos/

Proyectos de ejemplo

Puedes encontrar un ejemplo completo de un playbook aquí:

https://github.com/GuillaumeSmaha/ansible-gluu-playbook

Acerca del proyecto

Gluu Setup for RHEL/CentOS and Ubuntu

Instalar
ansible-galaxy install GuillaumeSmaha.gluu-setup
Licencia
gpl-3.0
Descargas
205
Propietario