This repository provides several predefined solution templates for SAP Applications from SUSE and Microsoft for simplified deployment on Microsoft Azure
With the help of the Azure Resource Manager (ARM) we can simplify the deployment of the needed infrastructure for SAP Applications on Microsoft Azure Such ARM templates are JSON files that define the infrastructure and configuration of a solution on Azure and by using such templates, you can speed up the deployment and deploy the resources in a consistent state.
Such templates can get complex for a infrastructure like SAP Applications, therefore we created a SUSE offering directly in the Azure Marketplace
The solution templates are designed to simplify and automate the creation of the required infrastructure for deploying SAP Netweaver and SAP HANA on SUSE Linux Enterprise Server for SAP Applications premium images in Azure and create
- Several virtual machines
- Virtual network and subnet
- Several disks depending on the solution sizes
- Availability Sets and load balancer if High-Availablity (HA) is selected
We provide within this repository the sources of the marketplace solution templates in order to provide
- the possibility to use them with your deploy infrastructure instead of using the Azure Portal
- a way to work in the public on new features
- collaborate on your real world requirements
The documentation of some details of the templates could be found at our public documentation of SUSE Best Practices
- To learn more about the format of the template and how you construct it, see Create your first Azure Resource Manager template
- To view the JSON syntax for resources types, see Define resources in Azure Resource Manager templates.
- on the HA setup deploy the pacemaker infrastructure
- add Azure files for uploading SAP media
- install SAP HANA directly from the workflow if SAP media are present
- xTier - the solution templates
- docu - documentation of some background information
- for_marketplace - temporary for creating Azure Marketplace offering (not tracked in github)
- scripts - Scripts used in the templates for setup the infrastructure
- tools - some helper tools
- azuredeploy.json - Template which creates the resources
- azuredeploy.parameter.json - Parameterfile for github deployment
- metadata.json - Description for github deployment
only for marketplace usage
- version.txt - Version number of the template
- createUiDefinition.json - Frontend for the Marketplace
- mp_guid.txt - Unique Id for Marketplace
- mainTemplate.json - Temporary file for the Marketplace
Note: When you deploy this template, Microsoft is able to identify the installation of SUSE software with the Azure resources that are deployed. Microsoft is able to correlate the Azure resources that are used to support the software. Microsoft collects this information to provide the best experiences with their products and to operate their business. The data is collected and governed by Microsoft's privacy policies, which can be found at https://www.microsoft.com/trustcenter.
To authenticate using Azure CLI 2, at a terminal type az login and press ENTER. The authentication process will require you to open a browser to https://aks.ms/devicelogin and enter a code (provided by the CLI). Afterwards, you will be able to authenticate to Azure using your normal Azure subscription credentials.
Azure CLI 2 does not prompt for missing/mandatory parameters so you have to specify all your parameters when you invoke the command to start the deployment. You can provide all the parameters inline on the command line or using a parameters file (azuredeploy.parameter.json). You can't use a combination of these. As we already prepared parameter files for all scenarios, we use them here.
So, before proceeding, please update the azuredeploy.parameters.json file to include/change your values for the needed parameters.
All Azure deployments are within a resource group, therefore we need to create one or use a existing.
The example below will create a new resource group (RGFirstTest)
# Create a resource group
az group create --name RGFirstTest --location westeurope
A good idea is therefore to test the template and parameter values without actually deploying them. For this you can use the command az group deployment validate
az group deployment validate \
--resource-group RGFirstTest \
--template-file <path to template file>\azuredeploy.json \
--parameters <path to template parameters file>\azuredeploy.parameter.json
If all is successful the template can now created and deployed
# Deploy template into resource group
az group deployment create \
--resource-group RGFirstTest \
--template-file <path to template file>\azuredeploy.json \
--parameters <path to template parameters file>\azuredeploy.parameter.json
Note: You need to adapt the name of the resourcegroup and the location in the parameterfile to what you had used
If you would like to contribute, please fork this repository and send pull requests.
NOTE
Please do not make any commits to the
master
branch asmaster
is reserved for releases only.Always commit to
develop
Have a lot of fun...