Traditional on premises SAP environments require a long and arduous process of purchasing hardware, rack and stack, powering it u and then installing the required software, going through the configuration steps.
On AWS with Infrastructure as a Code approach, this is reduced and deploying it is reduced to a few clicks. This would not be possible in an on premise data center environment.
Sonata Software recommends that enterprises leverage infrastructure as a code approach. This is part of the Next Gen Cloud Managed Services of Sonata which is part of the CREATE BOOT aspect of Sonata’s Digital Platform Operation Model.
Below diagram is a representation of the setup of leveraging Terraform based automation for deploying SAP Hybris nodes for one of our large customers in the travel industry.
Terraform Users
First, a user role needs to be created in AWS Identity and Access Management, which will be leveraged by Terraform. This user should have access to manage EC2 instances, S3 storage buckets, IAM users and policies, EFS.
Terraform Configuration
The terraform configuration should create the infrastructure needed for the installation of an SAP cluster in System Replication mode, combined with the high-availability capabilities provided by the SUSE Linux Enterprise Server for SAP Applications in AWS.
The infrastructure deployed includes:
- A Virtual Private Cloud
- A local subnet within the VPC
- A security group with rules for access to the instances created in the subnet. Only allowed external network traffic is for the protocols: SSH, HTTP, HTTPS, and for the HAWK service. Internally to the subnet, all traffic is allowed.
- An Internet gateway
- A route table with its corresponding associations.
- EC2 instances.
Different configurations can be provided through Terraform variables. If already existing resources are to be used, this could also be achieved through Terraform variables. Usage of base AMIs such as a custom image can be achieved after uploading or creating the base image on AWS and then making it the golden AMI.
With Terraform one can deploy and configure the next components (they can be enabled/disabled through configuration options):
- SAP HANA environment: The HANA deployment is configurable. It might be deployed as a single HANA database, a dual configuration with system replication, and a HA cluster can be set in top of that.
- ISCSI server: The ISCSI server provides a network-based storage mostly used by sbd fencing mechanism.
- Monitoring services server: The monitoring solution is based in Prometheus and Grafana and it provides informative and customizable dashboards to the users and administrators.
- DRBD cluster: The DRBD cluster is used to mount a HA NFS server in top of it to mount NETWEAVER shared files.
- SAP NETWEAVER environment: An SAP NETWEAVER environment with ASCS, ERS, PAS and AAS instances can be deployed using HANA database as storage