Skip to content
Merged
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
112 changes: 78 additions & 34 deletions ibm_catalog.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@
"terraform",
"ocp",
"cluster",
"red_hat_openshift"
"red_hat_openshift",
"ROKS"
],
"short_description": "Automates the deployment of Red Hat OpenShift container platform on IBM Cloud with optional integration of security and logging services.",
"long_description": "The Cloud automation for Red Hat OpenShift Container Platform on VPC enables a scalable and flexible cloud environment for containerized applications with seamless integration to other security and observability services. This architecture can be deployed independently while also serving as a foundational deployable architecture for other architectures like [Cloud automation for Red Hat OpenShift AI](https://cloud.ibm.com/catalog/7a4d68b4-cf8b-40cd-a3d1-f49aff526eb3/architecture/deploy-arch-ibm-ocp-ai-ba708aed-bb8a-4ac0-83a7-53a066701db5-global) to deploy mission critical applications and AI-driven initiatives to market quickly and securely with a managed OpenShift service.\n\nℹ️ This Terraform-based automation is part of a broader suite of IBM-maintained Infrastructure as Code (IaC) assets, each following the naming pattern \"Cloud automation for *servicename*\" and focusing on single IBM Cloud service. These single-service deployable architectures can be used on their own to streamline and automate service deployments through an [IaC approach](https://cloud.ibm.com/docs/secure-enterprise?topic=secure-enterprise-understanding-projects), or assembled together into a broader [automated IaC stack](https://cloud.ibm.com/docs/secure-enterprise?topic=secure-enterprise-config-stack) to automate the deployment of an end-to-end solution architecture.",
Expand Down Expand Up @@ -80,90 +81,133 @@
},
"iam_permissions": [
{
"service_name": "containers-kubernetes",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Viewer"
],
"service_name": "Resource group only",
"notes":"Viewer access is required in the resource group you want to provision in."
},
{
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Administrator"
],
"service_name": "All Account Management services",
"notes": "[Optional] Required for consuming Account Configuration deployable architecture which creates resource group."
},
{
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Administrator"
],
"service_name": "All Identity and Access enabled services",
"notes": "[Optional] Required for consuming Account Configuration deployable architecture which creates resource group with account settings."
},
{
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "Required to create and edit OpenShift cluster and the related resources."
"service_name": "iam-access-groups",
"notes": "[optional] Required for managing IAM access groups."
},
{
"service_name": "iam-identity",
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Administrator",
"crn:v1:bluemix:public:iam::::role:Operator",
"crn:v1:bluemix:public:iam-identity::::serviceRole:UserApiKeyCreator"
],
"notes": "Required to create the containers-kubernetes-key needed by the OpenShift cluster on IBM Cloud."
"notes": "Required to create the containers-kubernetes-key needed by the OpenShift cluster on IBM Cloud and for managing and operating resources within the IBM Cloud environment."
},
{
"service_name": "is.vpc",
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Administrator"
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "Required for creating Virtual Private Cloud(VPC)."
"service_name": "hs-crypto",
"notes": "[Optional] Required if KMS encryption is enabled and Hyper Protect Crypto Service is used for encryption."
},
{
"service_name": "cloud-object-storage",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "Required to create Cloud Object Storage (COS) Instance."
"service_name": "kms",
"notes": "[Optional] Required if KMS encryption is enabled and Key Protect Service is used for encryption."
},
{
"service_name": "hs-crypto",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "[Optional] Required if KMS encryption is enabled and IBM Hyper Protect Crypto Services is used to encrypt the Kubernetes Secrets and Object Storage bucket."
"service_name": "cloud-object-storage",
"notes": "[Optional] Required to edit data and manage the OpenShift cluster's internal registry storage bucket."
},
{
"service_name": "kms",
"service_name": "containers-kubernetes",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Administrator"
],
"notes": "Required to reset API keys, create and edit the OpenShift cluster, and manage all related resources."
},
{
"service_name": "is.vpc",
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "[Optional] Required if KMS encryption is enabled and Key protect is used for encryption of Kubernetes Secrets and Object Storage bucket."
"notes": "[Optional] Required for creating Virtual Private Cloud(VPC)."
},
{
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Administrator",
"crn:v1:bluemix:public:iam::::serviceRole:Manager"
],
"service_name": "secrets-manager",
"notes": "[Optional] Required for creating a Secrets Manager instance. 'Manager' access is required to create new secret groups."
},
{
"service_name": "sysdig-monitor",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Editor"
"crn:v1:bluemix:public:iam::::role:Administrator"
],
"notes": "[Optional] Required if you are consuming Observability deployable architecture which sets up Cloud monitoring."
"service_name": "sysdig-monitor",
"notes": "[Optional] Required for consuming Observability deployable architecture, which sets up Cloud Monitoring."
},
{
"service_name": "logs",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "[Optional] Required if you are consuming Observability deployable architecture which sets up Cloud logs."
"service_name": "logs",
"notes": "[Optional] Required for consuming Observability DA, which sets up Cloud logs."
},
{
"service_name": "logs-router",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager"
],
"notes": "[Optional] Required if you are consuming Observability deployable architecture which sets up Logs Routing."
"notes": "[Optional] Required for consuming Observability deployable architecture, which sets up Logs Routing."
},
{
"service_name": "atracker",
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Writer",
"crn:v1:bluemix:public:iam::::role:Editor"
],
"notes": "[Optional] Required if you are consuming Observability deployable architecture which sets up Activity Tracker Event Routing."
"notes": "[Optional] Required for consuming Observability deployable architecture, which sets up Activity Tracker Event Routing."
},
{
"service_name": "secrets-manager",
"service_name": "metrics-router",
"role_crns": [
"crn:v1:bluemix:public:iam::::role:Administrator",
"crn:v1:bluemix:public:iam::::serviceRole:Manager"
"crn:v1:bluemix:public:iam::::role:Administrator"
],
"notes": "[Optional] Required for creating an Secrets Manager instance. 'Manager' access required to create new secret groups."
"notes": "[Optional] Required if metrics routing to cloud monitoring instance is enabled."
},
{
"role_crns": [
"crn:v1:bluemix:public:iam::::serviceRole:Manager",
"crn:v1:bluemix:public:iam::::role:Administrator"
],
"service_name": "event-notifications",
"notes": "[Optional] Required if you are creating an Event Notifications Instance"
}
],
"architecture": {
Expand Down Expand Up @@ -807,14 +851,14 @@
"dependencies": [
{
"name": "deploy-arch-ibm-vpc",
"description": "Configure the VPC instance and subnets where the OpenShift cluster will be deployed. ",
"description": "Configure the VPC and subnets to deploy the OpenShift cluster.",
"id": "2af61763-f8ef-4527-a815-b92166f29bc8-global",
"version": "v7.24.0",
"flavors": [
"fully-configurable"
],
"catalog_id": "7a4d68b4-cf8b-40cd-a3d1-f49aff526eb3",
"optional": true,
"optional": false,
"on_by_default": true,
"input_mapping": [
{
Expand Down Expand Up @@ -850,7 +894,7 @@
},
{
"name": "deploy-arch-ibm-account-infra-base",
"description": "Cloud automation for Account Configuration organizes your IBM Cloud account with a ready-made set of resource groups by default and, when you enable the \"with Account Settings\" option, it also applies baseline security and governance settings. ",
"description": "Creates a set of resource groups and when \"with Account Settings\" variation is selected, it also applies baseline security and governance settings.",
"catalog_id": "7a4d68b4-cf8b-40cd-a3d1-f49aff526eb3",
"flavors": [
"resource-group-only",
Expand All @@ -875,7 +919,7 @@
},
{
"name": "deploy-arch-ibm-kms",
"description": "Enable Cloud Automation for Key Protect when you want services to use your own managed encryption keys. If disabled, it will fall back on IBM Cloud's default service-managed encryption. ",
"description": "Configure Key Protect to use your own managed encryption keys for Object Storage bucket.",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Configures Key Protect to manage and use encryption keys for COS bucket.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated architecture description for fully configurable DA as well.

"id": "2cad4789-fa90-4886-9c9e-857081c273ee-global",
"version": "v5.1.4",
"flavors": [
Expand Down Expand Up @@ -907,7 +951,7 @@
},
{
"name": "deploy-arch-ibm-cos",
"description": "Set up a Cloud Object Storage (COS) instance, where an object storage bucket will be created and used as the internal registry storage for OpenShift cluster. ",
"description": "Set up a Cloud Object Storage (COS) instance, where an object storage bucket will be created and used as the internal registry storage for OpenShift cluster.",
"id": "68921490-2778-4930-ac6d-bae7be6cd958-global",
"version": "v9.0.2",
"flavors": [
Expand Down Expand Up @@ -935,7 +979,7 @@
},
{
"name": "deploy-arch-ibm-observability",
"description": "Configure IBM Cloud Logs, Cloud Monitoring and Activity Tracker event routing for analysing logs and metrics generated by the OpenShift cluster. ",
"description": "Configure IBM Cloud Logs, Cloud Monitoring and Activity Tracker event routing for analysing logs and metrics generated by the OpenShift cluster.",
"id": "a3137d28-79e0-479d-8a24-758ebd5a0eab-global",
"version": "v3.0.3",
"flavors": [
Expand Down Expand Up @@ -964,7 +1008,7 @@
},
{
"name": "deploy-arch-ibm-secrets-manager",
"description": "Configure Secrets Manager instance for centrally managing Ingress subdomain certificates and other secrets. ",
"description": "Configure Secrets Manager instance for centrally managing Ingress subdomain certificates and other secrets for the cluster.",
"id": "6d6ebc76-7bbd-42f5-8bc7-78f4fabd5944-global",
"version": "v2.4.0",
"flavors": [
Expand Down Expand Up @@ -1068,7 +1112,7 @@
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-base-ocp-vpc/refs/heads/main/reference-architecture/deployable-architecture-ocp-cluster-qs.svg",
"type": "image/svg+xml"
},
"description": "This QuickStart variation of deployable architecture enables deployment of a <b>Red Hat OpenShift cluster</b> within an IBM Cloud Virtual Private Cloud (VPC). It provisions the OpenShift cluster and its foundational VPC infrastructure with a limited set of essential options for rapid and streamlined setup. Additionally, the deployment creates an <b>Object Storage bucket</b> that serves as the internal container image registry for the OpenShift cluster. Thus, it helps ensure seamless storage integration.<br><br>Users can select from predefined cluster sizes — <b>mini (default), small, medium, and large.</b> Each size determining the number of availability zones, worker nodes per zone, and the <b>machine type</b> (worker node flavor). [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-base-ocp-vpc/blob/main/solutions/quickstart/DA_docs.md).<br><br>By default, the architecture provisions a <b>two-zone VPC</b>, forming the foundation for the OpenShift cluster. The cluster comprises a single worker pool distributed across these zones, with <b>two worker nodes per zone</b> in the mini configuration.<br><br>This streamlined architecture balances ease of use with flexibility, enabling rapid OpenShift cluster deployments with the infrastructure, integrated storage services, and right-sized compute resources of IBM Cloud."
"description": "This QuickStart variation of deployable architecture enables deployment of a <b>Red Hat OpenShift cluster</b> within an IBM Cloud Virtual Private Cloud (VPC). It provisions the OpenShift cluster and its foundational VPC infrastructure with a limited set of essential options for rapid and streamlined setup. Additionally, the deployment creates an <b>Object Storage bucket</b> that serves as the internal container image registry for the OpenShift cluster. Thus, it helps ensure seamless storage integration.<br><br>Users can select from predefined cluster sizes — <b>mini (default), small, medium, and large.</b> Each size determines the number of availability zones, worker nodes per zone, and the <b>machine type</b> (worker node flavor). [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-base-ocp-vpc/blob/main/solutions/quickstart/DA_docs.md).<br><br>By default, the architecture provisions a <b>two-zone VPC</b>, forming the foundation for the OpenShift cluster. The cluster comprises a single worker pool distributed across these zones, with <b>two worker nodes per zone</b> in the mini configuration.<br><br>This streamlined architecture balances ease of use with flexibility, enabling rapid OpenShift cluster deployments with the infrastructure, integrated storage services, and right-sized compute resources of IBM Cloud."
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This QuickStart FSCloud variation of deployable architecture enables deployment of a Red Hat OpenShift cluster within an IBM Cloud Virtual Private Cloud (VPC). It provisions the OpenShift cluster and its foundational VPC infrastructure with a limited set of essential options for rapid and streamlined setup. Additionally, the deployment creates an Object Storage bucket that serves as the internal container image registry for the OpenShift cluster. Thus, it helps ensure seamless storage integration.

Users can select from predefined cluster sizes — mini (default), small, medium, and large. Each size determines the number of availability zones, worker nodes per zone, and the machine type (worker node flavor). Learn more.

By default, the architecture provisions a two-zone VPC, forming the foundation for the OpenShift cluster. The cluster comprises a single worker pool distributed across these zones, with two worker nodes per zone in the mini configuration.

This streamlined architecture balances ease of use with flexibility, enabling rapid OpenShift cluster deployments with the infrastructure, integrated storage services, and right-sized compute resources of IBM Cloud.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Quickstart is the variation name used in this module, so the description will remain unchanged.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

}
]
},
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.