Skip to content

Commit a5b2ca4

Browse files
chore: include additional solutions (#881)
1 parent f803e65 commit a5b2ca4

File tree

19 files changed

+842
-37
lines changed

19 files changed

+842
-37
lines changed

README.md

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,35 +7,40 @@
77
[![Renovate enabled](https://img.shields.io/badge/renovate-enabled-brightgreen.svg)](https://renovatebot.com/)
88

99
## Summary
10-
This repository contains deployable architecture solutions that help in deploying VPC landing zones, Power Virtual Server workspaces, and SAP HANA solutions. The solutions are available in the IBM Cloud Catalog and can also be deployed without the catalog, except for a few solutions.
10+
This repository contains deployable architecture solutions that help in deploying VPC landing zones, Power Virtual Server workspaces, and SAP HANA solutions. The solutions are available in the IBM Cloud Catalog and can also be deployed without the catalog.
1111

1212

13-
### IBM catalog solutions that require a Schematics workspace ID of [Power Virtual Server with VPC landing zone](https://cloud.ibm.com/catalog/architecture/deploy-arch-ibm-pvs-inf-2dd486c7-b317-4aaa-907b-42671485ad96-global)
13+
### Solutions
14+
1415
1. [IBM catalog PowerVS SAP Ready variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/tree/main/solutions/ibm-catalog/sap-ready-to-go)
1516
- Creates a VPC and Power Virtual Server workspace, interconnects them, and configures OS network management services (SQUID proxy, NTP, NFS, and DNS) using Ansible Galaxy collection roles from the ibm.power_linux_sap collection.
1617
- Creates and configures **one HANA instance and zero to several NetWeaver instances** with **RHEL or SLES OS** distribution. Creates a private subnet for SAP communication for the entire landscape.
1718
- Optionally configures OS network management services (NTP, NFS, and DNS services) using Ansible Galaxy Collection from [IBM](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/): `power_linux_sap`
1819
- Additionally tunes the instances according to SAP's best practices, which are fully ready for hosting SAP applications.
19-
2. [IBM catalog PowerVS S/4HANA or BW/4HANA variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/tree/main/solutions/ibm-catalog/sap-s4hana-bw4hana)
20+
21+
1. [IBM catalog PowerVS S/4HANA or BW/4HANA variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/tree/main/solutions/ibm-catalog/sap-s4hana-bw4hana)
2022
- Creates and configures **one HANA instance and one NetWeaver instance** with **RHEL** OS distribution. Creates a private subnet for SAP communication for the entire landscape.
2123
- Optionally configures OS network management services (NTP, NFS, and DNS services) using Ansible Galaxy Collection from [IBM](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/): `power_linux_sap`
2224
- Tunes the instances according to SAP's best practices.
2325
- Downloads user-provided preloaded SAP Installation binaries from IBM Cloud Object Storage Bucket.
2426
- Installs and configures **SAP applications** (SAP HANA DB, SAP S4/HANA, SAP BW4/HANA) using [RHEL System Roles](https://access.redhat.com/articles/4488731): `sap_hana_install`, `sap_swpm`,`sap_general_preconfigure`, `sap_hana_preconfigure`, `sap_netweaver_preconfigure`
2527

28+
1. [Single HANA Instance](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/tree/main/solutions/single-hana-instance)
29+
- Creates a single HANA instance based on HANA certified profiles along with right storage config.
30+
- Optionally configures OS network management services (NTP, NFS, and DNS services) using Ansible Galaxy Collection from [IBM](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/): `power_linux_sap`
31+
- Tunes the instances according to SAP's best practices.
2632

27-
### Solutions independent of IBM Cloud prerequisite Schematics workspace ID:
28-
1. [PowerVS SAP Ready variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/tree/main/solutions/sap-ready-to-go)
29-
- Creates and configures **one HANA instance and zero to several NetWeaver instances** with **RHEL or SLES OS** distribution. Creates a private subnet for SAP communication for the entire landscape
30-
- Optionally configures OS network management services (NTP, NFS, and DNS services) using Ansible Galaxy collection from [IBM](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/)
31-
- Additionally tunes the instances according to SAP's best practices, which is fully ready for hosting SAP applications.
33+
1. [Single Netweaver Instance](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/tree/main/solutions/single-netweaver-instance)
34+
- Creates a single Netweaver instance along with right storage config.
35+
- Optionally configures OS network management services (NTP, NFS, and DNS services) using Ansible Galaxy Collection from [IBM](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/): `power_linux_sap`
36+
- Tunes the instances according to SAP's best practices.
3237

3338

3439

3540
## Reference architectures
3641
- [IBM catalog PowerVS SAP Ready variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/blob/main/reference-architectures/sap-ready-to-go/deploy-arch-ibm-pvs-sap-ready-to-go.svg)
3742
- [IBM catalog PowerVS SAP S/4HANA or BW/4HANA variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-sap/blob/main/reference-architectures/sap-s4hana-bw4hana/deploy-arch-ibm-pvs-sap-s4hana-bw4hana.svg)
38-
- [Power Virtual Server with vpc landing zone](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/blob/main/reference-architectures/full-stack/deploy-arch-ibm-pvs-inf-full-stack.svg)
43+
3944

4045

4146
## Solutions
@@ -44,7 +49,6 @@ This repository contains deployable architecture solutions that help in deployin
4449
|:---------------------------------------------------------------------------:|:------------------------:|:-------------------------------------:|:-----------------------------:|:----------------------------:|:--------------------------:|:---------------------------:|:--------------------:|
4550
| [IBM catalog PowerVS SAP Ready]( ./solutions/ibm-catalog/sap-ready-to-go/ ) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | 1 | 0 to N | :heavy_check_mark: | :heavy_check_mark: | N/A |
4651
| [IBM catalog SAP S/4HANA or BW/4HANA variation]( ./solutions/ibm-catalog/sap-s4hana-bw4hana ) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | 1 | 1 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
47-
| [PowerVS SAP Ready]( ./solutions/sap-ready-to-go/ ) | N/A | N/A | :heavy_check_mark: | 1 | 0 to N | :heavy_check_mark: | :heavy_check_mark: | N/A |
4852

4953

5054

ibm_catalog.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,14 @@
404404
}
405405
],
406406
"custom_config": {}
407+
},
408+
{
409+
"key": "vpc_subnet_cidrs",
410+
"custom_config": {
411+
"grouping": "deployment",
412+
"original_grouping": "deployment",
413+
"type": "code_editor"
414+
}
407415
}
408416
],
409417
"iam_permissions": [

modules/pi-sap-system-type1/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ The Power Virtual Server for SAP module automates the following tasks:
4949
|------|-------------|------|---------|:--------:|
5050
| <a name="input_ansible_vault_password"></a> [ansible\_vault\_password](#input\_ansible\_vault\_password) | Vault password to encrypt OS registration parameters. Only required with customer provided linux subscription (pi\_os\_registration). Password requirements: 15-100 characters and at least one uppercase letter, one lowercase letter, one number, and one special character. Allowed characters: A-Z, a-z, 0-9, !#$%&()*+-.:;<=>?@[]\_{\|}~. | `string` | `""` | no |
5151
| <a name="input_pi_hana_instance"></a> [pi\_hana\_instance](#input\_pi\_hana\_instance) | PowerVS SAP HANA instance hostname (non FQDN). Will get the form of <var.prefix>-<var.pi\_hana\_instance.name>. Max length of final hostname must be <= 13 characters.'sap\_profile\_id' Must be one of the supported profiles. See [here](https://cloud.ibm.com/docs/sap?topic=sap-hana-iaas-offerings-profiles-power-vs). File system sizes are automatically calculated. Override automatic calculation by setting values in optional 'pi\_hana\_instance\_custom\_storage\_config' parameter. 'additional\_storage\_config' additional File systems to be created and attached to PowerVS SAP HANA instance. 'size' is in GB. 'count' specify over how many storage volumes the file system will be striped. 'tier' specifies the storage tier in PowerVS workspace. 'mount' specifies the target mount point on OS. | <pre>object({<br/> name = string<br/> image_id = string<br/> sap_profile_id = string<br/> additional_storage_config = list(object({<br/> name = string<br/> size = string<br/> count = string<br/> tier = string<br/> mount = string<br/> }))<br/> })</pre> | <pre>{<br/> "additional_storage_config": [<br/> {<br/> "count": "1",<br/> "mount": "/usr/sap",<br/> "name": "usrsap",<br/> "size": "50",<br/> "tier": "tier3"<br/> }<br/> ],<br/> "image_id": "insert_value_here",<br/> "name": "hana",<br/> "sap_profile_id": "ush1-4x256"<br/>}</pre> | no |
52-
| <a name="input_pi_hana_instance_custom_storage_config"></a> [pi\_hana\_instance\_custom\_storage\_config](#input\_pi\_hana\_instance\_custom\_storage\_config) | Custom file systems to be created and attached to PowerVS SAP HANA instance. 'size' is in GB. 'count' specify over how many storage volumes the file system will be striped. 'tier' specifies the storage tier in PowerVS workspace. 'mount' specifies the target mount point on OS. | <pre>list(object({<br/> name = string<br/> size = string<br/> count = string<br/> tier = string<br/> mount = string<br/> }))</pre> | <pre>[<br/> {<br/> "count": "",<br/> "mount": "",<br/> "name": "",<br/> "size": "",<br/> "tier": ""<br/> }<br/>]</pre> | no |
52+
| <a name="input_pi_hana_instance_custom_storage_config"></a> [pi\_hana\_instance\_custom\_storage\_config](#input\_pi\_hana\_instance\_custom\_storage\_config) | Custom file systems to be created and attached to PowerVS SAP HANA instance. 'size' is in GB. 'count' specify over how many storage volumes the file system will be striped. 'tier' specifies the storage tier in PowerVS workspace. 'mount' specifies the target mount point on OS. If not specified, volumes for '/hana/data', '/hana/log', '/hana/shared' are automatically calculated and created. | <pre>list(object({<br/> name = string<br/> size = string<br/> count = string<br/> tier = string<br/> mount = string<br/> }))</pre> | <pre>[<br/> {<br/> "count": "",<br/> "mount": "",<br/> "name": "",<br/> "size": "",<br/> "tier": ""<br/> }<br/>]</pre> | no |
5353
| <a name="input_pi_instance_init_linux"></a> [pi\_instance\_init\_linux](#input\_pi\_instance\_init\_linux) | Configures a PowerVS linux instance to have internet access by setting proxy on it, updates os and create filesystems using ansible collection [ibm.power\_linux\_sap collection](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/) where 'bastion\_host\_ip' is public IP of bastion/jump host to access the 'ansible\_host\_or\_ip' private IP of ansible node. This ansible host must have access to the power virtual server instance and ansible host OS must be RHEL distribution. | <pre>object(<br/> {<br/> enable = bool<br/> bastion_host_ip = string<br/> ansible_host_or_ip = string<br/> ssh_private_key = string<br/> custom_os_registration = optional(object({<br/> username = string<br/> password = string<br/> }))<br/> }<br/> )</pre> | n/a | yes |
5454
| <a name="input_pi_netweaver_instance"></a> [pi\_netweaver\_instance](#input\_pi\_netweaver\_instance) | PowerVS SAP NetWeaver instance hostname (non FQDN). Will get the form of <var.prefix>-<var.powervs\_netweaver\_instance\_name>-<number>. Max length of final hostname must be <= 13 characters. 'instance\_count' is number of SAP NetWeaver instances that should be created. 'instance\_count' cannot exceed 10. 'size' is in GB. 'count' specify over how many storage volumes the file system will be striped. 'tier' specifies the storage tier in PowerVS workspace. 'mount' specifies the target mount point on OS. | <pre>object({<br/> instance_count = number<br/> name = string<br/> image_id = string<br/> processors = string<br/> memory = string<br/> proc_type = string<br/> storage_config = list(object({<br/> name = string<br/> size = string<br/> count = string<br/> tier = string<br/> mount = string<br/> }))<br/> })</pre> | <pre>{<br/> "image_id": "insert_value_here",<br/> "instance_count": 1,<br/> "memory": "32",<br/> "name": "nw",<br/> "proc_type": "shared",<br/> "processors": "3",<br/> "storage_config": [<br/> {<br/> "count": "1",<br/> "mount": "/usr/sap",<br/> "name": "usrsap",<br/> "size": "50",<br/> "tier": "tier3"<br/> }<br/> ]<br/>}</pre> | no |
5555
| <a name="input_pi_networks"></a> [pi\_networks](#input\_pi\_networks) | Existing list of subnets to be attached to PowerVS instances. The first element will become the primary interface. Run 'ibmcloud pi networks' to list available private subnets. | <pre>list(<br/> object({<br/> name = string<br/> id = string<br/> cidr = optional(string)<br/> })<br/> )</pre> | n/a | yes |

modules/pi-sap-system-type1/variables.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ variable "pi_hana_instance" {
7575
}
7676

7777
variable "pi_hana_instance_custom_storage_config" {
78-
description = "Custom file systems to be created and attached to PowerVS SAP HANA instance. 'size' is in GB. 'count' specify over how many storage volumes the file system will be striped. 'tier' specifies the storage tier in PowerVS workspace. 'mount' specifies the target mount point on OS."
78+
description = "Custom file systems to be created and attached to PowerVS SAP HANA instance. 'size' is in GB. 'count' specify over how many storage volumes the file system will be striped. 'tier' specifies the storage tier in PowerVS workspace. 'mount' specifies the target mount point on OS. If not specified, volumes for '/hana/data', '/hana/log', '/hana/shared' are automatically calculated and created."
7979
type = list(object({
8080
name = string
8181
size = string

0 commit comments

Comments
 (0)