This repository contains comprehensive demonstration playbooks showcasing the community.sap_install Ansible collection for automated SAP system deployments. These examples demonstrate enterprise-grade SAP automation using AWX or Red Hat Ansible Automation Platform.
- Tested path: The playbooks under
generic/are the maintained, functionally tested baseline for SAP installation demos. - Needs validation: The Azure, VMware, Google Cloud, and PowerVC directories are not regularly tested against current hypervisor/cloud APIs, collections, and OS images. Expect breakage and extra tuning before they work in your environment.
- Execution environments (AWX / AAP): Container images and build definitions for SAP automation live in the separate project sap-linuxlab/ansible.execution-environment. This repo no longer ships an
awx-ee/tree.
- Choose your platform (recommended: start with Generic): Generic | Azure | VMware | Google Cloud | PowerVC
- Deploy infrastructure: Run the
01-server-provisioning-*.ymlplaybook for your platform - Configure systems: Execute
02-basic-os-setup.ymlfor OS preparation - Install SAP: Run the appropriate SAP installation playbooks
- Manage lifecycle: Use tools and utilities for ongoing operations
The automation follows a structured 4-phase approach:
Phase 1: Infrastructure β Phase 2: OS Setup β Phase 3: SAP Prep β Phase 4: SAP Install
β β β β
ββ Server Provisioning ββ OS Configuration ββ HANA Prepare ββ HANA Install
ββ Network Setup ββ Package Updates ββ NetWeaver Prep ββ S/4HANA Install
ββ Storage Configuration ββ Security Setup ββ Clustering Setup ββ Post-Config
- Generic templates (
generic/): Platform-agnostic playbooks β supported and tested baseline - Azure: Example ARM / cloud integration (not verified out of the box; see note above)
- VMware vSphere: Example vCenter automation (not verified out of the box; see note above)
- Google Cloud Platform: Example GCP automation (not verified out of the box; see note above)
- PowerVC (IBM Power): Example PowerVC automation (not verified out of the box; see note above)
- SAP HANA: Single-node and clustered installations with System Replication
- SAP S/4HANA: Complete application layer deployment with NetWeaver
- High Availability: Pacemaker clustering with cloud-native fencing
- Software Management: Automated download and deployment from SAP Launchpad
- AWX/AAP Integration: Job templates and demos; execution environment images from sap-linuxlab/ansible.execution-environment
- Red Hat Satellite: Automated subscription and repository management
- Container Support: Podman-based execution environments
- CI/CD Ready: Pre-commit hooks, linting, and quality gates
demo.sap_install/
βββ azure/ # Azure-specific playbooks and configs
βββ vmware/ # VMware vSphere automation
βββ google/ # Google Cloud Platform deployments
βββ powervc/ # IBM PowerVC for Power Systems
βββ generic/ # Platform-agnostic templates
βββ docs/ # GitHub Pages documentation
βββ demo-setup/ # AAP/AWX configuration examples
βββ tools/ # Utility scripts and helpers
βββ vars/ # Example variable configurations
βββ misc/ # Additional utilities
Recommended starting point: platform-agnostic playbooks under generic/. These are the maintained and tested path (provision hosts yourself or use 01-server-provisioning.yml as a template, then run OS and SAP steps):
ansible-playbook generic/02-basic-os-setup.yml
ansible-playbook generic/03-A-sap-hana-prepare.yml
ansible-playbook generic/03-B-sap-hana-install.ymlFeatures: Works with any inventory; minimal cloud coupling; aligns with current community.sap_install usage in this repo.
Status: Not regularly regression-tested. Modules, APIs, and variables may need updates before this works in your subscription.
Deploy SAP on Microsoft Azure with integrated load balancing and availability zones:
# 1. Provision Azure infrastructure
ansible-playbook azure/01-server-provisioning-azure.yml -e @vars/azure/my-config.yml
# 2. Configure operating system
ansible-playbook azure/02-basic-os-setup.yml
# 3. Install SAP HANA with clustering
ansible-playbook azure/03-CD-sap-hana-cluster.ymlFeatures: ARM templates, Azure Load Balancer, Availability Sets, Managed Disks
Status: Not regularly regression-tested. Validate against your vCenter version, VM templates, and storage/network layout.
Enterprise VMware vSphere deployment with full lifecycle management:
# Deploy complete SAP landscape on VMware
ansible-playbook vmware/01-server-provisioning-vmware.yml -e @vars/vmware/production.yml
ansible-playbook vmware/02-basic-os-setup.yml
ansible-playbook vmware/03-A-sap-hana-prepare.yml
ansible-playbook vmware/03-B-sap-hana-install.ymlFeatures: vCenter integration, DRS/HA clusters, Storage vMotion, Template management
Status: Not regularly regression-tested. Expect to adjust playbooks, credentials, and cloud resources for current GCP APIs and images.
Leverage Google Cloud managed services and storage buckets:
# GCP deployment with Cloud Storage integration
ansible-playbook google/01-server-provisioning-gcp.yml
ansible-playbook google/03-B-sap-hana-install-from-storage-bucket.ymlFeatures: Cloud Storage integration, Managed Instance Groups, Load Balancing
Status: Not regularly regression-tested. Validate against your PowerVC version, storage layout, and RHEL for SAP images.
Specialized deployment for IBM Power Systems with PowerVC:
# Power Systems deployment
ansible-playbook powervc/01-server-provisioning-power.yml
ansible-playbook powervc/02-basic-os-setup-storage.yml
ansible-playbook powervc/03-B-sap-hana-install.ymlFeatures: Power-specific optimizations, Storage management, AIX compatibility
- Ansible: 2.14+ with
community.sap_installcollection - Python: 3.8+ with cloud provider SDKs
- SAP Software: Access to SAP Launchpad or pre-downloaded media
- Subscriptions: Valid Red Hat and SAP licenses
- Configure authentication (Azure CLI, AWS CLI, gcloud, etc.)
- Ensure proper IAM permissions for resource creation
- Set up networking (VPCs, subnets, security groups)
# Install the SAP installation collection (minimum for the generic playbooks)
ansible-galaxy collection install community.sap_install
# Python extras for cloud or special modules: align with your EE or see
# https://github.com/sap-linuxlab/ansible.execution-environmentQuick SAP HANA setup for development:
ansible-playbook generic/03-A-sap-hana-prepare.yml \
-e sap_hana_install_sid=DEV \
-e sap_hana_install_instance_number=00High-availability SAP deployment (example uses the tested generic/ tree; Azure-specific cluster playbooks exist but are not regularly validated):
ansible-playbook generic/03-CD-sap-hana-cluster.yml \
-e cluster_setup=true \
-e sap_ha_install_pacemaker=trueComplete application layer deployment (uses the tested generic/ playbook; a vmware/ variant exists but is not regularly validated):
ansible-playbook generic/04-B-S4-deployment.yml \
-e sap_swpm_product_catalog_id="NW_ABAP_OneHost:S4HANA2023.CORE.HDB.ABAP"SAP-focused Ansible Execution Environments (container images for AWX, AAP, and ansible-navigator) are maintained in sap-linuxlab/ansible.execution-environment.
Use that repository to build or pull images, then reference them in AWX/AAP or locally, for example:
ansible-navigator run generic/02-basic-os-setup.yml \
--execution-environment-image <your-sap-ee-image:tag>Historical awx-ee/ definitions were removed from this demo repository in favor of the centralized SAP LinuxLab project.
- π Complete Documentation: Comprehensive guides and tutorials
- π§ Variable Examples: Configuration templates for all scenarios
- π AWX Integration: Job templates and workflow examples
- π οΈ Tools & Utilities: Helper scripts for common tasks
We welcome contributions! Please see our Contributing Guidelines for details.
# Install development tools
pip install pre-commit ansible-lint yamllint
# Enable pre-commit hooks
pre-commit install
# Run quality checks
pre-commit run --all-filesThis project is licensed under the Apache License 2.0 - see the LICENSE file for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- SAP LinuxLab: Main Project Page
- Red Hat Support: For enterprise support, contact Red Hat Customer Success
Made with β€οΈ by the Red Hat SAP Team