xolyu.mariadb

mariadb

Instala y configura el servidor de base de datos MariaDB. Crea bases de datos y usuarios.

Requisitos

  • Paquete del sistema python3-mysqldb – para los módulos de MySQL de Ansible mysql_user y mysql_db.

Para asegurar automáticamente los paquetes, consulta la variable php_ensure_requirements.

Dependencias

Variables del Rol

  • mariadb_ensure_requirements
    Permite la instalación de los paquetes listados en la sección de requisitos.
    Tipo: bool
    Valor por defecto: no

  • mariadb_enabled_on_startup
    Define si el servicio de MariaDB debería estar habilitado.
    Tipo: bool
    Valor por defecto: yes

  • mariadb_secure_installation
    Define si se debe ejecutar la sección de "instalación segura", similar al script "secure_installation" de MariaDB.
    Opciones: on_install, always, never
    Valor por defecto: on_install

  • mariadb_config_style
    Define el estilo de configuración.
    single_cnf significa que solo se llena el archivo global mariadb.cnf, sin tocar los archivos de inclusión, mientras que included_cnf asegura la existencia del directorio mariadb.conf.d y gestiona los archivos incluidos además de una configuración mínima de mariadb.cnf. Con none no se realiza ninguna configuración.
    Opciones: single_cnf, included_cnf, none
    Valor por defecto: single_cnf

  • mariadb_root_username
    Nombre de usuario del usuario root de MariaDB. Normalmente debería ser root.
    Tipo: str
    Valor por defecto: root

  • mariadb_root_password
    Contraseña para el usuario root de MariaDB.
    Tipo: str
    Valor por defecto: indefinido

  • mariadb_root_auth_by_unix_socket
    Define si el complemento de autenticación unix_socket está activado para el usuario root o no.
    Tipo: bool
    Valor por defecto: yes

  • mariadb_root_home
    Directorio home del usuario root. Este valor solo se usa si se utiliza la contraseña de root sin autenticación unix_socket, por lo que el archivo .my.cnf con el nombre de usuario y la contraseña de autenticación se guarda en el directorio home de root.
    Tipo: str
    Valor por defecto: /root

  • mariadb_root_auth_update
    Los métodos de autenticación para root se establecen durante la instalación o cuando esta variable está configurada en true.
    En el caso de autenticación con contraseña, esto significa que solo necesita estar presente una vez durante la instalación, pero no más después, o solo si se cambia.
    Tipo: bool
    Valor por defecto: no

  • mariadb_admin_username
    Nombre de usuario de un usuario administrador, además del usuario root.
    Esto podría ser un usuario administrador para Ansible, para que Ansible pueda realizar cambios administrativos en la base de datos sin tener que actuar como root.
    Tipo: str
    Valor por defecto: indefinido

  • mariadb_admin_password
    Contraseña del usuario administrador.
    Tipo: str
    Valor por defecto: indefinido

  • mariadb_admin_sysuser
    Nombre de usuario del sistema para el usuario desde el cual se debe usar la base de datos como administrador.
    Tipo: str
    Valor por defecto: indefinido

  • mariadb_admin_home
    Directorio home del usuario del sistema. El archivo .my.cnf con los datos de autenticación del usuario administrador de la base de datos se guarda en este directorio.
    Tipo: str
    Valor por defecto: indefinido

  • mariadb_config
    Describe la configuración para MariaDB, organizada en archivos individuales en caso de included_cnf.
    Tipo: Dict de Dict de Dict
    Valor por defecto: ver defaults/main.yml

    mariadb_config:
      {cnf_file}:
        $state: present  # present, disabled, absent
        {section}:
          {option}: {value}
    
    • cnf_file: Nombre del archivo (sin extensión) en el directorio mariadb.conf.d (ver variable mariadb_configs_dir).
      Nombres especiales:
      • global_cnf se usa para la configuración del archivo global mariadb.cnf, en caso de un estilo de configuración included_cnf.
      • single_cnf se usa como base para el único archivo (global) mariadb.cnf, en caso de un estilo de configuración single_cnf.
    • section: La sección INI en el archivo de configuración de MariaDB.
      Nombres especiales:
      • $state es el estado del archivo de configuración. El valor por defecto es present, más opciones disabled y absent.
      • $header se imprime en la parte superior de todas las secciones en el archivo cnf, pero no se convierte automáticamente en comentario.
    • option: Opción dentro de la sección.
    • value: Valor para la opción.
      Valores especiales:
      • Si el valor es una lista, la opción se repite para cada elemento de la lista.
      • $set o una cadena vacía (longitud == 0) significa que la opción se establece sin un valor.
      • $unset significa que la opción no estará presente en el archivo cnf.
      • $var(VAR_NAME) significa que se realiza una búsqueda para la variable VAR_NAME en el momento de la evaluación.
  • mariadb_config_extra_1, mariadb_config_extra_2, mariadb_config_extra_3
    Exactamente lo mismo que mariadb_config. Estas variables permiten enriquecer la configuración adicionalmente sin necesidad de redefinir todo. Las variables adicionales sobrescriben los valores previamente definidos, con un número más alto teniendo prioridad sobre un número más bajo.
    Si un valor que está definido previamente se va a eliminar, esto se puede hacer usando el valor especial $unset.
    Valor por defecto: indefinido

  • mariadb_packages
    Lista de paquetes a instalar para el servidor MariaDB.
    Tipo: Lista de str
    Valor por defecto: depende del sistema operativo, ver vars/[familia-SO].yml

  • mariadb_config_file
    Ruta del archivo global mariadb.cnf.
    Tipo: str
    Valor por defecto: depende del sistema operativo, ver vars/[familia-SO].yml

  • mariadb_configs_dir
    Ruta del directorio de inclusión para los archivos cnf.
    Tipo: str
    Valor por defecto: depende del sistema operativo, ver vars/[familia-SO].yml

  • mariadb_socket
    Ruta del archivo de socket de la instancia del servidor MariaDB.
    Tipo: str
    Valor por defecto: depende del sistema operativo, ver vars/[familia-SO].yml

  • mariadb_pid_file
    Ruta del archivo pid de la instancia del servidor MariaDB.
    Tipo: str
    Valor por defecto: depende del sistema operativo, ver vars/[familia-SO].yml

  • mariadb_bind_address
    Dirección de enlace para el servidor MariaDB.
    Se usa en la configuración por defecto con el valor $var(...).
    Tipo: str
    Valor por defecto: 127.0.0.1

  • mariadb_datadir
    Se usa para asegurar el directorio de datos con los permisos.
    En caso de cambiar de la configuración predeterminada, debe añadirse a la configuración, por ejemplo, datadir: $var(mariadb_datadir).
    Tipo: str
    Valor por defecto: /var/lib/mysql

  • mariadb_encoding
    Configuraciones de codificación para la configuración de MariaDB.
    Se usa en la configuración por defecto con el valor $var(...).
    Tipo: str
    Valor por defecto: utf8mb4

  • mariadb_collation
    Configuraciones de ordenación para la configuración de MariaDB.
    Se usa en la configuración por defecto con el valor $var(...).
    Tipo: str
    Valor por defecto: utf8mb4_general_ci

  • mariadb_databases
    DESCRIPCIÓN
    Tipo: Lista de Diccionarios
    Valor por defecto: []

    mariadb_databases:
      - name: example
        encoding: utf8
        collation: utf8_general_ci
        state: present  # present, absent
    
  • mariadb_users
    DESCRIPCIÓN
    Tipo: Lista de Diccionarios
    Valor por defecto: []

    mariadb_users:
      - name: example
        host: 'localhost'
        password: TOP_secret
        priv: '*.*:USAGE'
        state: present  # present, absent
        append_privs: no  # no, yes
        encrypted: no  # no, yes
    

Ejemplo de Playbook

Ejemplos de playbooks que utilizan y configuran el rol.

Licencia

Licencia Pública General GNU v3.0

Información del Autor

Xolyu.

Acerca del proyecto

MariaDB installation and configuration

Instalar
ansible-galaxy install xolyu.mariadb
Licencia
gpl-3.0
Descargas
1.6k
Propietario