diff --git a/.trivyignore b/.trivyignore new file mode 100644 index 00000000..c81f7732 --- /dev/null +++ b/.trivyignore @@ -0,0 +1 @@ +AVD-AZU-0012 diff --git a/README.md b/README.md index f3214b3d..c778ab3f 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Three solutions are offered: - 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/). - 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. - This solution is typically utilized for **PoCs, demos, and quick onboarding** to PowerVS Infrastructure. -3. [Quickstart Openshift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard-openshift) +3. [Quickstart OpenShift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/solutions/standard-openshift) - Creates a VPC and a Power Virtual Server workspace and then deploys an OpenShift Cluster in them by using the [RedHat IPI Installer](https://docs.redhat.com/en/documentation/openshift_container_platform/4.19/html-single/installing_on_ibm_power_virtual_server/index) for IBM PowerVS. - The number of PowerVS Master and Worker nodes and their compute configuration is fully customizable. - Optionally creates IBM Cloud Monitoring and a SCC Workload protection instances. @@ -25,7 +25,7 @@ Three solutions are offered: ## Reference architectures - [Standard Landscape](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.md) - [Quickstart (Standard Landscape plus VSI)](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md) -- [Quickstart Openshift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md) +- [Quickstart OpenShift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/tree/main/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md) ## Solutions diff --git a/ibm_catalog.json b/ibm_catalog.json index a0a4c2ae..e02c321c 100644 --- a/ibm_catalog.json +++ b/ibm_catalog.json @@ -192,7 +192,6 @@ { "key": "ssh_public_key", "type": "multiline_secure_value", - "display_name": "ssh_public_key", "required": true, "custom_config": { "grouping": "deployment", @@ -203,7 +202,6 @@ { "key": "ssh_private_key", "type": "multiline_secure_value", - "display_name": "ssh_private_key", "required": true, "custom_config": { "grouping": "deployment", @@ -250,7 +248,6 @@ { "key": "powervs_custom_image_cos_service_credentials", "type": "multiline_secure_value", - "display_name": "powervs_custom_image_cos_service_credentials", "custom_config": { "grouping": "deployment", "original_grouping": "deployment", @@ -288,7 +285,12 @@ { "key": "ansible_vault_password", "type": "multiline_secure_value", - "display_name": "ansible_vault_password" + "required": true, + "custom_config": { + "type": "multiline_secure_value", + "grouping": "deployment", + "original_grouping": "deployment" + } }, { "key": "enable_monitoring" @@ -470,7 +472,7 @@ { "diagram": { "caption": "Power Virtual Server with VPC landing zone 'Standard Landscape' variation", - "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v10.0.0/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.svg", + "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v10.0.1/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.svg", "type": "image/svg+xml" }, "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." @@ -692,7 +694,6 @@ "key": "ssh_public_key", "required": true, "type": "multiline_secure_value", - "display_name": "ssh_public_key", "custom_config": { "grouping": "deployment", "original_grouping": "deployment", @@ -703,7 +704,6 @@ "key": "ssh_private_key", "required": true, "type": "multiline_secure_value", - "display_name": "ssh_private_key", "custom_config": { "grouping": "deployment", "original_grouping": "deployment", @@ -724,8 +724,12 @@ { "key": "ansible_vault_password", "type": "multiline_secure_value", - "display_name": "ansible_vault_password", - "required": true + "required": true, + "custom_config": { + "type": "multiline_secure_value", + "grouping": "deployment", + "original_grouping": "deployment" + } }, { "key": "custom_profile_instance_boot_image", @@ -1084,7 +1088,7 @@ { "diagram": { "caption": "Power Virtual Server with VPC landing zone 'Quickstart' variation", - "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v10.0.0/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.svg", + "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v10.0.1/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.svg", "type": "image/svg+xml" }, "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." @@ -1094,7 +1098,7 @@ "terraform_version": "1.10.5" }, { - "label": "Quickstart Openshift", + "label": "Quickstart OpenShift", "name": "standard-openshift", "install_type": "fullstack", "index": 3, @@ -1199,7 +1203,6 @@ { "key": "ssh_public_key", "type": "multiline_secure_value", - "display_name": "ssh_public_key", "required": true, "custom_config": { "grouping": "deployment", @@ -1210,7 +1213,6 @@ { "key": "ssh_private_key", "type": "multiline_secure_value", - "display_name": "ssh_private_key", "required": true, "custom_config": { "grouping": "deployment", @@ -1232,40 +1234,46 @@ { "key": "user_id", "type": "string", - "display_name": "user_id", "required": true }, { "key": "openshift_pull_secret", "type": "multiline_secure_value", - "display_name": "openshift_pull_secret", - "required": true + "required": true, + "custom_config": { + "type": "multiline_secure_value", + "grouping": "deployment", + "original_grouping": "deployment" + } }, { "key": "cluster_base_domain", "type": "string", - "display_name": "cluster_base_domain", "required": true }, { "key": "openshift_release", - "type": "string", - "display_name": "openshift_release" + "type": "string" }, { "key": "cluster_network_config", - "type": "code_editor", - "display_name": "cluster_network_config" + "type": "code_editor" }, { "key": "cluster_master_node_config", - "type": "code_editor", - "display_name": "cluster_master_node_config" + "custom_config": { + "grouping": "deployment", + "original_grouping": "deployment", + "type": "code_editor" + } }, { "key": "cluster_worker_node_config", - "type": "code_editor", - "display_name": "cluster_worker_node_config" + "custom_config": { + "grouping": "deployment", + "original_grouping": "deployment", + "type": "code_editor" + } }, { "key": "tags" @@ -1287,8 +1295,12 @@ { "key": "ansible_vault_password", "type": "multiline_secure_value", - "display_name": "ansible_vault_password", - "required": true + "required": true, + "custom_config": { + "type": "multiline_secure_value", + "grouping": "deployment", + "original_grouping": "deployment" + } }, { "key": "enable_monitoring" @@ -1472,20 +1484,16 @@ { "title": "Monitoring Instance and Monitoring Intel VSI Host", "description": "Optional" - }, - { - "title": "Bring your own image to PowerVS", - "description": "Optional" } ], "diagrams": [ { "diagram": { - "caption": "Power Virtual Server with VPC landing zone 'Quickstart Openshift' variation", - "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v10.0.0/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg", + "caption": "Power Virtual Server with VPC landing zone 'Quickstart OpenShift' variation", + "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/refs/tags/v10.0.1/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg", "type": "image/svg+xml" }, - "description": "The Power Virtual Server with VPC landing zone as variation 'Quickstart Openshift' deploys VPC services and an Openshift Cluster on PowerVS and interconnects them.\n \nRequired and optional management components are configured." + "description": "The Power Virtual Server with VPC landing zone as variation 'Quickstart OpenShift' deploys VPC services and an Openshift Cluster on PowerVS and interconnects them.\n \nRequired and optional management components are configured." } ] }, diff --git a/modules/powervs-vpc-landing-zone/README.md b/modules/powervs-vpc-landing-zone/README.md index ce5e9545..b5768ccc 100644 --- a/modules/powervs-vpc-landing-zone/README.md +++ b/modules/powervs-vpc-landing-zone/README.md @@ -165,8 +165,8 @@ Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastr | [powervs\_zone](#input\_powervs\_zone) | IBM Cloud data center location where IBM PowerVS infrastructure will be created. | `string` | n/a | yes | | [prefix](#input\_prefix) | A unique identifier for resources. Must begin with a lowercase letter and end with a lowercase letter or number. Must contain only lowercase letters, numbers, and - characters. This prefix will be prepended to any resources provisioned by this template. Prefixes must be 16 or fewer characters. | `string` | n/a | yes | | [sm\_service\_plan](#input\_sm\_service\_plan) | The service/pricing plan to use when provisioning a new Secrets Manager instance. Allowed values: `standard` and `trial`. Only used if `existing_sm_instance_guid` is set to null. | `string` | `"standard"` | no | -| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys). | `string` | n/a | yes | -| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. | `string` | n/a | yes | +| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | +| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | | [tags](#input\_tags) | List of tag names for the IBM Cloud PowerVS workspace | `list(string)` | `[]` | no | | [transit\_gateway\_global](#input\_transit\_gateway\_global) | Connect to the networks outside the associated region. | `bool` | `false` | no | | [user\_data](#input\_user\_data) | User data that automatically performs common configuration tasks or runs scripts. For more information, see https://cloud.ibm.com/docs/vpc?topic=vpc-user-data. For information on using the user\_data variable, please refer: https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-user-data | `string` | `null` | no | diff --git a/modules/powervs-vpc-landing-zone/variables.tf b/modules/powervs-vpc-landing-zone/variables.tf index c3759178..4f7478db 100644 --- a/modules/powervs-vpc-landing-zone/variables.tf +++ b/modules/powervs-vpc-landing-zone/variables.tf @@ -35,12 +35,12 @@ variable "vpc_intel_images" { } variable "ssh_public_key" { - description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region." + description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string } variable "ssh_private_key" { - description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys)." + description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string sensitive = true } diff --git a/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md b/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md index a01f58f5..8c11e9fd 100644 --- a/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md +++ b/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md @@ -1,7 +1,7 @@ --- copyright: years: 2024, 2025 -lastupdated: "2025-09-15" +lastupdated: "2025-10-08" keywords: subcollection: deployable-reference-architectures authors: @@ -15,28 +15,31 @@ image_source: https://github.com/terraform-ibm-modules/terraform-ibm-powervs-inf use-case: ITServiceManagement industry: Technology content-type: reference-architecture -version: v10.0.0 +version: v10.0.1 compliance: --- {{site.data.keyword.attribute-definition-list}} -# Power Virtual Server with VPC landing zone - 'Quickstart Openshift Variation' +# Power Virtual Server with VPC landing zone - 'Quickstart OpenShift Variation' {: #deploy-arch-ibm-pvs-inf-standard-openshift} {: toc-content-type="reference-architecture"} {: toc-industry="Technology"} {: toc-use-case="ITServiceManagement"} -{: toc-version="v10.0.0"} +{: toc-version="v10.0.1"} The Quickstart OpenShift deployment on Power Virtual Server with a VPC landing zone uses the Red Hat IPI installer to set up an OpenShift cluster. Before the deployment begins, it provisions VPC services and creates a Power Virtual Server workspace, which together form the landing zone used to access and manage the cluster. The number of PowerVS master and worker nodes and their respective compute configurations can be configured during deployment. Optionally, Monitoring and Security and Compliance Center Workload Protection can also be configured. +Due to technical limitations, the cost estimate Projects gives does not include the PowerVS resources deployed. The cost estimate given on the catalog page is accurate for a deployment using default values. This only applies to the Quickstart OpenShift variation. +{: important} + ## Architecture diagram {: #standard-openshift-architecture-diagram} -![Architecture diagram for 'Power Virtual Server with VPC landing zone' - variation 'Quickstart Openshift'.](deploy-arch-ibm-pvs-inf-standard-openshift.svg "Architecture diagram"){: caption="Figure 1. Single-zone PowerVS workspace accessible over secure landing zone" caption-side="bottom"}{: external download="deploy-arch-ibm-pvs-inf-standard-openshift.svg"} +![Architecture diagram for 'Power Virtual Server with VPC landing zone' - variation 'Quickstart OpenShift'.](deploy-arch-ibm-pvs-inf-standard-openshift.svg "Architecture diagram"){: caption="Figure 1. Single-zone PowerVS workspace accessible over secure landing zone" caption-side="bottom"}{: external download="deploy-arch-ibm-pvs-inf-standard-openshift.svg"} ## Design requirements {: #standard-openshift-design-requirements} diff --git a/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg b/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg index 5b8767f6..c1bdfb1d 100644 --- a/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg +++ b/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg @@ -1,4 +1,4 @@ -
IBM Cloud
IBM Cloud
Zone 1
Zone 1
TransitGateway
PowerVS Resource Group
PowerVS Resource Group
Secure PowerVS Workspace
Secure PowerVS Workspace
SSH Public Key
10.72.0.0/24: Machine Subnet with DHCP Server
10.72.0.0/24: Machine Subnet with DHCP Server
Power Virtual Server Instance
Worker Nodes
Power Virtual Server Instance...
Block Storageveth: DHCP Machine Subnet
Power Virtual Server Instance
Master Nodes
Power Virtual Server Instanc...
Block Storageveth: DHCP Machine Subnet
Power Virtual Server Instance
Bootstrap Instance (temporary)
Power Virtual Server Instanc...
Block Storageveth: DHCP Machine Subnet
Cloud Services
Cloud Services
Edge VPC Flow Log CollectorSecretsManagerObject  StorageInstallation filesObject  StorageActivity tracker MonitoringKey ProtectAcitivity Tracker Event RoutingActivity TrackerSCC WorkloadProtectionDNS Service
Services Resource Group
Services Resource Group
Edge Resource Group
Edge Resource Group
Edge VPC (Default ACL)
Edge VPC (Default ACL)
Management SG
Management SG
10.30.20.0/24: 
Mgmt VSI Subnet
10.30.20.0/24:...
Virtual Server
Virtual Server
FloatingIPBastionHost
Network-services SG
Network-services SG
10.30.40.0/24: Edge VSI Subnet
10.30.40.0/24: Edge VSI Subnet
Virtual Server
Virtual Server
Proxy ServerAnsible Node
PublicGateway
Virtual Server
Virtual Server
Monitoring Host
Default SG
Default SG
10.30.10.0/24: 
VPN Subnet
10.30.10.0/24:...
Client to site VPN server
ApplicationLoad BalancerPublic APIApplicationLoad BalancerInternal APIApplicationLoad BalancerCluster Applications
10.30.30.0/24: 
VPE Subnet
10.30.30.0/24:...
COS VPE
VPE SG
VPE SG
Consumer
Consumer
UserInternet
Text is not SVG - cannot display
\ No newline at end of file +
IBM Cloud
Zone 1
TransitGateway
PowerVS Resource Group
Secure PowerVS Workspace
SSH Public Key
10.72.0.0/24: Machine Subnet with DHCP Server
virtual-machinevirtual-machine
Power Virtual Server Instance
Worker Nodes
virtual-machineBlock Storageveth: DHCP Machine Subnet
Worker Node
virtual-machinevirtual-machine
Power Virtual Server Instance
Master Nodes
virtual-machineBlock Storageveth: DHCP Machine Subnet
Master Node
Power Virtual Server Instance
Bootstrap Instance (temporary)
virtual-machineBlock Storageveth: DHCP Machine Subnet
Cloud Services
Edge VPC Flow Log CollectorSecretsManagerObject  StorageInstallation filesObject  StorageActivity tracker MonitoringKey ProtectAcitivity Tracker Event RoutingActivity TrackerSCC WorkloadProtection dns-services DNS Service
Services Resource Group
Edge Resource Group
Edge VPC (Default ACL)
Management SG
10.30.20.0/24: 
Mgmt VSI Subnet
Virtual Server
virtual-machineFloatingIPBastionHost
Network-services SG
10.30.40.0/24: Edge VSI Subnet
Virtual Server
virtual-machineProxy ServerAnsible Node
PublicGateway
Virtual Server
virtual-machineMonitoring Host
Default SG
10.30.10.0/24: 
VPN Subnet
Client to site VPN server
ApplicationLoad BalancerPublic APIApplicationLoad BalancerInternal APIApplicationLoad BalancerCluster Applications
10.30.30.0/24: 
VPE Subnet
COS VPE
VPE SG
Consumer
UserInternet
\ No newline at end of file diff --git a/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md b/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md index 6a07c9b7..011c10de 100644 --- a/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md +++ b/reference-architectures/standard-plus-vsi/deploy-arch-ibm-pvs-inf-standard-plus-vsi.md @@ -1,7 +1,7 @@ --- copyright: years: 2024, 2025 -lastupdated: "2025-09-15" +lastupdated: "2025-10-08" keywords: subcollection: deployable-reference-architectures authors: @@ -16,7 +16,7 @@ image_source: https://github.com/terraform-ibm-modules/terraform-ibm-powervs-inf use-case: ITServiceManagement industry: Technology content-type: reference-architecture -version: v10.0.0 +version: v10.0.1 compliance: --- @@ -28,7 +28,7 @@ compliance: {: toc-content-type="reference-architecture"} {: toc-industry="Technology"} {: toc-use-case="ITServiceManagement"} -{: toc-version="v10.0.0"} +{: toc-version="v10.0.1"} 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. diff --git a/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.md b/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.md index 8ac8dd97..6fea1c95 100644 --- a/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.md +++ b/reference-architectures/standard/deploy-arch-ibm-pvs-inf-standard.md @@ -1,7 +1,7 @@ --- copyright: years: 2024, 2025 -lastupdated: "2025-09-15" +lastupdated: "2025-10-08" keywords: subcollection: deployable-reference-architectures authors: @@ -15,7 +15,7 @@ image_source: https://github.com/terraform-ibm-modules/terraform-ibm-powervs-inf use-case: ITServiceManagement industry: Technology content-type: reference-architecture -version: v10.0.0 +version: v10.0.1 compliance: SAPCertified --- @@ -28,7 +28,7 @@ compliance: SAPCertified {: toc-industry="Technology"} {: toc-use-case="ITServiceManagement"} {: toc-compliance="SAPCertified"} -{: toc-version="v10.0.0"} +{: toc-version="v10.0.1"} The Standard deployment of the Power Virtual Server with VPC landing zone creates VPC services and a Power Virtual Server workspace and interconnects them. diff --git a/solutions/standard-openshift/README.md b/solutions/standard-openshift/README.md index e6ea9e79..c6a8da12 100644 --- a/solutions/standard-openshift/README.md +++ b/solutions/standard-openshift/README.md @@ -1,4 +1,4 @@ -# IBM Cloud Solution for Power Virtual Server with VPC Landing Zone Quickstart Openshift Variation +# IBM Cloud Solution for Power Virtual Server with VPC Landing Zone Quickstart OpenShift Variation This example sets up an OpenShift Cluster on PowerVS following infrastructure: - A **VPC Infrastructure** with the following components: @@ -29,17 +29,20 @@ This example sets up an OpenShift Cluster on PowerVS following infrastructure: - 2 or more worker nodes - Custom profile (cores, memory, machine type, core type) +Due to technical limitations, the cost estimate Projects gives does not include the PowerVS resources deployed. The cost estimate given on the catalog page is accurate for a deployment using default values. This only applies to the Quickstart OpenShift variation. +{: important} + ## Solutions | Variation | Available on IBM Catalog | Requires Schematics Workspace ID | Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastructure | Creates PowerVS Instance | Creates OpenShift Cluster on PowerVS | | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | -| [Quickstart Openshift](./) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| [Quickstart OpenShift](./) | :heavy_check_mark: | N/A | :heavy_check_mark:| :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | ## Reference architecture -[Quickstart Openshift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/blob/main/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md) +[Quickstart OpenShift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/blob/main/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.md) ## Architecture diagram -![Quickstart Openshift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/blob/main/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg) +![Quickstart OpenShift](https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/blob/main/reference-architectures/standard-openshift/deploy-arch-ibm-pvs-inf-standard-openshift.svg) ### Requirements @@ -73,10 +76,10 @@ This example sets up an OpenShift Cluster on PowerVS following infrastructure: | [ansible\_vault\_password](#input\_ansible\_vault\_password) | Vault password to encrypt ansible playbooks that contain sensitive information. 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` | n/a | yes | | [client\_to\_site\_vpn](#input\_client\_to\_site\_vpn) | VPN configuration - the client ip pool and list of users email ids to access the environment. If enabled, then a Secret Manager instance is also provisioned with certificates generated. See optional parameters to reuse an existing Secrets manager instance. |
object({
enable = bool
client_ip_pool = string
vpn_client_access_group_users = list(string)
})
|
{
"client_ip_pool": "192.168.0.0/16",
"enable": true,
"vpn_client_access_group_users": []
}
| no | | [cluster\_base\_domain](#input\_cluster\_base\_domain) | The base domain name that will be used by the cluster. Only .test, .example, and .invalid domains are supported (ie: domain.example). | `string` | n/a | yes | -| [cluster\_master\_node\_config](#input\_cluster\_master\_node\_config) | Configuration for the master nodes of the OpenShift cluster, including CPU, system type, processor type, and replica count. If system\_type is null, it's chosen based on whether it's supported in the region. This can be overwritten by passing a value, e.g. 's1022' or 's922'. Memory is in GB. |
object({
processors = number
memory = number
system_type = string
proc_type = string
replicas = number
})
|
{
"memory": 32,
"proc_type": "Shared",
"processors": 4,
"replicas": 3,
"system_type": null
}
| no | +| [cluster\_master\_node\_config](#input\_cluster\_master\_node\_config) | Configuration for the master nodes of the OpenShift cluster, including CPU, system type, processor type, and replica count. If system\_type is null, it's chosen based on whether it's supported in the region. This can be overwritten by passing a value, e.g. 's1022' or 's922'. Memory is in GB. |
object({
processors = number
memory = number
system_type = string
proc_type = string
replicas = number
})
|
{
"memory": "32",
"proc_type": "Shared",
"processors": "4",
"replicas": "3",
"system_type": null
}
| no | | [cluster\_name](#input\_cluster\_name) | The name of the cluster and a unique identifier used as prefix for resources. Must begin with a lowercase letter and end with a lowercase letter or number. Must contain only lowercase letters, numbers, and - characters. This prefix will be prepended to any resources provisioned by this template. Prefixes must be 16 or fewer characters. | `string` | n/a | yes | | [cluster\_network\_config](#input\_cluster\_network\_config) | Configuration object for the OpenShift cluster and service network CIDRs. |
object({
cluster_network_cidr = string
cluster_service_network_cidr = string
cluster_machine_network_cidr = string
})
|
{
"cluster_machine_network_cidr": "10.72.0.0/24",
"cluster_network_cidr": "10.128.0.0/14",
"cluster_service_network_cidr": "10.67.0.0/16"
}
| no | -| [cluster\_worker\_node\_config](#input\_cluster\_worker\_node\_config) | Configuration for the worker nodes of the OpenShift cluster, including CPU, system type, processor type, and replica count. If system\_type is null, it's chosen based on whether it's supported in the region. This can be overwritten by passing a value, e.g. 's1022' or 's922'. Memory is in GB. |
object({
processors = number
memory = number
system_type = string
proc_type = string
replicas = number
})
|
{
"memory": 32,
"proc_type": "Shared",
"processors": 4,
"replicas": 3,
"system_type": null
}
| no | +| [cluster\_worker\_node\_config](#input\_cluster\_worker\_node\_config) | Configuration for the worker nodes of the OpenShift cluster, including CPU, system type, processor type, and replica count. If system\_type is null, it's chosen based on whether it's supported in the region. This can be overwritten by passing a value, e.g. 's1022' or 's922'. Memory is in GB. |
object({
processors = number
memory = number
system_type = string
proc_type = string
replicas = number
})
|
{
"memory": "32",
"proc_type": "Shared",
"processors": "4",
"replicas": "3",
"system_type": null
}
| no | | [enable\_monitoring](#input\_enable\_monitoring) | Specify whether Monitoring will be enabled. This includes the creation of an IBM Cloud Monitoring Instance and an Intel Monitoring Instance to host the services. If you already have an existing monitoring instance then specify in optional parameter 'existing\_monitoring\_instance\_crn' and setting this parameter to true. | `bool` | `false` | no | | [enable\_scc\_wp](#input\_enable\_scc\_wp) | Enable SCC Workload Protection and install and configure the SCC Workload Protection agent on all intel VSIs in this deployment. | `bool` | `true` | no | | [existing\_monitoring\_instance\_crn](#input\_existing\_monitoring\_instance\_crn) | Existing CRN of IBM Cloud Monitoring Instance. If value is null, then an IBM Cloud Monitoring Instance will not be created but an intel VSI instance will be created if 'enable\_monitoring' is true. | `string` | `null` | no | @@ -86,12 +89,12 @@ This example sets up an OpenShift Cluster on PowerVS following infrastructure: | [ibmcloud\_api\_key](#input\_ibmcloud\_api\_key) | The IBM Cloud platform API key needed to deploy IAM enabled resources. | `string` | n/a | yes | | [intel\_user\_data](#input\_intel\_user\_data) | User data that automatically performs common configuration tasks or runs scripts only on the intel VSIs. For more information, see https://cloud.ibm.com/docs/vpc?topic=vpc-user-data. For information on using the user\_data variable, please refer: https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-user-data | `string` | `null` | no | | [network\_services\_vsi\_profile](#input\_network\_services\_vsi\_profile) | Compute profile configuration of the network services vsi (cpu and memory configuration). Must be one of the supported profiles. See [here](https://cloud.ibm.com/docs/vpc?topic=vpc-profiles&interface=ui). | `string` | `"cx2-2x4"` | no | -| [openshift\_pull\_secret](#input\_openshift\_pull\_secret) | Pull secret from Red Hat OpenShift Cluster Manager for authenticating OpenShift image downloads from Red Hat container registries. A RedHat account is required. It can be obtained on https://console.redhat.com/openshift/install/pull-secret. | `map(any)` | n/a | yes | +| [openshift\_pull\_secret](#input\_openshift\_pull\_secret) | Pull secret from Red Hat OpenShift Cluster Manager for authenticating OpenShift image downloads from Red Hat container registries. A RedHat account is required. It can be obtained on https://console.redhat.com/openshift/install/pull-secret. | `string` | n/a | yes | | [openshift\_release](#input\_openshift\_release) | The OpenShift IPI release version to deploy. | `string` | `"4.19.13"` | no | | [powervs\_zone](#input\_powervs\_zone) | IBM Cloud data center location where IBM PowerVS infrastructure will be created. Supported regions are: dal10, dal12, eu-de-1, eu-de-2, lon04, lon06, mad02, mad04, osa21, sao01, sao04, syd04, syd05, us-east, us-south, wdc06, wdc07. | `string` | n/a | yes | | [sm\_service\_plan](#input\_sm\_service\_plan) | The service/pricing plan to use when provisioning a new Secrets Manager instance. Allowed values: `standard` and `trial`. Only used if `existing_sm_instance_guid` is set to null. | `string` | `"standard"` | no | -| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys). | `string` | n/a | yes | -| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. | `string` | n/a | yes | +| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | +| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | | [tags](#input\_tags) | List of tag names for the IBM Cloud PowerVS workspace | `list(string)` | `[]` | no | | [user\_id](#input\_user\_id) | The IBM Cloud login user ID associated with the account where the cluster will be deployed. | `string` | n/a | yes | | [vpc\_intel\_images](#input\_vpc\_intel\_images) | Stock OS image names for creating VPC landing zone VSI instances: RHEL (management and network services) and SLES (monitoring). |
object({
rhel_image = string
sles_image = string
})
|
{
"rhel_image": "ibm-redhat-9-4-amd64-sap-applications-7",
"sles_image": "ibm-sles-15-7-amd64-sap-applications-1"
}
| no | diff --git a/solutions/standard-openshift/ansible/templates-ansible/deploy-openshift-cluster/playbook-configure-ocp-cluster.yml.tftpl b/solutions/standard-openshift/ansible/templates-ansible/deploy-openshift-cluster/playbook-configure-ocp-cluster.yml.tftpl index 82b26ce9..716ac3c5 100644 --- a/solutions/standard-openshift/ansible/templates-ansible/deploy-openshift-cluster/playbook-configure-ocp-cluster.yml.tftpl +++ b/solutions/standard-openshift/ansible/templates-ansible/deploy-openshift-cluster/playbook-configure-ocp-cluster.yml.tftpl @@ -26,7 +26,7 @@ powervs_zone: "${POWERVS_ZONE}" vpc_name: "${VPC_NAME}" vpc_region: "${VPC_REGION}" - pull_secret: '${PULL_SECRET_FILE}' + pull_secret: '${PULL_SECRET}' ssh_key: "${SSH_KEY}" base_path: "/tmp" base_url: "https://mirror.openshift.com/pub/openshift-v4" diff --git a/solutions/standard-openshift/main.tf b/solutions/standard-openshift/main.tf index 083cee9c..07e38748 100644 --- a/solutions/standard-openshift/main.tf +++ b/solutions/standard-openshift/main.tf @@ -105,7 +105,7 @@ module "ocp_cluster_install_configuration" { POWERVS_ZONE : var.powervs_zone, VPC_NAME : module.standard.vpc_names[0], VPC_REGION : local.vpc_region, - PULL_SECRET_FILE : jsonencode(var.openshift_pull_secret), + PULL_SECRET : trimspace(var.openshift_pull_secret), SSH_KEY : var.ssh_public_key, } diff --git a/solutions/standard-openshift/variables.tf b/solutions/standard-openshift/variables.tf index d038b221..4fd52774 100644 --- a/solutions/standard-openshift/variables.tf +++ b/solutions/standard-openshift/variables.tf @@ -13,12 +13,12 @@ variable "cluster_name" { } variable "ssh_public_key" { - description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region." + description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string } variable "ssh_private_key" { - description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys)." + description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string sensitive = true } @@ -30,7 +30,7 @@ variable "user_id" { variable "openshift_pull_secret" { description = "Pull secret from Red Hat OpenShift Cluster Manager for authenticating OpenShift image downloads from Red Hat container registries. A RedHat account is required. It can be obtained on https://console.redhat.com/openshift/install/pull-secret." - type = map(any) + type = string sensitive = true } @@ -40,7 +40,6 @@ variable "ibmcloud_api_key" { sensitive = true } -# required? variable "ansible_vault_password" { description = "Vault password to encrypt ansible playbooks that contain sensitive information. 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, !#$%&()*+-.:;<=>?@[]_{|}~." type = string @@ -75,9 +74,9 @@ variable "cluster_network_config" { cluster_machine_network_cidr = string }) default = { - cluster_network_cidr = "10.128.0.0/14" - cluster_service_network_cidr = "10.67.0.0/16" - cluster_machine_network_cidr = "10.72.0.0/24" + "cluster_network_cidr" : "10.128.0.0/14", + "cluster_service_network_cidr" : "10.67.0.0/16", + "cluster_machine_network_cidr" : "10.72.0.0/24" } validation { condition = can(regex("/([0-9]{1,2})$", var.cluster_network_config.cluster_network_cidr)) && tonumber(regex("/([0-9]{1,2})$", var.cluster_network_config.cluster_network_cidr)[0]) <= 14 @@ -103,11 +102,11 @@ variable "cluster_master_node_config" { replicas = number }) default = { - processors = 4 - memory = 32 - system_type = null - proc_type = "Shared" - replicas = 3 + "processors" : "4", + "memory" : "32", + "system_type" : null, + "proc_type" : "Shared", + "replicas" : "3" } validation { condition = var.cluster_master_node_config.system_type != null ? contains(["s1122", "s1022", "s922", "e980", "e1080", "e1050"], var.cluster_master_node_config.system_type) : true @@ -137,11 +136,11 @@ variable "cluster_worker_node_config" { replicas = number }) default = { - processors = 4 - memory = 32 - system_type = null - proc_type = "Shared" - replicas = 3 + "processors" : "4", + "memory" : "32", + "system_type" : null, + "proc_type" : "Shared", + "replicas" : "3" } validation { condition = var.cluster_worker_node_config.system_type != null ? contains(["s1122", "s1022", "s922", "e980", "e1080", "e1050"], var.cluster_worker_node_config.system_type) : true @@ -182,7 +181,7 @@ variable "vpc_intel_images" { sles_image = string }) default = { - "rhel_image" : "ibm-redhat-9-4-amd64-sap-applications-7" + "rhel_image" : "ibm-redhat-9-4-amd64-sap-applications-7", "sles_image" : "ibm-sles-15-7-amd64-sap-applications-1" } } diff --git a/solutions/standard-openshift/versions.tf b/solutions/standard-openshift/versions.tf index cb6a3e17..09623223 100644 --- a/solutions/standard-openshift/versions.tf +++ b/solutions/standard-openshift/versions.tf @@ -1,5 +1,5 @@ ##################################################### -# PowerVS Standard Openshift solution +# PowerVS Quickstart OpenShift solution ##################################################### terraform { diff --git a/solutions/standard-plus-vsi/README.md b/solutions/standard-plus-vsi/README.md index 2af7d079..2125f7f0 100644 --- a/solutions/standard-plus-vsi/README.md +++ b/solutions/standard-plus-vsi/README.md @@ -94,8 +94,8 @@ This example sets up the following infrastructure: | [powervs\_zone](#input\_powervs\_zone) | IBM Cloud data center location where IBM PowerVS infrastructure will be created. | `string` | n/a | yes | | [prefix](#input\_prefix) | A unique identifier for resources. Must begin with a lowercase letter and end with a lowercase letter or number. Must contain only lowercase letters, numbers, and - characters. This prefix will be prepended to any resources provisioned by this template. Prefixes must be 16 or fewer characters. | `string` | n/a | yes | | [sm\_service\_plan](#input\_sm\_service\_plan) | The service/pricing plan to use when provisioning a new Secrets Manager instance. Allowed values: `standard` and `trial`. Only used if `existing_sm_instance_guid` is set to null. | `string` | `"standard"` | no | -| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys). | `string` | n/a | yes | -| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. | `string` | n/a | yes | +| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | +| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | | [tags](#input\_tags) | List of tag names for the IBM Cloud PowerVS workspace | `list(string)` | `[]` | no | | [tshirt\_size](#input\_tshirt\_size) | PowerVS instance profiles. These profiles can be overridden by specifying 'custom\_profile\_instance\_boot\_image' and 'custom\_profile' values in optional parameters. |
object({
tshirt_size = string
image = string
})
| n/a | yes | | [vpc\_intel\_images](#input\_vpc\_intel\_images) | Stock OS image names for creating VPC landing zone VSI instances: RHEL (management and network services) and SLES (monitoring). |
object({
rhel_image = string
sles_image = string
})
|
{
"rhel_image": "ibm-redhat-9-6-amd64-sap-applications-1",
"sles_image": "ibm-sles-15-7-amd64-sap-applications-1"
}
| no | diff --git a/solutions/standard-plus-vsi/variables.tf b/solutions/standard-plus-vsi/variables.tf index 7f049320..be7222a3 100644 --- a/solutions/standard-plus-vsi/variables.tf +++ b/solutions/standard-plus-vsi/variables.tf @@ -22,12 +22,12 @@ variable "tshirt_size" { } variable "ssh_public_key" { - description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region." + description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string } variable "ssh_private_key" { - description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys)." + description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string sensitive = true } diff --git a/solutions/standard/README.md b/solutions/standard/README.md index b407cea6..b4f672e5 100644 --- a/solutions/standard/README.md +++ b/solutions/standard/README.md @@ -91,8 +91,8 @@ This example sets up the following infrastructure: | [powervs\_zone](#input\_powervs\_zone) | IBM Cloud data center location where IBM PowerVS infrastructure will be created. | `string` | n/a | yes | | [prefix](#input\_prefix) | A unique identifier for resources. Must begin with a lowercase letter and end with a lowercase letter or number. Must contain only lowercase letters, numbers, and - characters. This prefix will be prepended to any resources provisioned by this template. Prefixes must be 16 or fewer characters. | `string` | n/a | yes | | [sm\_service\_plan](#input\_sm\_service\_plan) | The service/pricing plan to use when provisioning a new Secrets Manager instance. Allowed values: `standard` and `trial`. Only used if `existing_sm_instance_guid` is set to null. | `string` | `"standard"` | no | -| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, NFS, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys). | `string` | n/a | yes | -| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. | `string` | n/a | yes | +| [ssh\_private\_key](#input\_ssh\_private\_key) | Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh\_public\_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | +| [ssh\_public\_key](#input\_ssh\_public\_key) | Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs. | `string` | n/a | yes | | [tags](#input\_tags) | List of tag names for the IBM Cloud PowerVS workspace. | `list(string)` | `[]` | no | | [transit\_gateway\_global](#input\_transit\_gateway\_global) | Connect to the networks outside the associated region. | `bool` | `false` | no | | [vpc\_intel\_images](#input\_vpc\_intel\_images) | Stock OS image names for creating VPC landing zone VSI instances: RHEL (management and network services) and SLES (monitoring). |
object({
rhel_image = string
sles_image = string
})
|
{
"rhel_image": "ibm-redhat-9-6-amd64-sap-applications-1",
"sles_image": "ibm-sles-15-7-amd64-sap-applications-1"
}
| no | diff --git a/solutions/standard/variables.tf b/solutions/standard/variables.tf index 3b8cdbaf..0941810b 100644 --- a/solutions/standard/variables.tf +++ b/solutions/standard/variables.tf @@ -19,12 +19,12 @@ variable "external_access_ip" { } variable "ssh_public_key" { - description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region." + description = "Public SSH Key for VSI creation. Must be an RSA key with a key size of either 2048 bits or 4096 bits (recommended). Must be a valid SSH key that does not already exist in the deployment region. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string } variable "ssh_private_key" { - description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, NFS, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys)." + description = "Private SSH key (RSA format) to login to Intel VSIs to configure network management services (SQUID, NTP, DNS and ansible). Should match to public SSH key referenced by 'ssh_public_key'. The key is not uploaded or stored. If you're unsure how to create one, check [Generate a SSH Key Pair](https://cloud.ibm.com/docs/powervs-vpc?topic=powervs-vpc-powervs-automation-prereqs#powervs-automation-ssh-key) in our docs. For more information about SSH keys, see [SSH keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys) in the VPC docs." type = string sensitive = true }