You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Enterprise Scale for SAP deployment automation framework - Hands-on Lab
15
15
16
-
This tutorial shows how to do enterprise scaling for deployments using the [SAP deployment automation framework on Azure](automation-deployment-framework.md). This example uses Azure Cloud Shell to deploy the control plane infrastructure. The deployer virtual machine (VM) creates the remaining infrastructure and SAP HANA configurations.
16
+
This tutorial shows how to do enterprise scaling for deployments using the [SAP deployment automation framework on Azure](automation-deployment-framework.md). This example uses Azure Cloud Shell to deploy the control plane infrastructure. The deployer virtual machine (VM) creates the remaining infrastructure and SAP HANA configurations.
17
17
18
18
You'll perform the following tasks during this lab:
19
19
@@ -119,7 +119,7 @@ A valid SAP user account (SAP-User or S-User account) with software download pri
119
119
az login
120
120
```
121
121
122
-
> [!NOTE]
122
+
> [!NOTE]
123
123
> Authenticate your login. Don't close the window until you're prompted.
124
124
125
125
@@ -136,7 +136,7 @@ A valid SAP user account (SAP-User or S-User account) with software download pri
136
136
```
137
137
138
138
1. If necessary, change your active subscription.
139
-
139
+
140
140
```cloudshell-interactive
141
141
az account set --subscription <Subscription ID>
142
142
```
@@ -150,7 +150,7 @@ A valid SAP user account (SAP-User or S-User account) with software download pri
150
150
1. Optionally remove all the deployment artifacts. Use when you want to remove all remnants of previous deployment artifacts.
@@ -183,7 +183,7 @@ A valid SAP user account (SAP-User or S-User account) with software download pri
183
183
184
184
The SAP automation deployment framework uses service principals for deployment. Create a service principal for your control plane deployment as follows. Make sure to use an account with permissions to create service principals.
185
185
186
-
> [!NOTE]
186
+
> [!NOTE]
187
187
> When choosing the name for your service principal, ensure that the name is unique within your Azure tenant.
188
188
189
189
@@ -220,7 +220,7 @@ The SAP automation deployment framework uses service principals for deployment.
220
220
| `spn_secret` | `password` |
221
221
| `tenant_id` | `tenant` |
222
222
223
-
3. Assign the **User Access Administrator** role to the service principal.
223
+
3. Optionally assign the **User Access Administrator** role to the service principal.
224
224
225
225
```cloudshell-interactive
226
226
export appId="<appId>"
@@ -230,6 +230,8 @@ The SAP automation deployment framework uses service principals for deployment.
@@ -294,7 +296,7 @@ The SAP automation deployment framework uses service principals for deployment.
294
296
## Deploy control plane
295
297
296
298
Use the [prepare_region](bash/automation-prepare-region.md) script to deploy the Deployer and Library. These deployment pieces make up the
297
-
control plane for a chosen automation area.
299
+
control plane for a chosen automation area.
298
300
299
301
- The deployment goes through cycles of deploying the infrastructure, refreshing the state, and uploading the Terraform state files to the Library storage account. All of these steps are packaged into a single deployment script. The script needs the location of the configuration file for the Deployer and Library, and some other parameters as follows.
300
302
@@ -349,31 +351,31 @@ The sample SAP Library configuration file `MGMT-NOEU-SAP_LIBRARY.tfvars` is in t
349
351
```
350
352
351
353
352
-
1. Go to the [Azure portal](https://portal.azure.com).
354
+
1. Go to the [Azure portal](https://portal.azure.com).
353
355
354
356
Select **Resource groups**. Look for new resource groups for the deployer infrastructure and library. For example, `MGMT-[region]-DEP00-INFRASTRUCTURE` and `MGMT-[region]-SAP_LIBRARY`.
355
357
356
358
The contents of the Deployer and SAP Library resource group are shown below.
The Terraform state file is now placed in the storage account whose name contains 'tfstate'. The storage account has a container named 'tfstate' with the deployer and library state files. The contents of the 'tfstate' container after a successful control plane deployment can be seen below.
- If you get the following error for the deployer module creation, make sure that you're in the **WORKSPACES** directory when you run the script:
369
-
371
+
370
372
```text
371
373
Incorrect parameter file.
372
374
The file must contain the environment attribute!!
373
375
```
374
376
375
377
- The following error is transient. Rerun the same command, `prepare_region.sh`.
376
-
378
+
377
379
```text
378
380
Error: file provisioner error
379
381
..
@@ -408,15 +410,15 @@ Make sure you can connect to your deployer VM:
408
410
409
411
1. On the secret's page, select the current version. Then, copy the **Secret value**.
410
412
411
-
1. Open a plain text editor. Copy in the secret value.
412
-
413
-
1. Save the file where you keep SSH keys. For example, `C:\\Users\\<your-username>\\.ssh`.
414
-
413
+
1. Open a plain text editor. Copy in the secret value.
414
+
415
+
1. Save the file where you keep SSH keys. For example, `C:\\Users\\<your-username>\\.ssh`.
416
+
415
417
1. Save the file. If you're prompted to **Save as type**, select **All files** if **SSH** isn't an option. For example, use `deployer.ssh`.
416
418
417
419
1. Connect to the deployer VM through any SSH client such as VSCode. Use the public IP address you noted earlier, and the SSH key you downloaded. For instructions on how to connect to the Deployer using VSCode see [Connecting to Deployer using VSCode](automation-tools-configuration.md#configuring-visual-studio-code). If you're using PuTTY, convert the SSH key file first using PuTTYGen.
418
420
419
-
> [!NOTE]
421
+
> [!NOTE]
420
422
>The default username is *azureadm*
421
423
422
424
- Once connected to the deployer VM, you can now download the SAP software using the Bill of Materials (BOM).
@@ -437,7 +439,7 @@ Connect to the deployer by following these steps:
437
439
438
440
1. The default username is *azureadm*
439
441
440
-
1. Choose *SSH Private Key from Azure Key Vault*
442
+
1. Choose *SSH Private Key from Azure Key Vault*
441
443
442
444
1. Select the subscription containing the control plane.
443
445
@@ -470,7 +472,7 @@ The script will install Terraform and Ansible and configure the deployer.
470
472
471
473
The Automation Framework gives you tools to download software from SAP using the SAP Bill Of Materials (BOM). The software will be downloaded to the SAP library, which acts as the archive for all media required to deploy SAP.
472
474
473
-
The SAP Bill of Materials (BOM) mimics the SAP maintenance planner. There are relevant product identifiers and a set of download URLs.
475
+
The SAP Bill of Materials (BOM) mimics the SAP maintenance planner. There are relevant product identifiers and a set of download URLs.
474
476
475
477
A sample extract of a BOM file looks like:
476
478
@@ -536,7 +538,7 @@ For this example configuration, the resource group is `MGMT-NOEU-DEP00-INFRASTRU
536
538
```
537
539
538
540
1. Check the version number of the S/4 1909 SPS03 BOM for the active version.
539
-
541
+
540
542
Record the results.
541
543
542
544
```bash
@@ -554,56 +556,56 @@ For this example configuration, the resource group is `MGMT-NOEU-DEP00-INFRASTRU
554
556
555
557
vi sap-parameters.yaml
556
558
```
557
-
559
+
558
560
1. Update the `bom_base_name` with the name BOM previously identified.
559
-
561
+
560
562
Your file should look similar to the following example configuration:
561
563
562
564
```yaml
563
565
564
566
bom_base_name: S41909SPS03_v0010ms
565
567
566
568
```
567
-
569
+
568
570
1. Replace `<Deployer KeyVault Name>` with the name of the deployer resource group Azure key vault
569
-
571
+
570
572
Your file should look similar to the following example configuration:
571
573
572
574
```yaml
573
575
574
576
bom_base_name: S41909SPS03_v0010ms
575
-
kv_name: <Deployer KeyVault Name>
577
+
kv_name: <Deployer KeyVault Name>
576
578
577
579
```
578
-
580
+
579
581
1. Ensure `check_storage_account` is present and set to `false`. This value controls if the SAP Library will be checked for the file before downloading it from SAP.
580
-
582
+
581
583
Your file should look similar to the following example configuration:
582
584
583
585
```yaml
584
586
585
587
bom_base_name: S41909SPS03_v0010
586
-
kv_name: <Deployer KeyVault Name>
588
+
kv_name: <Deployer KeyVault Name>
587
589
check_storage_account: false
588
590
589
591
```
590
-
592
+
591
593
1. Execute the Ansible playbooks. One way you can execute the playbooks is to use the Downloader menu. Run the download_menu script.
Select the playbook `1) BOM Downloader` to download the SAP Software described in the BOM file into the storage account. Check that the `sapbits` container has all your media for installation.
606
-
608
+
607
609
## Collect workload zone information
608
610
609
611
1. Collect the following information in a text editor:
@@ -655,8 +657,8 @@ For this example configuration, the resource group is `MGMT-NOEU-DEP00-INFRASTRU
655
657
656
658
1. Connect to your deployer VM for the following steps. A copy of the repo is now there.
657
659
658
-
1. Go to the **sap-automation** folder and optionally refresh the repository.
659
-
660
+
1. Go to the **sap-automation** folder and optionally refresh the repository.
661
+
660
662
```bash
661
663
cd ~/Azure_SAP_Automated_Deployment/sap-automation/
662
664
@@ -675,10 +677,10 @@ For this example configuration, the resource group is `MGMT-NOEU-DEP00-INFRASTRU
675
677
## Deploy the Workload Zone
676
678
677
679
678
-
Use the [install_workloadzone](bash/automation-install_workloadzone.md) script to deploy the SAP workload zone.
680
+
Use the [install_workloadzone](bash/automation-install_workloadzone.md) script to deploy the SAP workload zone.
679
681
680
682
1. On the deployer VM, navigate to the `Azure_SAP_Automated_Deployment` folder.
681
-
683
+
682
684
```bash
683
685
cd ~/Azure_SAP_Automated_Deployment/WORKSPACES/LANDSCAPE/DEV-XXXX-SAP01-INFRASTRUCTURE
684
686
```
@@ -688,7 +690,7 @@ Use the [install_workloadzone](bash/automation-install_workloadzone.md) script t
688
690
```bash
689
691
cd ~/Azure_SAP_Automated_Deployment/WORKSPACES/LANDSCAPE/DEV-NOEU-SAP01-INFRASTRUCTURE
690
692
```
691
-
693
+
692
694
1. **Optionally** Open the workload zone configuration file and if needed change the network logical name to match the network name.
693
695
694
696
1. Start deployment of the workload zone:
@@ -739,7 +741,7 @@ Use the [install_workloadzone](bash/automation-install_workloadzone.md) script t
739
741
## Deploy SAP system infrastructure
740
742
741
743
Once the Workload zone is complete, you can deploy the SAP system infrastructure resources. The SAP system creates your VMs and supporting components for your SAP application.
742
-
Use the [installer.sh](bash/automation-installer.md) script to deploy the SAP system.
744
+
Use the [installer.sh](bash/automation-installer.md) script to deploy the SAP system.
743
745
744
746
The SAP system deploys:
745
747
@@ -762,7 +764,7 @@ The SAP system deploys:
762
764
--type sap_system \
763
765
--auto-approve
764
766
```
765
-
767
+
766
768
The deployment command for the `northeurope` example will look like:
767
769
768
770
```bash
@@ -778,7 +780,7 @@ The SAP system deploys:
778
780
779
781
## SAP application installation
780
782
781
-
The SAP application installation happens through Ansible playbooks.
783
+
The SAP application installation happens through Ansible playbooks.
782
784
783
785
Navigate to the system deployment folder:
784
786
@@ -788,10 +790,10 @@ cd ~/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/DEV-NOEU-SAP01-X00/
788
790
789
791
Make sure you have the following files in the current folder: `sap-parameters.yaml`and `SID_host.yaml`.
790
792
791
-
For a standalone SAP S/4HANA system, there are eight playbooks to execute in sequence. One way you can execute the playbooks is to use the Configuration menu.
793
+
For a standalone SAP S/4HANA system, there are eight playbooks to execute in sequence. One way you can execute the playbooks is to use the Configuration menu.
@@ -809,14 +811,14 @@ This playbook does the SAP OS configuration setup on all the machines. The steps
809
811
810
812
### Playbook: BOM Processing
811
813
812
-
This playbook downloads the SAP software to the SCS virtual machine.
813
-
814
+
This playbook downloads the SAP software to the SCS virtual machine.
815
+
814
816
### Playbook: HANA DB Install
815
817
816
818
This playbook will install the HANA database instances.
817
819
818
820
### Playbook: SCS Install
819
-
821
+
820
822
This playbook will install SAP Central Services. For highly available configurations, the playbook will also install the SAP ERS instance and configure Pacemaker.
821
823
822
824
### Playbook: DB Load
@@ -826,7 +828,7 @@ This playbook will invoke the database load task from the primary application se
826
828
### Playbook: PAS Install
827
829
828
830
This playbook will install the primary application server.
829
-
831
+
830
832
### Playbook: APP Install
831
833
832
834
This playbook will install the application servers.
@@ -856,7 +858,7 @@ Before you begin, sign in your Azure account. Then, check that you're in the cor
856
858
### Remove SAP infrastructure
857
859
858
860
Navigate to the `DEV-NOEU-SAP01-X00` subfolder inside the `SYSTEM` folder. Then, run this command:
0 commit comments