Procedimiento de implementación paso a paso
Esta página describe el método automatizado para implementar Oracle19c en el almacenamiento NetApp ONTAP .
Implementación de AWX/Tower Base de datos Oracle 19c
1. Cree el inventario, el grupo, los hosts y las credenciales para su entorno
Esta sección describe la configuración del inventario, los grupos, los hosts y las credenciales de acceso en AWX/Ansible Tower que preparan el entorno para consumir soluciones automatizadas de NetApp .
-
Configurar el inventario.
-
Vaya a Recursos → Inventarios → Agregar y haga clic en Agregar inventario.
-
Proporcione el nombre y los detalles de la organización y haga clic en Guardar.
-
En la página Inventarios, haga clic en el inventario creado.
-
Si hay variables de inventario, péguelas en el campo de variables.
-
Vaya al submenú Grupos y haga clic en Agregar.
-
Proporcione el nombre del grupo para ONTAP, pegue las variables del grupo (si hay alguna) y haga clic en Guardar.
-
Repita el proceso para otro grupo de Oracle.
-
Seleccione el grupo ONTAP creado, vaya al submenú Hosts y haga clic en Agregar nuevo host.
-
Proporcione la dirección IP de la IP de administración del clúster ONTAP , pegue las variables del host (si hay alguna) y haga clic en Guardar.
-
Este proceso debe repetirse para el grupo Oracle y el nombre de host/IP de administración de host(s) Oracle.
-
-
Crear tipos de credenciales. Para las soluciones que involucran ONTAP, debe configurar el tipo de credencial para que coincida con las entradas de nombre de usuario y contraseña.
-
Vaya a Administración → Tipos de credenciales y haga clic en Agregar.
-
Proporcione el nombre y la descripción.
-
Pegue el siguiente contenido en Configuración de entrada:
-
fields:
- id: username
type: string
label: Username
- id: password
type: string
label: Password
secret: true
- id: vsadmin_password
type: string
label: vsadmin_password
secret: true
-
Pegue el siguiente contenido en la configuración del inyector:
extra_vars:
password: '{{ password }}'
username: '{{ username }}'
vsadmin_password: '{{ vsadmin_password }}'
-
Configurar las credenciales.
-
Vaya a Recursos → Credenciales y haga clic en Agregar.
-
Ingrese el nombre y los detalles de la organización para ONTAP.
-
Seleccione el tipo de credencial personalizado que creó para ONTAP.
-
En Detalles de tipo, ingrese el nombre de usuario, la contraseña y vsadmin_password.
-
Haga clic en Volver a Credencial y haga clic en Agregar.
-
Ingrese el nombre y los detalles de la organización de Oracle.
-
Seleccione el tipo de credencial de la máquina.
-
En Detalles de tipo, ingrese el nombre de usuario y la contraseña para los hosts de Oracle.
-
Seleccione el método de escalada de privilegios correcto e ingrese el nombre de usuario y la contraseña.
-
2. Crear un proyecto
-
Vaya a Recursos → Proyectos y haga clic en Agregar.
-
Introduzca el nombre y los detalles de la organización.
-
Seleccione Git en el campo Tipo de credencial de control de fuente.
-
ingresar
https://github.com/NetApp-Automation/na_oracle19c_deploy.git
como la URL de control de origen. -
Haga clic en Guardar.
-
Es posible que el proyecto necesite sincronizarse ocasionalmente cuando cambie el código fuente.
-
3. Configurar host_vars de Oracle
Las variables definidas en esta sección se aplican a cada servidor y base de datos Oracle individual.
-
Ingrese los parámetros específicos de su entorno en el siguiente formato host_vars o variables de host de Oracle integradas.
|
Los elementos en azul deben cambiarse para que coincidan con su entorno. |
Configuración de VARS del host
######################################################################
############## Host Variables Configuration ##############
######################################################################
# Add your Oracle Host
ansible_host: "10.61.180.15"
# Oracle db log archive mode: true - ARCHIVELOG or false - NOARCHIVELOG
log_archive_mode: "true"
# Number of pluggable databases per container instance identified by sid. Pdb_name specifies the prefix for container database naming in this case cdb2_pdb1, cdb2_pdb2, cdb2_pdb3
oracle_sid: "cdb2"
pdb_num: "3"
pdb_name: "{{ oracle_sid }}_pdb"
# CDB listener port, use different listener port for additional CDB on same host
listener_port: "1523"
# CDB is created with SGA at 75% of memory_limit, MB. Consider how many databases to be hosted on the node and how much ram to be allocated to each DB. The grand total SGA should not exceed 75% available RAM on node.
memory_limit: "5464"
# Set "em_configuration: DBEXPRESS" to install enterprise manager express and choose a unique port from 5500 to 5599 for each sid on the host.
# Leave them black if em express is not installed.
em_configuration: "DBEXPRESS"
em_express_port: "5501"
# {{groups.oracle[0]}} represents first Oracle DB server as defined in Oracle hosts group [oracle]. For concurrent multiple Oracle DB servers deployment, [0] will be incremented for each additional DB server. For example, {{groups.oracle[1]}}" represents DB server 2, "{{groups.oracle[2]}}" represents DB server 3 ... As a good practice and the default, minimum three volumes is allocated to a DB server with corresponding /u01, /u02, /u03 mount points, which store oracle binary, oracle data, and oracle recovery files respectively. Additional volumes can be added by click on "More NFS volumes" but the number of volumes allocated to a DB server must match with what is defined in global vars file by volumes_nfs parameter, which dictates how many volumes are to be created for each DB server.
host_datastores_nfs:
- {vol_name: "{{groups.oracle[0]}}_u01", aggr_name: "aggr01_node01", lif: "172.21.94.200", size: "25"}
- {vol_name: "{{groups.oracle[0]}}_u02", aggr_name: "aggr01_node01", lif: "172.21.94.200", size: "25"}
- {vol_name: "{{groups.oracle[0]}}_u03", aggr_name: "aggr01_node01", lif: "172.21.94.200", size: "25"}
-
Complete todas las variables en los campos azules.
-
Después de completar el ingreso de variables, haga clic en el botón Copiar en el formulario para copiar todas las variables que se transferirán a AWX o Tower.
-
Regrese a AWX o Tower y vaya a Recursos → Hosts, y seleccione y abra la página de configuración del servidor Oracle.
-
En la pestaña Detalles, haga clic en editar y pegue las variables copiadas del paso 1 en el campo Variables debajo de la pestaña YAML.
-
Haga clic en Guardar.
-
Repita este proceso para cualquier servidor Oracle adicional en el sistema.
4. Configurar variables globales
Las variables definidas en esta sección se aplican a todos los hosts, bases de datos y el clúster ONTAP de Oracle.
-
Ingrese los parámetros específicos de su entorno en el siguiente formato de variables o variables globales integradas.
|
Los elementos en azul deben cambiarse para que coincidan con su entorno. |
#######################################################################
###### Oracle 19c deployment global user configuration variables ######
###### Consolidate all variables from ontap, linux and oracle ######
#######################################################################
###########################################
### Ontap env specific config variables ###
###########################################
#Inventory group name
#Default inventory group name - 'ontap'
#Change only if you are changing the group name either in inventory/hosts file or in inventory groups in case of AWX/Tower
hosts_group: "ontap"
#CA_signed_certificates (ONLY CHANGE to 'true' IF YOU ARE USING CA SIGNED CERTIFICATES)
ca_signed_certs: "false"
#Names of the Nodes in the ONTAP Cluster
nodes:
- "AFF-01"
- "AFF-02"
#Storage VLANs
#Add additional rows for vlans as necessary
storage_vlans:
- {vlan_id: "203", name: "infra_NFS", protocol: "NFS"}
More Storage VLANsEnter Storage VLANs details
#Details of the Data Aggregates that need to be created
#If Aggregate creation takes longer, subsequent tasks of creating volumes may fail.
#There should be enough disks already zeroed in the cluster, otherwise aggregate create will zero the disks and will take long time
data_aggregates:
- {aggr_name: "aggr01_node01"}
- {aggr_name: "aggr01_node02"}
#SVM name
svm_name: "ora_svm"
# SVM Management LIF Details
svm_mgmt_details:
- {address: "172.21.91.100", netmask: "255.255.255.0", home_port: "e0M"}
# NFS storage parameters when data_protocol set to NFS. Volume named after Oracle hosts name identified by mount point as follow for oracle DB server 1. Each mount point dedicates to a particular Oracle files: u01 - Oracle binary, u02 - Oracle data, u03 - Oracle redo. Add additional volumes by click on "More NFS volumes" and also add the volumes list to corresponding host_vars as host_datastores_nfs variable. For multiple DB server deployment, additional volumes sets needs to be added for additional DB server. Input variable "{{groups.oracle[1]}}_u01", "{{groups.oracle[1]}}_u02", and "{{groups.oracle[1]}}_u03" as vol_name for second DB server. Place volumes for multiple DB servers alternatingly between controllers for balanced IO performance, e.g. DB server 1 on controller node1, DB server 2 on controller node2 etc. Make sure match lif address with controller node.
volumes_nfs:
- {vol_name: "{{groups.oracle[0]}}_u01", aggr_name: "aggr01_node01", lif: "172.21.94.200", size: "25"}
- {vol_name: "{{groups.oracle[0]}}_u02", aggr_name: "aggr01_node01", lif: "172.21.94.200", size: "25"}
- {vol_name: "{{groups.oracle[0]}}_u03", aggr_name: "aggr01_node01", lif: "172.21.94.200", size: "25"}
#NFS LIFs IP address and netmask
nfs_lifs_details:
- address: "172.21.94.200" #for node-1
netmask: "255.255.255.0"
- address: "172.21.94.201" #for node-2
netmask: "255.255.255.0"
#NFS client match
client_match: "172.21.94.0/24"
###########################################
### Linux env specific config variables ###
###########################################
#NFS Mount points for Oracle DB volumes
mount_points:
- "/u01"
- "/u02"
- "/u03"
# Up to 75% of node memory size divided by 2mb. Consider how many databases to be hosted on the node and how much ram to be allocated to each DB.
# Leave it blank if hugepage is not configured on the host.
hugepages_nr: "1234"
# RedHat subscription username and password
redhat_sub_username: "xxx"
redhat_sub_password: "xxx"
####################################################
### DB env specific install and config variables ###
####################################################
db_domain: "your.domain.com"
# Set initial password for all required Oracle passwords. Change them after installation.
initial_pwd_all: "netapp123"
-
Complete todas las variables en los campos azules.
-
Después de completar el ingreso de variables, haga clic en el botón Copiar en el formulario para copiar todas las variables que se transferirán a AWX o Tower en la siguiente plantilla de trabajo.
5. Configurar y ejecutar la plantilla de trabajo.
-
Crear la plantilla de trabajo.
-
Vaya a Recursos → Plantillas → Agregar y haga clic en Agregar plantilla de trabajo.
-
Introduzca el nombre y la descripción
-
Seleccione el tipo de trabajo; Ejecutar configura el sistema basándose en un libro de estrategias y Verificar realiza una ejecución en seco de un libro de estrategias sin configurar realmente el sistema.
-
Seleccione el inventario, el proyecto, el libro de jugadas y las credenciales correspondientes para el libro de jugadas.
-
Seleccione all_playbook.yml como el libro de jugadas predeterminado que se ejecutará.
-
Pegue las variables globales copiadas del paso 4 en el campo Variables de plantilla debajo de la pestaña YAML.
-
Marque la casilla Preguntar al iniciar en el campo Etiquetas de trabajo.
-
Haga clic en Guardar.
-
-
Iniciar la plantilla de trabajo.
-
Vaya a Recursos → Plantillas.
-
Haga clic en la plantilla deseada y luego haga clic en Iniciar.
-
Cuando se le solicite durante el inicio etiquetas de trabajo, escriba requirements_config. Es posible que necesite hacer clic en la línea Crear etiqueta de trabajo debajo de requirements_config para ingresar la etiqueta de trabajo.
-
|
requirements_config garantiza que tenga las bibliotecas correctas para ejecutar los otros roles. |
-
Haga clic en Siguiente y luego en Iniciar para comenzar el trabajo.
-
Haga clic en Ver → Trabajos para supervisar el progreso y los resultados del trabajo.
-
Cuando se le solicite durante el inicio etiquetas de trabajo, escriba ontap_config. Es posible que necesites hacer clic en la línea Crear "Etiqueta de trabajo" justo debajo de ontap_config para ingresar la etiqueta de trabajo.
-
Haga clic en Siguiente y luego en Iniciar para comenzar el trabajo.
-
Haga clic en Ver → Trabajos para supervisar el resultado y el progreso del trabajo.
-
Una vez completada la función ontap_config, ejecute nuevamente el proceso para linux_config.
-
Vaya a Recursos → Plantillas.
-
Seleccione la plantilla deseada y luego haga clic en Iniciar.
-
Cuando se le solicite durante el inicio el tipo de etiquetas de trabajo en linux_config, es posible que deba seleccionar la línea Crear "etiqueta de trabajo" justo debajo de linux_config para ingresar la etiqueta de trabajo.
-
Haga clic en Siguiente y luego en Iniciar para comenzar el trabajo.
-
Seleccione Ver → Trabajos para supervisar el progreso y los resultados del trabajo.
-
Una vez completada la función linux_config, ejecute nuevamente el proceso para oracle_config.
-
Vaya a Recursos → Plantillas.
-
Seleccione la plantilla deseada y luego haga clic en Iniciar.
-
Cuando se le solicite durante el inicio etiquetas de trabajo, escriba oracle_config. Es posible que necesites seleccionar la línea Crear "Etiqueta de trabajo" justo debajo de oracle_config para ingresar la etiqueta de trabajo.
-
Haga clic en Siguiente y luego en Iniciar para comenzar el trabajo.
-
Seleccione Ver → Trabajos para supervisar el progreso y los resultados del trabajo.
6. Implementar una base de datos adicional en el mismo host de Oracle
La parte de Oracle del libro de estrategias crea una única base de datos de contenedor de Oracle en un servidor Oracle por cada ejecución. Para crear bases de datos de contenedores adicionales en el mismo servidor, complete los siguientes pasos.
-
Revisar las variables host_vars.
-
Regrese al paso 2: Configurar Oracle host_vars.
-
Cambie el SID de Oracle a una cadena de nombre diferente.
-
Cambie el puerto de escucha a un número diferente.
-
Cambie el puerto EM Express a un número diferente si está instalando EM Express.
-
Copie y pegue las variables de host revisadas en el campo Variables de host de Oracle en la pestaña Detalles de configuración de host.
-
-
Inicie la plantilla de trabajo de implementación con solo la etiqueta oracle_config.
-
Inicie sesión en el servidor Oracle como usuario Oracle y ejecute los siguientes comandos:
ps -ef | grep ora
Esto enumerará los procesos de Oracle si la instalación se completó como se esperaba y se inició Oracle DB -
Inicie sesión en la base de datos para verificar la configuración de la base de datos y los PDB creados con los siguientes conjuntos de comandos.
[oracle@localhost ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Thu May 6 12:52:51 2021 Version 19.8.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.8.0.0.0 SQL> SQL> select name, log_mode from v$database; NAME LOG_MODE --------- ------------ CDB2 ARCHIVELOG SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 CDB2_PDB1 READ WRITE NO 4 CDB2_PDB2 READ WRITE NO 5 CDB2_PDB3 READ WRITE NO col svrname form a30 col dirname form a30 select svrname, dirname, nfsversion from v$dnfs_servers; SQL> col svrname form a30 SQL> col dirname form a30 SQL> select svrname, dirname, nfsversion from v$dnfs_servers; SVRNAME DIRNAME NFSVERSION ------------------------------ ------------------------------ ---------------- 172.21.126.200 /rhelora03_u02 NFSv3.0 172.21.126.200 /rhelora03_u03 NFSv3.0 172.21.126.200 /rhelora03_u01 NFSv3.0
Esto confirma que dNFS está funcionando correctamente.
-
Conéctese a la base de datos a través del escucha para verificar la configuración del escucha de Oracle con el siguiente comando. Cambie al puerto de escucha y al nombre del servicio de base de datos adecuados.
[oracle@localhost ~]$ sqlplus system@//localhost:1523/cdb2_pdb1.cie.netapp.com SQL*Plus: Release 19.0.0.0.0 - Production on Thu May 6 13:19:57 2021 Version 19.8.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Enter password: Last Successful login time: Wed May 05 2021 17:11:11 -04:00 Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.8.0.0.0 SQL> show user USER is "SYSTEM" SQL> show con_name CON_NAME CDB2_PDB1
Esto confirma que el escucha de Oracle está funcionando correctamente.
¿A dónde acudir para obtener ayuda?
Si necesita ayuda con el kit de herramientas, únase a la"Canal de Slack de soporte de la comunidad de automatización de soluciones de NetApp" y busca el canal de automatización de soluciones para publicar tus dudas o consultas.