Descripción general de la implementación de SAP S/4HANA

En este documento, se proporciona una descripción general de los sistemas SAP S/4HANA que puedes implementar con la herramienta de automatización de implementación guiada en Workload Manager y consideraciones adicionales para la implementación. Para obtener más información, consulta la arquitectura de referencia de SAP S/4HANA de Google Cloud.

Proceso de implementación de SAP S/4HANA

En la siguiente lista, se proporciona una descripción general de las diversas tareas que completa Workload Manager durante el proceso de implementación:

  • Habilita las APIs necesarias, si no están habilitadas en el proyecto.
  • Configura y aprovisiona la infraestructura necesaria para la implementación.
  • Configura el sistema operativo en las VMs.
  • Instala SAP S/4HANA.
  • Realiza una copia de seguridad completa de la base de datos de SAP HANA en un archivo.
  • Configura el clúster de SO de Pacemaker para la alta disponibilidad de SAP HANA, los equilibradores de carga necesarios y las verificaciones de estado (solo HA)
  • Habilita la replicación del sistema SAP HANA (HSR) para la alta disponibilidad.
  • Configura el clúster de SO de Pacemaker para la alta disponibilidad de la aplicación de SAP, los balanceadores de cargas requeridos y las verificaciones de estado.
  • Instala la aplicación de SAP seleccionada.
  • Inicia la base de datos de SAP HANA y la aplicación de SAP instalada.
  • Instala los siguientes agentes necesarios en las VMs:
    • Agente deGoogle Cloudpara SAP
    • SAP Host Agent

El resultado de una implementación exitosa es un sistema SAP S/4HANA vacío ("campo verde"). Para obtener más información sobre los próximos pasos después de una implementación correcta, consulta Tareas posteriores a la implementación de SAP S/4HANA.

Implementa con la consola de Google Cloud

Cuando eliges implementar tu carga de trabajo con la consola de Google Cloud, Workload Manager controla automáticamente la implementación de extremo a extremo, incluida la ejecución de secuencias de comandos de Terraform y Ansible, y los recursos de aprovisionamiento. También tienes acceso a todos los archivos subyacentes que se usan durante el proceso de implementación.

Workload Manager usa Infrastructure Manager para automatizar el proceso de implementación. Infrastructure Manager usa Cloud Build para inicializar Terraform y ejecutar otros comandos de Terraform. Luego, Cloud Build almacena los archivos de Terraform y el archivo de estado de Terraform en un bucket de Cloud Storage.

Para obtener más información sobre Infrastructure Manager, consulta la descripción general de Infrastructure Manager.

Además de los recursos de Compute Engine necesarios para tu carga de trabajo de SAP, Terraform implementa una VM de Ansible Runner que tiene acceso a otros recursos de la implementación. La VM de Runner ejecuta automáticamente las secuencias de comandos de Ansible que realizan más configuraciones de la infraestructura implementada, como la configuración del SO, la configuración del clúster de HA y la orquestación del proceso de instalación de la aplicación de SAP.

Arquitectura de alto nivel de la implementación de SAP S/4HANA

En esta sección, se proporciona una descripción general del sistema que se implementa cuando se implementa SAP S/4HANA con la herramienta de automatización de implementación guiada en Workload Manager. Ten en cuenta que la arquitectura exacta puede variar según la configuración que especificaste, y no todos los recursos implementados se incluyen en las cifras.

Además de estos recursos, también se implementa una VM temporal de Ansible Runner en la zona principal, que tiene acceso a otros recursos de la implementación. La VM de Ansible Runner ejecuta automáticamente las secuencias de comandos de Ansible que realizan una configuración adicional de la infraestructura implementada, incluida la configuración del SO, la configuración del clúster de HA y la orquestación del proceso de instalación de la aplicación de SAP.

Distribuido con alta disponibilidad

En la siguiente imagen, se muestra una implementación distribuida con alta disponibilidad en la que los clústeres de Linux se configuran en todas las zonas para ayudar a proteger contra fallas de componentes en una región determinada.

SAP S/4HANA distribuido con HA
SAP S/4HANA distribuido con arquitectura de alta disponibilidad

Arquitectura distribuida

En la siguiente figura, se muestra la arquitectura de SAP S/4HANA en una implementación distribuida.

SAP S/4HANA distribuido
Arquitectura distribuida de SAP S/4HANA

Diseño de disco de SAP HANA

En el siguiente diagrama, se muestra el diseño de disco de la base de datos de SAP HANA, que se aplica a las configuraciones distribuidas y distribuidas con alta disponibilidad.

El diseño de disco recomendado para SAP HANA en Google Cloud

Los discos descritos en el diseño de discos anterior se activan directamente en el sistema operativo como parte de los sistemas de archivos de SAP HANA requeridos. Estos discos no se usan como parte de los volúmenes lógicos creados a través de LVM. Por ejemplo, el resultado es similar al siguiente cuando ejecutas el comando df -h:

example-vm:~ # df -h | grep /dev/sd
    Filesystem                        Size  Used Avail Use% Mounted on
    /dev/sda3                          50G  4.3G   46G   9% /
    /dev/sda2                          20M  3.0M   17M  15% /boot/efi
    /dev/sda                           32G  293M   32G   1% /usr/sap
    /dev/sdc                          308G  164G  145G  54% /hana/data
    /dev/sdd                          128G   11G  118G   9% /hana/log
    /dev/sde                          256G   12G  245G   5% /hana/shared
    /dev/sdf                          256G   96G  161G  38% /hanabackup

Recursos creados durante la implementación

Workload Manager usa las siguientes Google Cloud APIs y servicios para la implementación de SAP S/4HANA.

Compute Engine

Instancias de VM

Las implementaciones de SAP S/4HANA incluyen recursos de Compute Engine para los siguientes componentes. Cuando configures VMs para estos componentes, solo podrás seleccionar aquellos tipos de máquinas certificados por SAP para que coincidan con los requisitos de tamaño para implementar S/4HANA.

  • Bases de datos de SAP HANA
  • ASCS: ABAP SAP Central Services
    • Contiene el servidor de mensajes y Enqueue Server, que se requieren en cualquier sistema SAP ABAP.
    • Se implementa en su propia instancia de VM en implementaciones de alta disponibilidad o en la instancia de VM que aloja PAS.
    • En las implementaciones de alta disponibilidad, un administrador de recursos de clústeres de Linux, como Pacemaker, administra los recursos de ASCS.
  • ERS: Enqueue Replication Server o Enqueue Replicator
    • Se implementa en implementaciones de alta disponibilidad para mantener una réplica de la tabla de bloqueo en caso de que algo suceda con la instancia de ASCS.
    • Lo gestiona un administrador de recursos de clústeres de Linux, como Pacemaker
  • PAS: servidor de aplicaciones principal.
    • El primer o único servidor de aplicaciones del sistema SAP.
  • AAS: servidor de aplicaciones adicional.
    • Por lo general, se implementa para el balanceo de cargas a nivel de las aplicaciones. También puedes instalar varios AAS para lograr una mayor disponibilidad desde la perspectiva de la capa de la aplicación. Si uno de los servidores de aplicaciones deja de funcionar, todas las sesiones de usuario conectadas a ese servidor finalizan, pero los usuarios pueden acceder nuevamente en el otro AAS del entorno.
    • En las configuraciones de alta disponibilidad, los servidores de aplicaciones se dividen de manera uniforme entre las zonas principal y secundaria.

Opciones de almacenamiento

Persistent Disk o Hyperdisk se usan para proporcionar capacidad de almacenamiento para las instancias de VM en tu implementación de SAP S/4HANA.

Los tamaños de disco de cada volumen se calculan automáticamente de acuerdo con las prácticas recomendadas para SAP S/4HANA para la máquina y los tipos de almacenamiento en bloque seleccionados.

En la siguiente tabla, se muestran los discos creados en una implementación de SAP S/4HANA.

Instancia de VM para lo siguiente: Disco Tipos admitidos*
Bases de datos de HANA boot Disco persistente SSD
Bases de datos de HANA /hana/data Disco persistente balanceado
Disco persistente SSD
Hyperdisk Extreme
Bases de datos de HANA /hana/log Disco persistente balanceado
Disco persistente SSD
Hyperdisk Extreme
Bases de datos de HANA /hana/shared Disco persistente balanceado
Disco persistente SSD
Bases de datos de HANA /usr/sap Disco persistente balanceado
Disco persistente SSD
Bases de datos de HANA /hanabackup Disco persistente balanceado
Disco persistente SSD
ASCS/ERS boot Disco persistente SSD
ASCS/ERS /usr/sap Disco persistente balanceado
PAS/AAS boot Disco persistente SSD
PAS/AAS /usr/sap Disco persistente balanceado
PAS/AAS export-interfaces Disco persistente balanceado

*Para la base de datos de SAP HANA, puedes seleccionar disco persistente equilibrado, disco persistente SSD o Hyperdisk Extreme si es compatible con el tipo de máquina seleccionado. Si seleccionas Disco persistente equilibrado o Disco persistente SSD, todos los discos de la implementación serán del tipo seleccionado. Si seleccionas Hyperdisk Extreme, solo los volúmenes /data y /log usarán Hyperdisk Extreme, y los otros volúmenes de disco usarán el disco persistente SSD.

Redes

VPC compartida

Se puede usar una VPC compartida de un proyecto host para la implementación en un proyecto de servicio. Si seleccionas VPC compartida, se crean los siguientes recursos de red en el proyecto host.

  • Reglas de firewall
  • La instancia de Filestore de la red
  • Reglas de reenvío

Reglas de firewall

Durante el proceso de implementación, Workload Manager crea automáticamente las reglas de firewall para permitir la comunicación necesaria entre las VMs de la implementación. En las configuraciones de alta disponibilidad, estas reglas de firewall también proporcionan acceso para realizar verificaciones de estado en los balanceadores de cargas que se crean en la subred especificada.

Se crean las siguientes reglas de firewall:

  • DEPLOYMENT_NAME-communication-firewall: Habilita la comunicación entre las instancias de VM en la implementación.
  • Ilb-firewall-ascs-DEPLOYMENT_NAME o Ilb-firewall-ers-DEPLOYMENT_NAME: Solo para configuraciones de alta disponibilidad. Habilita las verificaciones de estado que se usan en la conmutación por error de ASCS o ERS.
  • Ilb-firewall-db-DEPLOYMENT_NAME: Solo para configuraciones de alta disponibilidad. Habilita las verificaciones de estado que se usan en la conmutación por error de la base de datos de SAP HANA.

Cuando se usa una configuración de VPC compartida, estas reglas de firewall se crean en el proyecto host en el que se aloja la red que se comparte.

Balanceadores de cargas y reglas de reenvío

En las configuraciones de alta disponibilidad, se crean los siguientes balanceadores de cargas y reglas de reenvío:

  • DEPLOYMENT_NAME-ascs-service
    • DEPLOYMENT_NAME-ascs-forwarding-rule
  • DEPLOYMENT_NAME-db-service
    • DEPLOYMENT_NAME-db-forwarding-rule
  • DEPLOYMENT_NAME-ers-service
    • DEPLOYMENT_NAME-ers-forwarding-rule

Cloud DNS

Zonas de DNS

Durante el proceso de configuración, puedes elegir crear una zona DNS nueva para la implementación o seleccionar una zona DNS existente.

Si creas una zona de DNS nueva, el nombre de la zona y el nombre de DNS son los siguientes:

  • Nombre de la zona: DEPLOYMENT_NAME
  • Nombre de DNS: DEPLOYMENT_NAME-gcp.sapcloud.goog

Ya sea que crees una zona nueva o selecciones una existente, se agregarán los conjuntos de registros DNS necesarios para cada VM.

Cuando se usa una configuración de VPC compartida, la configuración relacionada con el DNS se realiza en el proyecto de servicio.

Filestore

Filestore Enterprise

Filestore Enterprise es un almacenamiento de archivos NFS completamente administrado y de alto rendimiento que se conecta a la red especificada durante el proceso de configuración. En las instancias de ASCS y ERS, se usa para los archivos de transporte, los directorios /usr/sap/SID/ascs y /usr/sap/SID/ers. En los servidores de aplicaciones, se usa para el directorio sapmnt/SID.

Cuando se usa una configuración de VPC compartida, la instancia de Filestore Enterprise se crea en el proyecto host.

Consideraciones de seguridad

En esta sección, se describen las consideraciones de seguridad que aborda el Administrador de cargas de trabajo para proteger tus implementaciones en Google Cloud.

Cuentas de servicio y permisos

Durante el proceso de configuración, debes especificar una cuenta de servicio que se use para la autenticación cuando implementes tu carga de trabajo. Workload Manager usa los permisos y las credenciales de esta cuenta de servicio para llamar a otras Google Cloud APIs y servicios que se usan en la implementación. Después de seleccionar una cuenta de servicio, Workload Manager evalúa automáticamente los roles de IAM adjuntos para determinar si tiene los permisos necesarios para implementar tu sistema. Si falta un rol, se te pedirá que otorgues los roles faltantes, si tienes los permisos necesarios.

Se requieren los siguientes roles para la cuenta de servicio que se usa para implementar sistemas SAP S/4HANA. Como alternativa, puedes crear roles personalizados para asignar los permisos individuales necesarios durante el proceso de implementación. Ten en cuenta que los permisos específicos requeridos se muestran solo a modo de ejemplo. Los permisos específicos pueden variar según la configuración que elijas y la configuración del proyecto.

Rol de IAM requerido Caso de uso Permisos necesarios
Lector de acciones Es obligatorio para verificar que el proyecto sea válido y que la cuenta de servicio tenga los permisos necesarios para acceder al recurso. resourcemanager.projects.get
Editor de Cloud Filestore Permisos necesarios para crear y administrar volúmenes de almacenamiento compartido de Filestore Enterprise asociados a la implementación file.instances.create
file.instances.delete
file.instances.get
file.operations.get
Agente de Cloud Infrastructure Manager Es obligatorio para el servicio de Infrastructure Manager, que se usa para implementar la infraestructura cuando se implementa con la consola de Google Cloud. config.deployments.getLock
config.deployments.getState
config.deployments.updateState
logging.logEntries.create
storage.buckets.create
storage.buckets.delete
storage.buckets.get
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
Administrador de Compute
Permisos necesarios para crear y administrar todos los recursos de procesamiento creados para la implementación
compute.addresses.createInternal
compute.addresses.deleteInternal
compute.addresses.get
compute.addresses.useInternal
compute.disks.create
compute.disks.delete
compute.disks.get
compute.disks.setLabels
compute.disks.use
compute.firewalls.create
compute.firewalls.delete
compute.firewalls.get
compute.forwardingRules.create
compute.forwardingRules.delete
compute.forwardingRules.get
compute.forwardingRules.setLabels
compute.globalOperations.get
compute.healthChecks.create
compute.healthChecks.delete
compute.healthChecks.get
compute.healthChecks.useReadOnly
compute.instanceGroups.create
compute.instanceGroups.delete
compute.instanceGroups.get
compute.instanceGroups.update
compute.instanceGroups.use
compute.instances.create
compute.instances.delete
compute.instances.get
compute.instances.setLabels
compute.instances.setMetadata
compute.instances.setServiceAccount
compute.instances.setTags
compute.instances.use
compute.networks.get
compute.networks.updatePolicy
compute.regionBackendServices.create
compute.regionBackendServices.delete
compute.regionBackendServices.get
compute.regionBackendServices.use
compute.regionOperations.get
compute.subnetworks.get
compute.subnetworks.use
compute.subnetworks.useExternalIp
compute.zoneOperations.get
compute.zones.get
resourcemanager.projects.get
serviceusage.services.list
Administrador de DNS
Son los permisos necesarios para crear una zona de DNS y los conjuntos de registros necesarios.
compute.networks.get
dns.changes.create
dns.changes.get
dns.managedZones.create
dns.managedZones.delete
dns.managedZones.get
dns.networks.bindPrivateDNSZone
dns.resourceRecordSets.create
dns.resourceRecordSets.delete
dns.resourceRecordSets.list
dns.resourceRecordSets.update
resourcemanager.projects.get

Administrador de IAM de proyecto
Permisos necesarios para asignar roles de IAM a las cuentas de servicio creadas para cada capa de la implementación
resourcemanager.projects.get

resourcemanager.projects.getIamPolicy

resourcemanager.projects.setIamPolicy

Administrador de cuenta de servicio

Permisos necesarios para crear y administrar las cuentas de servicio creadas para cada capa de la implementación.

iam.serviceAccounts.create

iam.serviceAccounts.delete

iam.serviceAccounts.get

iam.serviceAccounts.getIamPolicy

iam.serviceAccounts.list

iam.serviceAccounts.setIamPolicy

resourcemanager.projects.get

Usuario de la cuenta de servicio

Es obligatorio para permitir que la cuenta de servicio elegida actúe como una cuenta de servicio cuando llames a otros productos y servicios.
iam.serviceAccounts.actAs
iam.serviceAccounts.get
iam.serviceAccounts.list
resourcemanager.projects.get
Administrador de Service Usage Permisos para verificar el estado de las APIs requeridas y habilitarlas, si es necesario Serviceusage.services.list
serviceusage.services.enable
Administrador de almacenamiento Permisos necesarios para acceder a los archivos de medios de instalación de SAP y usarlos, y subirlos a Cloud Storage resourcemanager.projects.get
storage.buckets.getIamPolicy
storage.objects.get
storage.objects.getIamPolicy
storage.objects.list

Cuando se usa una configuración de VPC compartida, es posible que también se requieran los siguientes permisos de IAM en el proyecto host, además de los roles anteriores que se requieren en el proyecto de servicio.

  • compute.firewalls.create
  • compute.firewalls.delete
  • compute.firewalls.get
  • compute.globalOperations.get
  • compute.networks.get
  • compute.networks.updatePolicy
  • compute.subnetworks.get
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • dns.networks.bindPrivateDNSZone
  • file.instances.create
  • file.instances.delete
  • file.instances.get
  • file.operations.get

En el caso de las implementaciones de SAP S/4HANA, Workload Manager crea automáticamente cuentas de servicio para cada capa de la implementación en nombre del usuario que implementa la carga de trabajo. Workload Manager solo proporciona los permisos necesarios a estas cuentas de servicio para su rol en la implementación.

Cuenta de servicio para lo siguiente: Correo electrónico de la cuenta de servicio Roles de IAM asignados
VM de Ansible Runner DEPLOYMENT_NAME-ansible@PROJECT_ID.iam.gserviceaccount.com
Administrador de instancias de Compute (v1)
Visualizador de Compute
Administrador de DNS
Administrador de registros
Administrador de supervisión
Visualizador de roles
Descriptor de acceso a secretos de Secret Manager
Visualizador de Secret Manager
Usuario de la cuenta de servicio
Visualizador de objetos de almacenamiento
Escritor de estadísticas de Workload Manager
VMs de SAP ASCS / ERS DEPLOYMENT_NAME-ascs@PROJECT_ID.iam.gserviceaccount.com Administrador de instancias de Compute (v1)
Visualizador de Compute
Administrador de registros
Administrador de supervisión
Escritor de métricas de supervisión
Visualizador de objetos de almacenamiento
Escritor de estadísticas del administrador de cargas de trabajo
VMs de aplicaciones DEPLOYMENT_NAME-app@PROJECT_ID.iam.gserviceaccount.com Visualizador de Compute
Administrador de registros
Administrador de supervisión
Escritor de métricas de supervisión
Visualizador de objetos de almacenamiento
Escritor de estadísticas del administrador de cargas de trabajo
VMs de bases de datos DEPLOYMENT_NAME-db@PROJECT_ID.iam.gserviceaccount.com
Administrador de instancias de Compute (v1)
Visualizador de Compute
Administrador de registros
Administrador de supervisión
Escritor de métricas de supervisión
Visualizador de objetos de almacenamiento
Escritor de estadísticas del administrador de cargas de trabajo

Reemplaza lo siguiente:

  • DEPLOYMENT_NAME: Es el nombre de tu implementación de SAP.
  • PROJECT_ID: Es el ID de tu Google Cloud proyecto en el que creas la implementación.

Para obtener más información sobre la IAM y los permisos para ejecutar SAP en Google Cloud, consulta Administración de identidades y accesos para programas de SAP en Google Cloud.

Credenciales de usuario de la base de datos y la aplicación de SAP

Workload Manager usa Secret Manager para almacenar las credenciales de tu sistema de SAP, como la contraseña del administrador y las cuentas de usuario de SYSTEM. Para proporcionar la contraseña de forma segura, debes crear un secreto y usarlo durante el proceso de implementación. Puedes crear secretos separados para almacenar credenciales para tu base de datos y las capas de la aplicación. El secreto proporcionado para SAP HANA se usa como contraseña inicial para los siguientes usuarios:

  • Base de datos del sistema:
    • SYSTEM
    • SERVICE_BACKUP
    • DBACOCKPIT
  • Base de datos del usuario de HANA:
    • SYSTEM
    • SERVICE_BACKUP
  • Base de datos del inquilino de S/4HANA:
    • SYSTEM
    • SAPDBCTRL
    • DBACOCKPIT
    • SAPHANADB

Las credenciales de la aplicación se usan para los siguientes usuarios dentro del cliente 000:

  • DDIC
  • SAP*

Después de que la implementación se realice de forma correcta, puedes modificar o asignar contraseñas nuevas a estos usuarios.

APIs requeridas

Para implementar una carga de trabajo de SAP S/4HANA, se requieren las siguientes APIs y servicios. Durante el proceso de implementación, estas APIs se habilitan automáticamente a través de Terraform si la cuenta de servicio que usas para la implementación tiene los permisos necesarios. Estás sujeto a las Condiciones del Servicio de cada uno de estos servicios y comenzarás a incurrir en cargos cuando se usen en la solución después de la implementación.

Obtener asistencia

Consulta Obtén asistencia para SAP en Google Cloud.

¿Qué sigue?