vania-janet/multiturn-rag-retrieval-data huggingface dataset:
* Navigate to the [Virtual private clouds](https://cloud.ibm.com/vpc-ext/network/vpcs).
* Click the previously created VPC used for the cluster.
* Scroll down to subnets section and click a subnet.
* In the Public Gateway section, click Detached to change the state to Attached.
* Click the browser back button to return to the VPC details page.
* Repeat the previous three steps to attach a public gateway to each subnet.





* For Kubernetes on Classic infrastructure see reference documentation [Creating classic cluster](https://cloud.ibm.com/docs/containers?topic=containers-cluster-create-classic&interface=ui).
* Choose a resource group.
* Uncheck all zones except one.
* Scale down to 1 Worker nodes per zone.
* Choose the smallest Worker Pool flavor.
* Enter a Cluster name.
* Click Create.



While the cluster is getting ready, you are going to prepare the application.





 Deploy the application to the Kubernetes cluster 

The cluster should be ready. You can check its status in the [Kubernetes Service](https://cloud.ibm.com/kubernetes/clusters) console.



1. Gain access to your cluster as described on the Access tab of your cluster. Something like:

MYCLUSTER=my-us-cluster
ibmcloud ks cluster config --cluster $MYCLUSTER
2. Create the deployment using a pre-built image of the application. The application source code can be found in this [GitHub repository](https://github.com/IBM-Cloud/kubernetes-node-app/).

kubectl create deploy hello-world-deployment --image=icr.io/solution-tutorials/tutorial-scalable-webapp-kubernetes

Example output: deployment "hello-world-deployment" created.
3. Make the application accessible within the cluster by creating a service:
ibmcloud ks cluster create vpc-gen2 --name my_cluster --zone us-east-1 --vpc-id <VPC_ID> --subnet-id <VPC_SUBNET_ID> --flavor bx2.4x16 --workers 3

For a VPC multizone cluster, after you created the cluster in a [multizone metro](https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zoneszones-vpc), [add zones](https://cloud.ibm.com/docs/containers?topic=containers-add_workersvpc_add_zone).

ibmcloud ks zone add vpc-gen2 --zone <zone> --cluster <cluster_name_or_ID> --worker-pool <pool_name> --subnet-id <VPC_SUBNET_ID>





 Creating a VPC cluster with Terraform 

Terraform on IBM Cloud enables predictable and consistent provisioning of IBM Cloud platform infrastructure and resources, including VPC clusters. To create a VPC cluster with Terraform, you first create a Terraform configuration file that declares the type of cluster resource you want to create. Then, you apply the Terraform configuration file. For more information on Terraform, see [About Terraform on IBM Cloud](https://cloud.ibm.com/docs/ibm-cloud-provider-for-terraform?topic=ibm-cloud-provider-for-terraform-about).

Before you begin:



* [Install the Terraform CLI and the IBM Cloud Provider plug-in](https://cloud.ibm.com/docs/ibm-cloud-provider-for-terraform?topic=ibm-cloud-provider-for-terraform-setup_clitf_installation).
* Make sure you have an IBM Cloud [API key](https://cloud.ibm.com/docs/account?topic=account-userapikey&interface=uicreate_user_key).





1. Create a Terraform provider file. Save the file in your Terraform directory.
Use the subnet to [create a cluster](https://cloud.ibm.com/docs/containers?topic=containers-cluster-create-vpc-gen2), [create a new worker pool](https://cloud.ibm.com/docs/containers?topic=containers-add_workersvpc_add_pool), or [add the subnet to an existing worker pool](https://cloud.ibm.com/docs/containers?topic=containers-add_workersvpc_add_zone).> Do not delete the subnets that you attach to your cluster during cluster creation or when you add worker nodes in a zone. If you delete a VPC subnet that your cluster used, any load balancers that use IP addresses from the subnet might experience issues, and you might be unable to create new load balancers.







 Creating a VPC subnet in the CLI 

Use the IBM Cloud CLI to create a VPC subnet for your cluster and optionally attach a public gateway to the subnet.

Before you begin



1. In your command line, log in to your IBM Cloud account and target the IBM Cloud region and resource group where you want to create your VPC cluster. For supported regions, see [Creating a VPC in a different region](https://cloud.ibm.com/docs/vpc?topic=vpc-creating-a-vpc-in-a-different-region). The cluster's resource group can differ from the VPC resource group. Enter your IBM Cloud credentials when prompted. If you have a federated ID, use the --sso option to log in.

ibmcloud login -r <region> [-g <resource_group>] [--sso]
2. [Create a VPC](https://cloud.ibm.com/docs/vpc?topic=vpc-creating-vpc-resources-with-cli-and-api&interface=clicreate-a-vpc-cli) in the same region where you want to create the cluster.



To create a VPC subnet, follow these steps.



1.
* Click Create.



* Attach a Public Gateway to each of the subnets that you create:



* Navigate to the [Virtual private clouds](https://cloud.ibm.com/vpc-ext/network/vpcs).
* Click the previously created VPC used for the cluster.
* Scroll down to subnets section and click a subnet.
* In the Public Gateway section, click Detached to change the state to Attached.
* Click the browser back button to return to the VPC details page.
* Repeat the previous three steps to attach a public gateway to each subnet.





* For Kubernetes on Classic infrastructure see reference documentation [Creating classic cluster](https://cloud.ibm.com/docs/containers?topic=containers-cluster-create-classic&interface=ui).
* Choose a resource group.
* Uncheck all zones except one.
* Scale down to 1 Worker nodes per zone.
* Choose the smallest Worker Pool flavor.
* Enter a Cluster namesecure-file-storage-cluster.
* Click Create.



While the cluster is being provisioned, you will create the other services required by the tutorial.





 Use your own encryption keys 

Key Protect helps you provision encrypted keys for apps across IBM Cloud services. Key Protect and IBM Cloud Object Storage [work together to protect your data at rest](https://cloud.ibm.com/docs/key-protect/integrations?topic=key-protect-integrate-cosintegrate-cos). In this section, you will create one root key for the storage bucket.



1. Create an instance of [Key Protect](https://cloud.ibm.com/catalog/services/kms).



1. Select a location.
2. Set the name to secure-file-storage-kp.
3. Select the resource group where to create the service instance and click Create.



2. Under Keys, click the Add button to create a new root key. It will be used to encrypt the storage bucket and App ID data.



1. Set the key type to Root key.
2.
If you [create a cluster](https://cloud.ibm.com/docs/containers?topic=containers-clusters&interface=cli) in the CLI with the [ibmcloud oc cluster create classic](https://cloud.ibm.com/docs/containers?topic=containers-kubernetes-service-cli&interface=clics_cluster_create) or [ibmcloud oc cluster create vpc-gen2](https://cloud.ibm.com/docs/containers?topic=containers-kubernetes-service-cli&interface=clicli_cluster-create-vpc-gen2), you can specify a Secrets Manager instance or secret group with the following command options:



* --sm-instance: Use this option to register a Secrets Manager instance to the cluster by specifying the instance CRN. To find the CRN of a Secrets Manager instance, run ibmcloud resource service-instance <name_of_instance> or navigate to your resource list in the UI and click on the instance.
* --sm-group: Use this option to specify the ID of the secret group. To find the secret group ID, run ibmcloud secrets-manager secret-groups.



If you create a cluster in the UI, follow these steps to specify a Secrets Manager instance or secret group:



1. In the Integrations section of the cluster create page, select the option to enable Secrets Manager.
2. From the Secrets Manager instance drop down menu, select the instance you want to register to the cluster. If no instances are available, [create one](https://cloud.ibm.com/docs/openshift?topic=openshift-secrets-mgrsecrets-mgr_setup_create).
3. From the Secrets Manager group drop down menu, select the secret group you want to apply.
4. Create the cluster.
5. Check that the Secrets Manager instance is registered to the cluster.



1. When your cluster is fully provisioned, click on the cluster to view the cluster details. Under Integrations, find the Secrets Manager heading and click Manage.
2.
* Navigate to the [Virtual private clouds](https://cloud.ibm.com/vpc-ext/network/vpcs).
* Click the previously created VPC used for the cluster.
* Scroll down to subnets section and click a subnet.
* In the Public Gateway section, click Detached to change the state to Attached.
* Click the browser back button to return to the VPC details page.
* Repeat the previous three steps to attach a public gateway to each subnet.





* For Kubernetes on Classic infrastructure see reference documentation [Creating classic cluster](https://cloud.ibm.com/docs/containers?topic=containers-cluster-create-classic&interface=ui).
* Choose a resource group.
* Uncheck all zones except one.
* Scale down to 1 Worker nodes per zone.
* Choose the smallest Worker Pool flavor.
* Enter a Cluster name.
* Click Create.



Note: Do not proceed until your workers are ready.





 Step 2: Create a sample application 



1. From the [IBM Cloud console](https://cloud.ibm.com/), use the left side menu option and select [DevOps](https://cloud.ibm.com/devops).
2. Click Create toolchain.
3. In the search box type kubernetes as a filter.
4. Click on the Develop a Kubernetes app with Helm tile.
5. Enter a unique Toolchain Name for the toolchain such as <your-initials>-mynodestarter-toolchain and select a resource group.
6. Enter a unique Repository Name for the repository such as <your-initials>-mynodestarter-repository.
7. Click on the Delivery Pipeline tab.
8. Provide an IBM Cloud API Key. If you don't have one, create by clicking on New.
9. Select a region and your cluster from the list.
10. Make sure to set the cluster namespace to default and click Create.
Before you begin 

Before you begin set up SMC, you must:

Deploy 3 lone (symphony) clusters in different regions or zones. For more information about creating symphony clusters, see the [readme file](https://github.com/IBM-Cloud/hpc-cluster-symphonyreadme).

When you provision lone symphony clusters, the cidr blocks and cluster_id must be unique for each Lone symphony cluster.

SMC supports combination of single smc_zone as ["us-east-1"] or double smc_zone within the same or across regions as ["au-syd-3","eu-de-1"] or triple smc_zone within the same or across region as ["us-east-1","ca-tor-3","jp-tok-3"]





 Step 1: Creating a workspace for SMC manually 



1. Go to Schematics, the IBM Cloud [deployment manager](https://cloud.ibm.com/schematics), select Workspaces, and then select Create workspace.
2. In the Specify template section:



* Provide the GitHub repository URL where your Terraform files are located. The SMC repository is provided in this public [GitHub repository](https://github.com/IBM-Cloud/hpc-cluster-symphony-smc).
* Select a version of the Terraform engine that is greater than 1 to use in the Schematics workspace.
* Click Next.



3. In the Workspace details section:



* Specify the name for your Schematics workspace.
* Define any tags that you want to associate with the resources provisioned through the offering. The tags can later be used to query the resources in the IBM Cloud console.
* Select a resource group.
* Select a location. The location determines where the workspace actions are run.
* Provide a description (optional) of the Schematics workspace.
* Click Next and then click Create. The Schematics workspace is created with the name that you specified.









 Step 2: Updating SMC parameters 



1.
[Create a Kubernetes Service](https://cloud.ibm.com/docs/containers?topic=containers-getting-startedgetting-started). Choose the location and resource group in which you'd like to set up your cluster. Select the cluster type that you want to use. This example requires only the lite plan, which comes with one worker node. After a cluster is provisioned, you are given a list of steps to access your cluster and set the environment variables under the Access tab. You are also able to verify that your deployment is provisioned and running normally.
2. Make sure that you are targeting the correct IBM Cloud resource group of your Kubernetes Service.

If your resource group is named anything other than default, use the following command to target your cluster resource group:

ibmcloud target -g <resource_group_name>

This example uses the default resource group.
3. Create your own private image repository in [Container Registry](https://cloud.ibm.com/docs/Registry?topic=Registry-getting-started) to store your application's Docker image. Since we want the images to be private, we need to create a namespace, which creates a unique URL to your image repository.

ibmcloud cr namespace-add <your_namespace>
4. Add the Cloud Databases deployment to your cluster.

ibmcloud ks cluster service bind --cluster <your_cluster_name> --namespace default --service <your_database_deployment>

The "default" namespace refers to the Kubernetes instance and not the user-created image store namespace. Likewise, if your database uses both [public and private endpoints](https://cloud.ibm.com/docs/cloud-databases?topic=cloud-databases-service-endpoints), your public endpoint is used by default. Therefore, if you want to select the private endpoint, first you need to create a service key for your database so Kubernetes can use it when binding to the database. You set up a service key by using the command:
If no instances are available, [create one](https://cloud.ibm.com/docs/containers?topic=containers-secrets-mgrsecrets-mgr_setup_create).
3. From the Secrets Manager group drop down menu, select the secret group you want to apply.
4. Create the cluster.
5. Check that the Secrets Manager instance is registered to the cluster.



1. When your cluster is fully provisioned, click on the cluster to view the cluster details. Under Integrations, find the Secrets Manager heading and click Manage.
2. In the side panel, check that correct instance is listed under Registered Secrets Manager instances.
3. To register additional instances to the cluster, click Register instances.
* In the Public Gateway section, click Detached to change the state to Attached.
* Click the browser back button to return to the VPC details page.
* Repeat the previous three steps to attach a public gateway to each subnet.





* For Kubernetes on Classic infrastructure see reference documentation [Creating classic cluster](https://cloud.ibm.com/docs/containers?topic=containers-cluster-create-classic&interface=ui).
* Choose a resource group.
* Uncheck all zones except one.
* Scale down to 1 Worker nodes per zone.
* Choose the smallest Worker Pool flavor.
* Enter a Cluster name.
* Click Create.



While the cluster is getting ready, you are going to prepare the application.





 Deploy the application to the Kubernetes cluster 

The cluster should be ready. You can check its status in the [Kubernetes Service](https://cloud.ibm.com/kubernetes/clusters) console.



1. Gain access to your cluster as described on the Access tab of your cluster. Something like:

MYCLUSTER=my-us-cluster
ibmcloud ks cluster config --cluster $MYCLUSTER
2. Create the deployment using a pre-built image of the application. The application source code can be found in this [GitHub repository](https://github.com/IBM-Cloud/kubernetes-node-app/).

kubectl create deploy hello-world-deployment --image=icr.io/solution-tutorials/tutorial-scalable-webapp-kubernetes

Example output: deployment "hello-world-deployment" created.
3. Make the application accessible within the cluster by creating a service:

kubectl expose deployment/hello-world-deployment --type=ClusterIP --port=80 --name=hello-world-service --target-port=3000

It returns message like service "hello-world-service" exposed. To see the services:

kubectl get services
4. Run the application in the cluster with two replicas:
Creating Satellite clusters 

Satellite

You can create Red Hat® OpenShift® on IBM Cloud® clusters in an IBM Cloud Satellite® location, and use the hosts of your own infrastructure that you added to your location as the worker nodes for the cluster.



 Prerequisites 

Before you can create clusters in IBM Cloud Satellite, you must first set up a location.



1. [Review the IBM Cloud Satellite components](https://cloud.ibm.com/docs/satellite?topic=satellite-faqs) and the [location planning guide](https://cloud.ibm.com/docs/satellite?topic=satellite-infrastructure-plan).
2. Prepare to create your IBM Cloud Satellite location. Choose from one of the following options. Note that support for automatically creating a Red Hat CoreOS enabled location with Schematics is currently not available. If you want to create a Red Hat CoreOS enabled location, see [Manually creating a location](https://cloud.ibm.com/docs/satellite?topic=satellite-locationslocation-create-console). Red Hat CoreOS is available in all supported Satellite locations and for Red Hat OpenShift version 4.9 and later.



* You can automatically provision the hosts for your location. With this option, you create a custom role, or service ID, with your cloud provider credentials. This service ID is used to automatically provision virtual machines in your cloud provider. Once the VMs are provisioned and attached to your location, you can assign them to IBM Cloud Satellite control plane or to the cloud services you want to use. To get started, see the [Automating your location set up with a Schematics template](https://cloud.ibm.com/docs/satellite?topic=satellite-locationssatloc-template).
* You can manually provision hosts either in your on-premises data center or in a public cloud.
* UI
* CLI
* Terraform







 Creating classic clusters 

Classic infrastructure

Use the IBM Cloud CLI or the IBM Cloud console to create a fully customizable standard cluster with your choice of hardware isolation and access to features like multiple worker nodes for a highly available environment.

Red Hat OpenShift on IBM Cloud clusters are created with a public only or both a public and private service endpoint. Public service endpoints can't be disabled, and therefore, you can't convert a public Red Hat OpenShift cluster to a private one. If you want your cluster to remain private, see [Planning your cluster network setup](https://cloud.ibm.com/docs/containers?topic=containers-plan_vpc_basicsvpc-pgw).



 Creating a classic cluster in the console 

Create your single zone or multizone classic Kubernetes cluster by using the IBM Cloud console. Follow the console instructions to make the following cluster configurations. To begin creating your cluster, navigate to the [Kubernetes clusters console](https://cloud.ibm.com/kubernetes/clusters) and click Create cluster.

Location details
: When you create a cluster, its resources remain in the location that you deploy the cluster to.
: 

* Resource group: A cluster can be created in only one resource group, and after the cluster is created, you can't change its resource group. To create clusters in a resource group other than the default, you must have at least the [Viewer role](https://cloud.ibm.com/docs/containers?topic=containers-userschecking-perms) for the resource group.



: 

* Geography: Select an area to create the cluster in, such as North America. The geography helps filter the Availability and Metro values that you can select in the console.



: 

* Availability: A cluster can be created with a Single zone or Multizone configuration. A multizone cluster provides high availability, with the Kubernetes master deployed in a multizone-capable zone and three replicas of the master spread across different zones.



* For multizone clusters, choose a Metro location. For the best performance, select the metro location that is physically closest to you.
For more detailed steps and information about creating clusters, see [Creating classic clusters](https://cloud.ibm.com/docs/openshift?topic=openshift-cluster-create-classic&interface=cli). For information about planning your cluster set up, see [Preparing to create clusters](https://cloud.ibm.com/docs/openshift?topic=openshift-clusters&interface=cli).

Create a classic cluster on a shared virtual machine.

ibmcloud oc cluster create classic --name my_cluster --version 4.11_openshift --zone dal10 --flavor b3c.4x16 --hardware shared --workers 3 --public-vlan <public_VLAN_ID> --private-vlan <private_VLAN_ID>

Create a classic cluster on bare metal architecture.

ibmcloud oc cluster create classic --name my_cluster --version 4.11_openshift --zone dal10 --flavor mb2c.4x32 --hardware dedicated --workers 3 --public-vlan <public_VLAN_ID> --private-vlan <private_VLAN_ID>

Create a classic cluster with an IBM Cloud Pak entitlement for a default worker pool of 3 worker nodes with 4 cores and 16 GB memory each.

ibmcloud oc cluster create classic --name cloud_pak_cluster --version 4.11_openshift --zone dal10 --flavor b3c.4x16 --hardware dedicated --workers 3 --entitlement cloud_pak --public-vlan <public_VLAN_ID> --private-vlan <private_VLAN_ID> [--operating-system (REDHAT_7_64|REDHAT_8_64)]

For a complete list of available RHEL versions and which cluster versions they are compatible with, see [Available Red Hat OpenShift versions](https://cloud.ibm.com/docs/openshift?topic=openshift-openshift_versionsopenshift_versions_available).
Review the estimated price of the cluster. Click Pricing details to generate a PDF summary. To save or print your order summary, click Print or Download on the upper right of the PDF window.
3. Click the link or links of the terms that apply to your order, and confirm that you agree with these terms before you add the cluster.
4. Click Create.









 Results after you add clusters to Cyber Recovery instances 



1. The deployment of the cluster starts automatically and the status of the cluster is changed to Initializing. You can check the status of the deployment by viewing the deployment history from the instance details page.
2. When the cluster is ready to use, its status changes to Available. The newly added cluster is enabled with vSphere High Availability (HA) and vSphere Distributed Resource Scheduler (DRS).



You cannot change the cluster name. Changing the cluster name might cause the add or remove ESXi servers operations in the cluster to fail.





 Related links 



* [Expanding and contracting capacity for Cyber Recovery instances](https://cloud.ibm.com/docs/vmwaresolutions?topic=vmwaresolutions-cr_addingservers)
In the vSphere Client Host and Clusters view, right-click and select New data center.
3. Enter a name, e.g. VMware-On-IBM-Cloud-VPC.
4. Finish the configuration.







 Create a Cluster 

In this step, you will create a new Cluster.



1. Log into the vCenter Server using vSphere Client via Web Browser on the Jump machine.
2. In the vSphere Client Host and Clusters view, right-click and select New cluster.
3. Enter a name, e.g. Cluster-eu-de-1.
4. Do not enable DRS or vSphere HA at this point.
5. Review the details.
6. Finish the configuration.







 Add hosts to vCenter 

Next, you need to add the deployed Bare Metal Servers for VPC as hosts to the Cluster.



1. Log into the vCenter Server using vSphere Client via Web Browser on the Jump machine.
2. In the vSphere Client Host and Clusters view, right-click the created Cluster and select Add hosts.
3. Enter the hostnames and credentials for each host, and Click Next.
4. On Security Alert, manually verify these certificates and accept the thumbprints.
5. On Host summary, validate configurations and Click Next.
6. Review and finish the configuration.



Disable Maintenance mode, if needed.







 Step 5: Create new Distributed Switch (vDS) 

Next, create a new distributed vSwitch.



1. Log into the vCenter Server using vSphere Client via Web Browser on the Jump machine.
2. In the vSphere Client Host and Clusters view, right-click a data center and select menu New Distributed Switch.
3. Enter a name, e.g. vds-vpc.
4. Select the version of the vSphere Distributed Switch. In this example, version 7.0.0 is used.
5. Add the settings. Set the number of uplinks to 1.
6.