Skip to content

Commit 78737d3

Browse files
feat: new architecture (#838)
BREAKING CHANGE: new architecture
1 parent 2d6d963 commit 78737d3

File tree

73 files changed

+1754
-3991
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+1754
-3991
lines changed

.secrets.baseline

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"files": "go.sum|^.secrets.baseline$",
44
"lines": null
55
},
6-
"generated_at": "2023-12-09T06:49:47Z",
6+
"generated_at": "2024-05-14T18:42:22Z",
77
"plugins_used": [
88
{
99
"name": "AWSKeyDetector"
@@ -77,7 +77,7 @@
7777
}
7878
],
7979
"results": {
80-
"modules/ansible-configure-network-services/README.md": [
80+
"modules/ansible/README.md": [
8181
{
8282
"hashed_secret": "1a70e90515ef1357abd3531dead4b53b6eba959f",
8383
"is_secret": false,
@@ -100,15 +100,15 @@
100100
"hashed_secret": "91199272d5d6a574a51722ca6f3d1148edb1a0e7",
101101
"is_secret": false,
102102
"is_verified": false,
103-
"line_number": 40,
103+
"line_number": 44,
104104
"type": "Secret Keyword",
105105
"verified_result": null
106106
},
107107
{
108108
"hashed_secret": "a67ef662b9a11a96b15936764d77e118c9f155dd",
109109
"is_secret": false,
110110
"is_verified": false,
111-
"line_number": 54,
111+
"line_number": 57,
112112
"type": "Secret Keyword",
113113
"verified_result": null
114114
}

README.md

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ This repository contains deployable architecture solutions that help provision V
1313

1414
Three solutions are offered:
1515
1. [PowerVS full-stack variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/full-stack)
16-
- Creates three VPCs with RHEL or SLES instances, Power Virtual Server workspace, interconnects them, and configures OS 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/).
16+
- Creates a VPC and Power Virtual Server workspace, interconnects them, and configures OS 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/).
1717
2. [PowerVS extension variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/extension)
1818
- Extends the full-stack solution by creating a new Power Virtual Server workspace in a different zone and interconnects with the previous solution.
1919
- This solution is typically used for **High Availability scenarios** where a single management VPC can be used to reach both PowerVS workspaces.
@@ -22,9 +22,9 @@ Three solutions are offered:
2222
- Additionally creates a Power Virtual Server Instance of a selected t-shirt size.
2323
- This solution is typically utilized for **PoCs, demos, and quick onboarding** to PowerVS Infrastructure.
2424
4. [PowerVS import-workspace variation](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/import-workspace)
25-
- Takes information about an existing infrastructure and creates a schematics workspace.
26-
- The schematics workspace's ID and the outputs from it can be used to install the terraform solution 'Power Virtual Server for SAP HANA' on top of a pre-existing PowerVS infrastructure.
27-
- It creates the ACL and security group rules necessary for management services (NTP, NFS, DNS, and proxy server) and schematics engine access.
25+
- Takes information about an existing infrastructure and creates a schematics workspace.
26+
- The schematics workspace's ID and the outputs from it can be used to install the terraform solution 'Power Virtual Server for SAP HANA' on top of a pre-existing PowerVS infrastructure.
27+
- It creates the ACL and security group rules necessary for management services (NTP, NFS, DNS, and proxy server) and schematics engine access.
2828
- This solution is typically used for converting an existing Power Virtual Server landscape to a Schematics workspace.
2929

3030
## Reference architectures
@@ -40,14 +40,6 @@ Three solutions are offered:
4040
| [Quickstart](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/quickstart) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | N/A |
4141
| [Import-Workspace](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/import-workspace) | :heavy_check_mark: | N/A | N/A | N/A | N/A | N/A | N/A |
4242

43-
<!-- BEGIN OVERVIEW HOOK -->
44-
## Overview
45-
* [terraform-ibm-powervs-infrastructure](#terraform-ibm-powervs-infrastructure)
46-
* [Submodules](./modules)
47-
* [ansible-configure-network-services](./modules/ansible-configure-network-services)
48-
* [powervs-vpc-landing-zone](./modules/powervs-vpc-landing-zone)
49-
* [Contributing](#contributing)
50-
<!-- END OVERVIEW HOOK -->
5143

5244
## Required IAM access policies
5345

@@ -68,7 +60,6 @@ You need the following permissions to run this module.
6860
- `Editor` platform access
6961

7062
<!-- END MODULE HOOK -->
71-
7263
<!-- BEGIN CONTRIBUTING HOOK -->
7364
## Contributing
7465

cra-config.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ CRA_TARGETS:
77
TF_VAR_prefix: "cra-infra"
88
TF_VAR_powervs_zone: "syd05"
99
TF_VAR_powervs_resource_group_name: "Default"
10-
TF_VAR_landing_zone_configuration: "3VPC_RHEL"
1110
TF_VAR_external_access_ip: "0.0.0.0/0"
1211
TF_VAR_ssh_public_key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDb8qoH4U47+79ssT6FdsOIxxZY8/oxWc66WPwqHfpjCgDRP3Rc1uq2YEKIRJba2DzNFnf+byinH0O9hwjKZ/3l7HxNtvQZXdCnT79TOT/wGbcHBV8ZUTBkUOx67ryS0F5bKDdMDWdsWkMXkRb8AAsJWLAeuFsfMYQjMBLmvrMsRRB6GG+97jF18ghqHjuBTX1FNF9fcytEaz7WfP8KrgSYRcQOauIVlMJyOmh3gZl84u14SXwQKhQrdvqt47ZErKH+fbsgxfOvvmYgr5RktKjbmi+lyBkxRM7//BaKcPw5saThf1MiEesJxIqyL16DW9LXdWei74xHNuF65K03y975Qr9CtPkr1rGgxwU2ksqLy1NN5TnF4erd1VSuLZ5BLov7JRJ2K17ttt0agp9VmkjRFIivOek= some-user@testing-box"
1312
TF_VAR_ssh_private_key: "some_key"

cra-tf-validate-ignore-rules.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,18 @@
1111
"description": "Check whether Flow Logs for VPC are enabled",
1212
"ignore_reason": "In order for this rule to pass, Context Based Restrictions (CBRs) support needs to be added to the module (tracking in https://github.ibm.com/GoldenEye/issues/issues/5626). Even after that is added, there is still a dependency on SCC to support scanning for CBR rules. SCC CBR support is being tracked in https://github.ibm.com/project-fortress/pm/issues/11800.",
1313
"is_valid": true
14+
},
15+
{
16+
"scc_rule_id": "rule-8c923215-afdc-41b1-886c-64ce78741f8c",
17+
"description": "Check whether Application Load Balancer for VPC has health check configured when created",
18+
"ignore_reason": "In order for this rule to pass, Context Based Restrictions (CBRs) support needs to be added to the module (tracking in https://github.ibm.com/GoldenEye/issues/issues/5626). Even after that is added, there is still a dependency on SCC to support scanning for CBR rules. SCC CBR support is being tracked in https://github.ibm.com/project-fortress/pm/issues/11800.",
19+
"is_valid": true
20+
},
21+
{
22+
"scc_rule_id": "rule-65b61a0f-ffdb-41ba-873d-ad329e7fc0ee",
23+
"description": "Check whether Application Load Balancer for VPC is configured to convert HTTP client requests to HTTPS",
24+
"ignore_reason": "In order for this rule to pass, Context Based Restrictions (CBRs) support needs to be added to the module (tracking in https://github.ibm.com/GoldenEye/issues/issues/5626). Even after that is added, there is still a dependency on SCC to support scanning for CBR rules. SCC CBR support is being tracked in https://github.ibm.com/project-fortress/pm/issues/11800.",
25+
"is_valid": true
1426
}
1527
]
1628
}

ibm_catalog.json

Lines changed: 41 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@
4242
"features": [
4343
{
4444
"description": "VPC services (landing zone)",
45-
"title": "Management, Edge and Workload VPC services are created using VSI on VPC landing zone presets."
45+
"title": "Edge VPC services are created using VSI on VPC landing zone presets."
4646
},
4747
{
4848
"description": "Power Virtual Server workspaces",
4949
"title": "One PowerVS workspace is created by initial deployment. Additional PowerVS workspaces may be deployed as extension."
5050
},
5151
{
5252
"description": "Network management services",
53-
"title": "Bastion host (in management VPC), internet proxy based on SQUID (in edge VPC), NTP forwarder, DNS forwarder & NFS server (in workload VPC)."
53+
"title": "Bastion host, internet proxy based on SQUID, NTP forwarder, DNS forwarder & NFS as a service."
5454
}
5555
],
5656
"flavors": [
@@ -179,25 +179,12 @@
179179
"required": true
180180
},
181181
{
182-
"key": "landing_zone_configuration",
183-
"type": "string",
184-
"required": true,
182+
"key": "external_access_ip",
185183
"default_value": "",
186-
"options": [
187-
{
188-
"displayname": "3 VPCs (with RHEL instances)",
189-
"value": "3VPC_RHEL"
190-
},
191-
{
192-
"displayname": "3 VPCs (with SLES instances)",
193-
"value": "3VPC_SLES"
194-
}
195-
],
196-
"custom_config": {}
184+
"required": true
197185
},
198186
{
199-
"key": "external_access_ip",
200-
"default_value": "",
187+
"key": "client_to_site_vpn",
201188
"required": true
202189
},
203190
{
@@ -258,9 +245,6 @@
258245
{
259246
"key": "powervs_backup_network"
260247
},
261-
{
262-
"key": "cloud_connection"
263-
},
264248
{
265249
"key": "tags"
266250
}
@@ -287,6 +271,9 @@
287271
{
288272
"key": "vsi_list"
289273
},
274+
{
275+
"key": "resource_group_data"
276+
},
290277
{
291278
"key": "access_host_or_ip"
292279
},
@@ -302,6 +289,12 @@
302289
{
303290
"key": "nfs_host_or_ip_path"
304291
},
292+
{
293+
"key": "ansible_host_or_ip"
294+
},
295+
{
296+
"key": "network_services_config"
297+
},
305298
{
306299
"key": "powervs_zone"
307300
},
@@ -329,9 +322,6 @@
329322
{
330323
"key": "powervs_images"
331324
},
332-
{
333-
"key": "cloud_connection_count"
334-
},
335325
{
336326
"key": "schematics_workspace_id"
337327
}
@@ -407,22 +397,18 @@
407397
},
408398
{
409399
"title": "Number of VPCs",
410-
"description": "3"
400+
"description": "1"
411401
},
412402
{
413403
"title": "Number of Intel VSIs",
414-
"description": "3"
404+
"description": "2"
415405
},
416406
{
417407
"title": "Separate VPC for management",
418408
"description": "Yes"
419409
},
420410
{
421-
"title": "Separate VPC for Internet Services",
422-
"description": "Yes"
423-
},
424-
{
425-
"title": "Separate VPC for Private Services",
411+
"title": "Separate VPC for Network Services",
426412
"description": "Yes"
427413
},
428414
{
@@ -439,7 +425,7 @@
439425
},
440426
{
441427
"title": "Additional management configurations on VPC",
442-
"description": "NFS server, NTP forwarder, and DNS forwarder reachable from PowerVS Workspace"
428+
"description": "NFS as service, NTP forwarder, and DNS forwarder reachable from PowerVS Workspace"
443429
}
444430
],
445431
"diagrams": [
@@ -614,6 +600,10 @@
614600
"default_value": "",
615601
"required": true
616602
},
603+
{
604+
"key": "client_to_site_vpn",
605+
"required": true
606+
},
617607
{
618608
"key": "ssh_public_key",
619609
"required": true,
@@ -761,9 +751,6 @@
761751
{
762752
"key": "powervs_backup_network"
763753
},
764-
{
765-
"key": "cloud_connection"
766-
},
767754
{
768755
"key": "tags"
769756
}
@@ -790,6 +777,9 @@
790777
{
791778
"key": "vsi_list"
792779
},
780+
{
781+
"key": "resource_group_data"
782+
},
793783
{
794784
"key": "access_host_or_ip"
795785
},
@@ -805,6 +795,12 @@
805795
{
806796
"key": "nfs_host_or_ip_path"
807797
},
798+
{
799+
"key": "ansible_host_or_ip"
800+
},
801+
{
802+
"key": "network_services_config"
803+
},
808804
{
809805
"key": "powervs_zone"
810806
},
@@ -832,9 +828,6 @@
832828
{
833829
"key": "powervs_images"
834830
},
835-
{
836-
"key": "cloud_connection_count"
837-
},
838831
{
839832
"key": "powervs_instance_management_ip"
840833
},
@@ -923,19 +916,15 @@
923916
},
924917
{
925918
"title": "Number of Intel VSIs",
926-
"description": "1"
919+
"description": "2"
927920
},
928921
{
929922
"title": "Separate VPC for management",
930-
"description": "No"
931-
},
932-
{
933-
"title": "Separate VPC for Internet Services",
934-
"description": "No"
923+
"description": "Yes"
935924
},
936925
{
937-
"title": "Separate VPC for Private Services",
938-
"description": "No"
926+
"title": "Separate VPC for Network Services",
927+
"description": "Yes"
939928
},
940929
{
941930
"title": "Increases security with Key Management",
@@ -1189,9 +1178,6 @@
11891178
{
11901179
"key": "powervs_images"
11911180
},
1192-
{
1193-
"key": "cloud_connection_count"
1194-
},
11951181
{
11961182
"key": "schematics_workspace_id"
11971183
}
@@ -1455,9 +1441,6 @@
14551441
"key": "powervs_image_names",
14561442
"required": true
14571443
},
1458-
{
1459-
"key": "cloud_connection"
1460-
},
14611444
{
14621445
"key": "tags"
14631446
}
@@ -1499,6 +1482,12 @@
14991482
{
15001483
"key": "nfs_host_or_ip_path"
15011484
},
1485+
{
1486+
"key": "ansible_host_or_ip"
1487+
},
1488+
{
1489+
"key": "network_services_config"
1490+
},
15021491
{
15031492
"key": "powervs_zone"
15041493
},
@@ -1526,9 +1515,6 @@
15261515
{
15271516
"key": "powervs_images"
15281517
},
1529-
{
1530-
"key": "cloud_connection_count"
1531-
},
15321518
{
15331519
"key": "schematics_workspace_id"
15341520
}

0 commit comments

Comments
 (0)