klewan.ansible_role_oracle_manage_dbstate
Rol de Ansible: oracle-manage-dbstate
Gestionar el estado de la base de datos Oracle (inicio/parada).
Sistemas Operativos Soportados:
- RedHat
- CentOS
- OracleLinux
Requisitos
Este rol usa el rol oracle
.
Se requiere que se definan las siguientes variables:
oracle_manage_dbstate_oracle_home
-> ORACLE_HOMEoracle_manage_dbstate_oracle_sid
-> ORACLE_SIDoracle_manage_dbstate_command
-> comando de inicio/parada junto con opciones
Variables del Rol
Las variables disponibles se enumeran a continuación, junto con valores predeterminados (ver defaults/main.yml
):
# ORACLE_HOME
oracle_manage_dbstate_oracle_home:
# ORACLE_SID
oracle_manage_dbstate_oracle_sid:
# comando de inicio/parada a ejecutar
oracle_manage_dbstate_command: # ver 'oracle_manage_dbstate_commands'
# comandos aceptables de inicio/parada
oracle_manage_dbstate_commands:
- 'SHUTDOWN IMMEDIATE'
- 'STARTUP'
- 'STARTUP NOMOUNT'
- 'STARTUP MOUNT'
- 'STARTUP RESTRICT'
- 'STARTUP MOUNT RESTRICT'
- 'STARTUP UPGRADE'
# afirmar que el comando de inicio/parada es válido
oracle_manage_dbstate_verify_command: true
# imprimir salida del comando sqlplus
oracle_manage_dbstate_print_command_output: false
# manejar errores de sqlplus, es decir, ejecutar 'whenever sqlerror exit 1'
oracle_manage_dbstate_handle_sqlplus_errors: true
# comando para manejar errores de sqlplus
oracle_manage_dbstate_sqlplus_sqlerror_command: "{% if oracle_manage_dbstate_handle_sqlplus_errors %}whenever sqlerror exit 1{% else %}{% endif %}"
Ejemplo de Playbook
- nombre: Gestionar el estado de la base de datos Oracle (montar bases de datos)
hosts: ora-servers
gather_facts: true
become: true
become_user: '{{ oracle_user }}'
tareas:
- import_role:
name: oracle-gatherinfo-gi
tags:
- oracle-gatherinfo-gi
- import_role:
name: oracle-gatherinfo-databases
tags:
- oracle-gatherinfo-databases
- include_role:
name: oracle-manage-dbstate
vars:
oracle_manage_dbstate_oracle_home: '{{ _oracle_homes_backup_outer_item.oracle_home }}'
oracle_manage_dbstate_oracle_sid: '{{ _oracle_homes_backup_outer_item.instance_name }}'
oracle_manage_dbstate_command: "STARTUP MOUNT"
oracle_manage_dbstate_handle_sqlplus_errors: true
with_items:
- "{{ oracle_databases }}"
loop_control:
label: "[ORACLE_HOME: {{ _oracle_homes_backup_outer_item.oracle_home }}]"
loop_var: _oracle_homes_backup_outer_item
when: _oracle_homes_backup_outer_item.instance_name == 'ORCL'
tags:
- oracle-manage-dbstate
Dentro de vars/main.yml
o group_vars/..
o host_vars/..
:
#-------------------------------------------------
# sobrescribe las variables del rol 'oracle-manage-dbstate'
#-------------------------------------------------
# imprimir salida del comando sqlplus
oracle_manage_dbstate_print_command_output: true
# manejar errores de sqlplus, es decir, ejecutar 'whenever sqlerror exit 1'
oracle_manage_dbstate_handle_sqlplus_errors: false
Licencia
GPLv3 - Licencia Pública General GNU v3.0
Información del Autor
Este rol fue creado en 2018 por Krzysztof Lewandowski.
Instalar
ansible-galaxy install klewan.ansible_role_oracle_manage_dbstate
Licencia
gpl-3.0
Descargas
81
Propietario