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 Ansiblemysql_user
ymysql_db
.
Para asegurar automáticamente los paquetes, consulta la variable php_ensure_requirements
.
Dependencias
- Colección
Community.Mysql
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 globalmariadb.cnf
, sin tocar los archivos de inclusión, mientras queincluded_cnf
asegura la existencia del directoriomariadb.conf.d
y gestiona los archivos incluidos además de una configuración mínima demariadb.cnf
. Connone
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 serroot
.
Tipo: str
Valor por defecto:root
mariadb_root_password
Contraseña para el usuario root de MariaDB.
Tipo: str
Valor por defecto: indefinidomariadb_root_auth_by_unix_socket
Define si el complemento de autenticaciónunix_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ónunix_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 entrue
.
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: indefinidomariadb_admin_password
Contraseña del usuario administrador.
Tipo: str
Valor por defecto: indefinidomariadb_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: indefinidomariadb_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: indefinidomariadb_config
Describe la configuración para MariaDB, organizada en archivos individuales en caso deincluded_cnf
.
Tipo: Dict de Dict de Dict
Valor por defecto: ver defaults/main.ymlmariadb_config: {cnf_file}: $state: present # present, disabled, absent {section}: {option}: {value}
cnf_file
: Nombre del archivo (sin extensión) en el directoriomariadb.conf.d
(ver variablemariadb_configs_dir
).
Nombres especiales:global_cnf
se usa para la configuración del archivo global mariadb.cnf, en caso de un estilo de configuraciónincluded_cnf
.single_cnf
se usa como base para el único archivo (global) mariadb.cnf, en caso de un estilo de configuraciónsingle_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 espresent
, más opcionesdisabled
yabsent
.$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 variableVAR_NAME
en el momento de la evaluación.
mariadb_config_extra_1
,mariadb_config_extra_2
,mariadb_config_extra_3
Exactamente lo mismo quemariadb_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: indefinidomariadb_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].ymlmariadb_config_file
Ruta del archivo global mariadb.cnf.
Tipo: str
Valor por defecto: depende del sistema operativo, ver vars/[familia-SO].ymlmariadb_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].ymlmariadb_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].ymlmariadb_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].ymlmariadb_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.
ansible-galaxy install xolyu.mariadb