Skip to content

Commit 2cb5167

Browse files
feat: Quickstart enable os init plus SCC WP for AIX and linux (#1071)
* feat: enable os init for aix and linux quickstart * docs: check mark * docs: check mark * feat: enable sccwp for aix and linux for power instance * fix: file names for pi * fix: handle timeout * fix: rename time_sleep; api endpoint for aix * docs: update description for quickstart * docs: update refrenece arch for quickstart * fix: add depends_on * feat: enable next steps for quickstart * Update modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-scc-wp-agent/playbook-configure-scc-wp-agent-aix.yml.tftpl Co-authored-by: ludwig-mueller <[email protected]> * fix: update daemon name Co-authored-by: ludwig-mueller <[email protected]> * fix: update daemon name Co-authored-by: ludwig-mueller <[email protected]> * fix: remove datasource for image, pass stock image name directly * chore: mrege main SKIP UPGRADE TEST: Breaking change catalog stock image removed --------- Co-authored-by: ludwig-mueller <[email protected]>
1 parent 907086e commit 2cb5167

File tree

14 files changed

+480
-32
lines changed

14 files changed

+480
-32
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Three solutions are offered:
1717
- This solution is typically used for **High Availability scenarios** where a single management VPC can be used to reach both PowerVS workspaces.
1818
3. [Quickstart (Standard Landscape plus VSI)](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard-plus-vsi)
1919
- Creates a VPC and a Power Virtual Server workspace, interconnects them, and configures operating network management services (SQUID proxy, NTP, NFS, and DNS services) using Ansible Galaxy collection roles [ibm.power_linux_sap collection](https://galaxy.ansible.com/ui/repo/published/ibm/power_linux_sap/).
20-
- Additionally creates a Power Virtual Server Instance of a selected t-shirt size.
20+
- Additionally creates a Power Virtual Server Instance of a selected t-shirt size. Network management services, filesystems and SCC Workload protection agents are configured for AIX and Linux instances.
2121
- This solution is typically utilized for **PoCs, demos, and quick onboarding** to PowerVS Infrastructure.
2222

2323
## Reference architectures
@@ -31,7 +31,7 @@ Three solutions are offered:
3131
| ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- |
3232
| [Standard Landscape](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard) | :heavy_check_mark: | N/A | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | N/A | N/A |
3333
| [Extend Standard Landscape](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard-extend) | :heavy_check_mark: | :heavy_check_mark: | N/A | N/A | :heavy_check_mark: | N/A | N/A |
34-
| [Quickstart (Standard Landscape plus VSI)](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard-plus-vsi) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | N/A |
34+
| [Quickstart (Standard Landscape plus VSI)](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard-plus-vsi) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
3535

3636

3737
## Required IAM access policies

ibm_catalog.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,7 @@
560560
{
561561
"diagram": {
562562
"caption": "Power Virtual Server with VPC landing zone 'Standard Landscape' variation",
563-
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v8.4.5/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.svg",
563+
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v8.5.0/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.svg",
564564
"type": "image/svg+xml"
565565
},
566566
"description": "The Power Virtual Server with VPC landing zone as variation 'Create a new architecture' deploys VPC services and a Power Virtual Server workspace and interconnects them.\n \nRequired and optional management components are configured."
@@ -1218,7 +1218,7 @@
12181218
{
12191219
"diagram": {
12201220
"caption": "Power Virtual Server with VPC landing zone 'Quickstart' variation",
1221-
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v8.4.5/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.svg",
1221+
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v8.5.0/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.svg",
12221222
"type": "image/svg+xml"
12231223
},
12241224
"description": "The Power Virtual Server with VPC landing zone as 'Quickstart' variation of 'Create a new architecture' option deploys VPC services and a Power Virtual Server workspace and interconnects them. It also creates one Power virtual server instance of chosen t-shirt size or custom configuration.\n \nRequired and optional management components are configured."
@@ -1545,7 +1545,7 @@
15451545
{
15461546
"diagram": {
15471547
"caption": "Power Virtual Server with VPC landing zone 'Extend Standard Landscape' variation",
1548-
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v8.4.5/reference-architectures/standard-extend/deploy-arch-ibm-pvs-inf-standard-extend.svg",
1548+
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v8.5.0/reference-architectures/standard-extend/deploy-arch-ibm-pvs-inf-standard-extend.svg",
15491549
"type": "image/svg+xml"
15501550
},
15511551
"description": "The Power Virtual Server with VPC landing zone as variation 'Extend Power Virtual Server with VPC landing zone' creates an additional Power Virtual Server workspace and connects it with already created Power Virtual Server with VPC landing zone. It builds on existing Power Virtual Server with VPC landing zone deployed as a variation 'Create a new architecture'."

modules/powervs-vpc-landing-zone/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ module "configure_scc_wp_agent" {
276276
src_script_template_name = "configure-scc-wp-agent/ansible_configure_scc_wp_agent.sh.tftpl"
277277
dst_script_file_name = "${var.prefix}-configure_scc_wp_agent.sh"
278278

279-
src_playbook_template_name = "configure-scc-wp-agent/playbook-configure-scc-wp-agent.yml.tftpl"
279+
src_playbook_template_name = "configure-scc-wp-agent/playbook-configure-scc-wp-agent-linux.yml.tftpl"
280280
dst_playbook_file_name = "${var.prefix}-playbook-configure-scc-wp-agent.yml"
281281
playbook_template_vars = {
282282
COLLECTOR_ENDPOINT : local.scc_wp_instance.ingestion_endpoint,
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
---
2+
- name: Install and configure kspm_analyzer on AIX
3+
hosts: all
4+
vars:
5+
#collector_endpoint: "${COLLECTOR_ENDPOINT}" not used
6+
wp_api_endpoint: "${API_ENDPOINT}"
7+
access_key: "${ACCESS_KEY}"
8+
ansible_shell_executable: /usr/bin/ksh # Set the default shell
9+
ansible_shell_type: sh
10+
11+
tasks:
12+
- name: Ensure /opt directory exists
13+
ansible.builtin.file:
14+
path: /opt
15+
state: directory
16+
mode: '0755'
17+
18+
- name: Download kspm-analyzer binary
19+
ansible.builtin.shell:
20+
. /etc/profile && curl -o /opt/kspm-analyzer-aix-ppc64 https://s3.us-east-1.amazonaws.com/download.draios.com/dependencies/kspm-analyzer/1.44.17/kspm-analyzer-aix-ppc64
21+
args:
22+
creates: /opt/kspm-analyzer-aix-ppc64
23+
24+
- name: Make binary executable
25+
ansible.builtin.shell:
26+
chmod +x /opt/kspm-analyzer-aix-ppc64
27+
28+
- name: Check if kspm_analyzer SRC subsystem exists
29+
ansible.builtin.shell: lssrc -s kspm_analyzer
30+
register: kspm_subsystem_check
31+
failed_when: false
32+
changed_when: false
33+
34+
- name: Create SRC subsystem if it does not exist
35+
ansible.builtin.shell: |
36+
mkssys -p /opt/kspm-analyzer-aix-ppc64 \
37+
-s kspm_analyzer \
38+
-u 0 \
39+
-e /opt/kspm-analyzer-error.log \
40+
-i /opt/kspm-analyzer-input.log \
41+
-o /opt/kspm-analyzer-output.log
42+
when: kspm_subsystem_check.rc != 0
43+
44+
- name: Start kspm_analyzer with environment variables
45+
ansible.builtin.shell: |
46+
startsrc -s kspm_analyzer -e 'API_ENDPOINT={{ wp_api_endpoint | replace('https://', '') }} ACCESS_KEY={{ access_key }}'
47+
register: start_output
48+
failed_when: "'not found' in start_output.stderr"
49+
changed_when: "'is already active' not in start_output.stdout"
50+
51+
- name: Check if inittab entry exists
52+
ansible.builtin.shell: lsitab wpagent
53+
register: inittab_entry
54+
failed_when: false
55+
changed_when: false
56+
57+
- name: Add respawn entry to inittab if not present
58+
ansible.builtin.shell: |
59+
mkitab "wpagent:2:respawn:startsrc -s kspm_analyzer -e 'API_ENDPOINT={{ wp_api_endpoint | replace('https://', '') }} ACCESS_KEY={{ access_key }}'"
60+
when: "'wpagent' not in inittab_entry.stdout"

modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-scc-wp-agent/playbook-configure-scc-wp-agent.yml.tftpl renamed to modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-scc-wp-agent/playbook-configure-scc-wp-agent-linux.yml.tftpl

File renamed without changes.

reference-architectures/standard-extend/deploy-arch-ibm-pvs-inf-standard-extend.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ image_source: https://github.com/terraform-ibm-modules/terraform-ibm-powervs-inf
1515
use-case: ITServiceManagement
1616
industry: Technology
1717
content-type: reference-architecture
18-
version: v8.4.5
18+
version: v8.5.0
1919
compliance: SAPCertified
2020

2121
---
@@ -28,7 +28,7 @@ compliance: SAPCertified
2828
{: toc-industry="Technology"}
2929
{: toc-use-case="ITServiceManagement"}
3030
{: toc-compliance="SAPCertified"}
31-
{: toc-version="v8.4.5"}
31+
{: toc-version="v8.5.0"}
3232

3333
The Power Virtual Server with VPC landing zone as variation 'Extend Power Virtual Server with VPC landing zone' creates an additional Power Virtual Server workspace and connects it with the already created Power Virtual Server with VPC landing zone. It builds on the existing Power Virtual Server with VPC landing zone deployed as a variation 'Create a new architecture'.
3434

reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ image_source: https://github.com/terraform-ibm-modules/terraform-ibm-powervs-inf
1616
use-case: ITServiceManagement
1717
industry: Technology
1818
content-type: reference-architecture
19-
version: v8.4.5
19+
version: v8.5.0
2020
compliance:
2121

2222
---
@@ -28,7 +28,7 @@ compliance:
2828
{: toc-content-type="reference-architecture"}
2929
{: toc-industry="Technology"}
3030
{: toc-use-case="ITServiceManagement"}
31-
{: toc-version="v8.4.5"}
31+
{: toc-version="v8.5.0"}
3232

3333
Quickstart deployment of the Power Virtual Server with VPC landing zone creates VPC services, a Power Virtual Server workspace, and interconnects them. It also deploys a Power Virtual Server of chosen T-shirt size or custom configuration. Supported Os are Aix, IBM i, and Linux images.
3434

reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.svg

Lines changed: 1 addition & 1 deletion
Loading

reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ image_source: https://github.com/terraform-ibm-modules/terraform-ibm-powervs-inf
1515
use-case: ITServiceManagement
1616
industry: Technology
1717
content-type: reference-architecture
18-
version: v8.4.5
18+
version: v8.5.0
1919
compliance: SAPCertified
2020

2121
---
@@ -28,7 +28,7 @@ compliance: SAPCertified
2828
{: toc-industry="Technology"}
2929
{: toc-use-case="ITServiceManagement"}
3030
{: toc-compliance="SAPCertified"}
31-
{: toc-version="v8.4.5"}
31+
{: toc-version="v8.5.0"}
3232

3333
The Standard deployment of the Power Virtual Server with VPC landing zone creates VPC services and a Power Virtual Server workspace and interconnects them.
3434

solutions/standard-plus-vsi/README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,13 @@ This example sets up the following infrastructure:
2828
- t-shirt profile (Aix/IBMi/SAP Image)
2929
- Custom profile ( cores, memory, storage and image)
3030
- 1 volume
31+
- Network management services, filesystems and SCC Workload protection agents are configured for AIX and Linux instances.
3132

3233
## Solutions
3334

3435
| Variation | Available on IBM Catalog | Requires Schematics Workspace ID | Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastructure | Creates PowerVS Instance | Performs PowerVS OS Config |
3536
| ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- |
36-
| [Quickstart (Standard plus VSI)](./) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | N/A |
37+
| [Quickstart (Standard plus VSI)](./) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
3738

3839
## Reference architecture
3940
[Quickstart (Standard plus VSI) variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/blob/main/reference-architectures/standard-with.instance/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md)
@@ -49,20 +50,23 @@ This example sets up the following infrastructure:
4950
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.9 |
5051
| <a name="requirement_ibm"></a> [ibm](#requirement\_ibm) | 1.79.0 |
5152
| <a name="requirement_restapi"></a> [restapi](#requirement\_restapi) | 1.20.0 |
53+
| <a name="requirement_time"></a> [time](#requirement\_time) | 0.13.1 |
5254

5355
### Modules
5456

5557
| Name | Source | Version |
5658
|------|--------|---------|
59+
| <a name="module_pi_scc_wp_agent"></a> [pi\_scc\_wp\_agent](#module\_pi\_scc\_wp\_agent) | ../../modules/powervs-vpc-landing-zone/submodules/ansible | n/a |
5760
| <a name="module_powervs_instance"></a> [powervs\_instance](#module\_powervs\_instance) | terraform-ibm-modules/powervs-instance/ibm | 2.6.2 |
5861
| <a name="module_standard"></a> [standard](#module\_standard) | ../../modules/powervs-vpc-landing-zone | n/a |
5962

6063
### Resources
6164

6265
| Name | Type |
6366
|------|------|
67+
| [terraform_data.aix_init](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/resources/data) | resource |
68+
| [time_sleep.wait_for_dependencies](https://registry.terraform.io/providers/hashicorp/time/0.13.1/docs/resources/sleep) | resource |
6469
| [ibm_iam_auth_token.auth_token](https://registry.terraform.io/providers/IBM-Cloud/ibm/1.79.0/docs/data-sources/iam_auth_token) | data source |
65-
| [ibm_pi_catalog_images.catalog_images_ds](https://registry.terraform.io/providers/IBM-Cloud/ibm/1.79.0/docs/data-sources/pi_catalog_images) | data source |
6670

6771
### Inputs
6872

0 commit comments

Comments
 (0)