• Inicio
  • Novedades
  • Academia SAP
  • FAQ
  • Blog
  • Contacto
S4PCADEMY_Logo
Twitter Linkedin Instagram
S4PCADEMY_Logo
Twitter Linkedin Instagram
SAP S/4HANA

Automatización de GCP: implementación de VM con un solo clic con la instalación de la instancia de base de datos de SAP HANA

By s4pcademy 


Abstracto

Este documento se centra en enumerar los detalles técnicos y la secuencia de pasos que se necesitan para lograr la automatización de la implementación de la máquina virtual de Google Cloud junto con la instalación de la instancia de base de datos de SAP HANA mediante los scripts de Terraform y Ansible. La intención no es enseñar sobre terraform o ansible scripting o SAP HANA, sino compartir mi experiencia práctica asumiendo que el lector tiene conocimientos básicos de terraform/ansible y SAP Basis. También se puede leer como una extensión de mi blog anterior. Automatización del Despliegue de Aplicaciones SAP en Google Cloud https://blogs.sap.com/2021/09/01/automation-of-sap-applications-deployment-in-google-cloud/

La forma convencional de tener instalada una instancia de la base de datos de SAP HANA es implementar la máquina virtual en función del dimensionamiento calculado mediante Google Console o Terraform/Google Deployment Manager como herramienta IaC con el sistema operativo subyacente identificado (SLES/RHEL), crear los puntos de montaje en el sistema operativo. capa y asigne el almacenamiento necesario para los respectivos puntos de montaje de HANA DB, descargue los medios de SAP HANA, descomprímalos y establezca la propiedad y los permisos de los archivos de instalación y, al final, inicie la instalación interactiva de HANA con entradas manuales intermitentes cuando sea necesario. se solicita. Usando ambas herramientas, es decir, Terraform y Ansible, con pocos intentos y pruebas iniciales, pudimos crear con éxito un script de un solo clic para realizar esta tarea de una sola vez. Probamos este script de automatización con ambos sistemas operativos, SUSE Linux Enterprise Server, SLES y Red Hat Enterprise Linux, RHEL, que son sistemas operativos certificados para SAP HANA DB en Google Cloud. https://cloud.google.com/solutions/sap/docs/sap-hana-os-support.

Tareas de automatización

Dividimos la tarea en cuatro pasos principales como se muestra a continuación. En los primeros dos pasos, estamos capturando todas las entradas obligatorias que se necesitan para la creación de VM y la instalación de la instancia de SAP HANA DB. Aparentemente, estas entradas/valores, pasados ​​al script durante la ejecución de las variables definidas, se almacenan en una plantilla que acepta el entorno de tiempo de ejecución de Terraform/Ansible. Los siguientes pasos se encargan de armar la lógica de automatización y luego implementar el script.


Preparación

Paso 1 – Como primer paso, decidimos los parámetros de entrada para la creación de VM, como el tipo de máquina, el nombre de host, la imagen del sistema operativo, los discos, la red, la región y la zona y otros detalles obligatorios necesarios para poner en marcha una VM en GCP. Grabó estos valores de parámetros en un archivo de parámetros de entrada. La pantalla de muestra se muestra a continuación:

#-------INPUT VARIABLES FOR TERRAFORM RESOURCE PROVISIONING----------------
#Instance#
instance_name  =sap-hana-vm
project        =sap-automation-112233
vm_network     =default
zone           =us-central1-a
boot_disk_size =20
image          =rhel-sap-cloud/rhel-8-4-sap-ha
machine_type   =n1-highmem-32
device_name    =sap-hana-vm-OS
disktype       =pd-balanced

#address#
address_name =hana-ip
address_type =EXTERNAL
region       =us-central1
network_tier =STANDARD


Paso 2 – El valor de los parámetros de entrada para la instalación de HANA DB, como ID de base de datos, número de instancia, uso del sistema – producción/prueba/desarrollo, contraseña de usuario del SISTEMA para SYSTEMDB y Tenant DB, etc., se capturan en el mismo archivo input.patameters en el repositorio de origen del proyecto . Muestra dada a continuación:

#Enter SAP HANA System ID: var6
sap_hana_system_id =HDB
#Enter Instance Number [00]: var7
sap_hana_instance_number =00
#Index | System Usage | Description
#-----------------------------------------------------------------------------
 #1     | production   | System is used in a production environment
 #2     | test         | System is used for testing, not production
 #3     | development  | System is used for development, not production
 #4     | custom       | System usage is neither production, test nor development
#Select System Usage / Enter Index [4]: var9
sap_hana_system_usage =3
#Enter System Administrator (sidadm) Password: var17
system_administrator_password =<passwd>
#Confirm System Administrator (sidadm) Password: var18
confirm_system_adm_password =<passwd>
#Enter System Database User (SYSTEM) Password: var19
system_database_user_password =<passwd>
#Confirm System Database User (SYSTEM) Password: var20
confirm_system_db_user_password =<passwd>


Además de capturar los valores de entrada en el archivo de parámetros de entrada, también se realizan las siguientes tareas durante la preparación:

> Cálculo del almacenamiento necesario para cada punto de montaje de HANA /hana/data, /hana/logs, /hana/shared, /usr/sap

> Descargar los medios de instalación del servidor SAP HANA DB desde el portal de SAP y guardarlos en el depósito de almacenamiento de Google

Paso 3 – secuencias de comandos

El script de Terraform (.tf) se utiliza para la implementación de la máquina virtual (VM) y el script de Ansible (.yaml) se utiliza para la instalación de SAP HANA. Además de los scripts, también se están creando algunos archivos de soporte, como el archivo de entrada de parámetros, el archivo de clave de cuenta de servicio, etc.

Toda la lógica se construye aquí en este paso:

  • Los comandos de creación de VM se colocan en el script terraform (.tf) que se llama en main.sh
  • Los comandos de instalación de HANA DB se escriben en un script bash que, a su vez, se llama en un script ansible (.yaml)
  • Tejido de guiones terraform y ansible
  • Realización de tareas después de la creación de VM y antes de la instalación de HANA DB, como la creación de puntos de montaje y la descarga de archivos de instalación.

Necesitamos ejecutar solo main.sh y el resto de las tareas se ejecutarán dentro de él. El flujo de ejecución del script de un solo clic es así: .

main.sh
↓
main.tf
↓
hanadbinstall.yaml
↓
hanaddbinstall.sh (bash)


Paso 4: implementación

  • Abra el shell de la nube desde la consola de GCP, vaya a la ruta del repositorio donde se colocan todos los scripts de terraform y ansible. Inicie el main.sh

  • Obtendrá los valores de los parámetros del archivo de propiedades de entradas y creará la VM con entradas definidas
  • Después de la creación de la VM, extraerá los parámetros de entrada de instalación de la base de datos del archivo de propiedades de entrada y luego instalará los ejecutables de Ansible y llamará al archivo .yaml
  • Como siguiente paso, el script bash creará los puntos de montaje definidos en un disco adicional y etiquetará el almacenamiento requerido para cada punto de montaje, respectivamente.
  • Los comandos enumerados copiarán los archivos de instalación de HANA DB desde el depósito de almacenamiento de Google definido a la VM recién creada en el directorio especificado y la descomprimirán para tener listos los archivos ejecutables de instalación.
  • Como siguiente paso, iniciará la instalación de la base de datos de HANA llamando al comando hdblcm mientras asigna los valores de los parámetros de la base de datos obtenidos del archivo de parámetros con variables.
  • Una vez que se completa la instalación de la instancia de base de datos de HANA, la secuencia de comandos finaliza con el mensaje de eco que ingresó al final de la secuencia de comandos como «Instalación completada» y tendrá la VM implementada junto con la instancia de base de datos de SAP HANA instalada en ella.

Pruebas

Conéctese a la VM usando ssh y cambie al usuario sidadm. Verifique el estado de todos los servicios de HANA (daemon, servidor de nombres, preprocesador, servidor de índices, etc.) usando el comando sapcontrol. El estado VERDE indica que un servicio en particular está funcionando.


Otra forma de probar el estado de los servicios de la instancia de base de datos de HANA es conectar la base de datos de HANA mediante la herramienta front-end de SAP HANA «Hana Studio» con el sistema de usuario de base de datos. Compruebe el estado de los servicios de HANA (debe ser «Activo») en la pestaña «Horizontal» de la perspectiva Administrativa.

Conclusión

Ejecutamos este script con éxito tanto con el sistema operativo (SLES y RHEL) como con HANA DB versión 2.0 SP6 y nos llevó menos de 25 minutos implementar una VM de Linux con la instancia de SAP HANA DB instalada, en funcionamiento. Todo el proceso tomó alrededor de un 40% menos de tiempo en comparación con la instalación manual convencional.

Este script de automatización es bastante útil para activar la instancia de base de datos de SAP HANA para cualquier instalación estándar o cualquier escenario brownfield, reutilizable con cambios menores y se puede usar como plantilla para el modelo de fábrica.

Quisiera agradecer la gran ayuda brindada por mi colega Sudipta Kundu, desarrollador de la nube, al compilar y probar esos scripts de automatización.

Espero que este blog técnico lo ayude a comprender las diversas entradas, tareas y su secuencia para lograr la automatización de la instalación de la base de datos de SAP HANA junto con la implementación de la máquina virtual subyacente mediante secuencias de comandos terraform/ansible de una sola vez en Google Cloud Platform (GCP).

Por favor, siéntase libre de compartir sus valiosos comentarios.

Salud !!




Extienda la aplicación My Inbox Fiori para órdenes de compra y solicitudes de compra en S4 2024
Previo
Integración del complemento de pago digital de SAP con cobros y desembolsos de S/4HANA FS-CD
Siguiente

Madrid

Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010

México

Paseo de la Reforma 26
Colonia Juárez,  Cuauhtémoc
Ciudad de México 06600

Costa Rica

Real Cariari
Autopista General Cañas, 
San José, SJ 40104

Perú

Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073

Twitter Linkedin Instagram
Copyright 2022 | All Right Reserved.