vania-janet/multiturn-rag-retrieval-data huggingface dataset:
If you are performing a mirrored installation (for example, in an air-gapped environment), you need to perform an additional step before completing either of the following steps:



* Step 7 [Mirroring the images to the private container registry](https://www.ibm.com/docs/en/cloud-paks/cp-data/4.0?topic=registry-mirroring-images-bastion-nodereference_g4h_z1q_tpb__mirror-to-target) of Mirroring images with a bastion model
* Step 8 [Mirroring the images to the intermediary container registry](https://www.ibm.com/docs/en/cloud-paks/cp-data/4.0?topic=registry-mirroring-images-intermediary-containerpreinstall_container_registry_air_gapped__mirror-to-target) of Mirroring images with an intermediary container registry



This step is mandatory to copy the necessary images for the Minio datastore:

echo 'cp.icr.io,cp/opencontent-minio-client,1.1.4,sha256:7b4cf5e47a0455cfa7ca9ab246b80916e4dccbc1483b3e0f276fb7b0ab3e5c60,IMAGE,linux,x86_64,"",0,CASE,"",""' >> $CASE_PATH/ibm-watson-speech-4.0.5-images.csv

Failure to perform this step will cause installation errors for both Text to Speech and Speech to Text.

License Server is now automatically installed
: The Speech services operator now automatically installs the required License Server when it installs the Speech services. You no longer need to install the License Server from the IBM Cloud Pak for Data foundational services, and you no longer need to use additional YAML content to create an OperandRequest with the necessary bindings.

Removal of steps specific to PostgreSQL EnterpriseDB server
: The previous version of the documentation included steps for the PostgreSQL EnterpriseDB server that were specific to the Speech services.
hana_sid = "HDB"
hana_sysno = "00"
hana_system_usage = "custom"
hana_components = "server"

SAP HANA Installation kit path
kit_saphana_file = "/storage/HANADB/51054623.ZIP"
SAP system configuration
sap_sid = "S4A"
sap_ascs_instance_number = "01"
sap_ci_instance_number = "00"

 Number of concurrent jobs used to load and/or extract archives to SAP HANA Host
hdb_concurrent_jobs = "23"

SAP S4HANA APP Installation kit path
kit_sapcar_file = "/storage/S4HANA/SAPCAR_1010-70006178.EXE"
kit_swpm_file = "/storage/S4HANA/SWPM20SP09_4-80003424.SAR"
kit_sapexe_file = "/storage/S4HANA/SAPEXE_100-70005283.SAR"
kit_sapexedb_file = "/storage/S4HANA/SAPEXEDB_100-70005282.SAR"
kit_igsexe_file = "/storage/S4HANA/igsexe_1-70005417.sar"
kit_igshelper_file = "/storage/S4HANA/igshelper_17-10010245.sar"
kit_saphotagent_file = "/storage/S4HANA/SAPHOSTAGENT51_51-20009394.SAR"
kit_hdbclient_file = "/storage/S4HANA/IMDB_CLIENT20_009_28-80002082.SAR"
kit_s4hana_export = "/storage/S4HANA/export"
6. Initialize the Terraform CLI.

terraform init
7. Create a Terraform execution plan. The Terraform execution plan summarizes all the actions that are done to create the virtual private cloud instance in your account.

terraform plan
Distributed installation](https://cloud.ibm.com/docs-content/v1/content/f89cc64b006ca59b35404693959c83d5747fee3e/sap/images/refarch-sap-hana-multiple-host-only.svg)

Figure 3. SAP NetWeaver 7.x SAP HANA multiple-host installation with AAS

The SAP components in a multi-host SAP HANA system are the same as the components in a single-host SAP HANA system, the difference consists of multiple connected hosts for the SAP HANA database.

A multi-host SAP HANA system might be necessary to scale SAP HANA either by increasing RAM for a single server, or by adding hosts to the system to deal with larger workloads. This allows you to go beyond the limits of a single physical server.

When configuring a multiple-host system, the individual hosts must be defined as master, worker, slave, and standby depending on the task. Worker machines process data; standby machines do not handle any processing and instead just wait to take over processes in the case of worker machine failure.





 Related information 

SAP One Support Notes that apply to this document:



* [SAP Note 84555 - Windows Server, Linux, and UNIX: Certified hardware](https://launchpad.support.sap.com//notes/84855)
* [SAP Note 2927211 - SAP Applications on IBM Cloud Virtual Private Cloud (VPC) Infrastructure environment](https://launchpad.support.sap.com//notes/2927211)
* [SAP Note 2923773 - Linux on IBM Cloud (IaaS): Adaption of your SAP License](https://launchpad.support.sap.com//notes/2923773)
* [SAP Note 2414097 - SAP Applications on IBM Cloud Classic Infrastructure environment](https://launchpad.support.sap.com//notes/2414097)
* [SAP Note 2369910 - SAP Software on Linux: General information](https://launchpad.support.sap.com//notes/2369910)
[Figure 2. Standard installation](https://cloud.ibm.com/docs-content/v1/content/f89cc64b006ca59b35404693959c83d5747fee3e/sap/images/refarch-sap-mssql-std-only.svg)

Figure 2. SAP NetWeaver 7.x MS SQL Server standard installation with AAS

Architecture of SAP NetWeaver AS for ABAP

SAP tools create a PAS Instance and an ASCS Instance. This method is the standard for Java Stack (System) and is now standard for ABAP Stack.



1. The Primary Application Server (PAS) - An instance is an administrative unit that contains various components of an SAP system. The components of an instance are parameterized in a shared instance profile. Each instance is identified by a system ID and an instance number and includes:



* [SAP Web Dispatcher](https://help.sap.com/saphelp_snc700_ehp01/helpdata/en/f9/e2350eca7f4a109eb0a7bc63135e27/frameset.htm) & Work Process (DIA,BTC,UPD,SPOOL) - The SAP Web Dispatcher lies between the internet and your SAP system. The SAP Web Dispatcher is the entry point for HTTP and HTTPs requests into your system, which consists of one or more SAP NetWeaver application servers. As a “software web switch”, the SAP Web dispatcher can reject or accept connections. When it accepts a connection, it balances the load to ensure an even distribution across the servers. The SAP Web Dispatcher contributes to security and also balances the load in your SAP system.

You can use the SAP Web Dispatcher in ABAP and Java systems, in pure Java systems, and in pure ABAP systems.
In this script, upgrading the installed software and installing nginx and other packages using the operating system provided software installation tools demonstrates that even the isolated instances have access to the IBM provided mirrors. For Ubuntu, the apt-get commands will access mirrors.

The curl command accessing www.python.org demonstrates the attempt to access and potentially install software from the internet.

Based on whether the host has internet connectivity, the script modifies the index.html page served by nginx.





 Upload from the filesystem and execute on the instance 

There may be data and software that is available on the filesystem of your on-premise system or CI/CD pipeline that needs to be uploaded to the virtual server instance and then executed.

In such cases, you can use the SSH connection to the server to upload files with scp and then execute scripts on the server with ssh. The scripts could also retrieve software installers from the Internet, or from your on-premise systems assuming you have established a connection [such as a VPN](https://cloud.ibm.com/docs/solution-tutorials?topic=solution-tutorials-vpc-site2site-vpn) between your on-premise systems and the cloud.

The tutorial code contains a script named [uploaded.sh](https://github.com/IBM-Cloud/vpc-tutorials/blob/master/vpc-app-deploy/shared/uploaded.sh) which will be uploaded from your workstation to the virtual server instances (manually or through automation like Terraform and Ansible).

In the next sections, you will use the script [test_provision.bash](https://github.com/IBM-Cloud/vpc-tutorials/blob/master/vpc-app-deploy/test_provision.bash) to confirm that the servers have been provisioned successfully, are able (or not) to access the Internet and that the uploaded.sh script was correctly executed.







 Step 2: Using the IBM Cloud CLI and shell scripts 

The IBM Cloud CLI provides commands to interact with all the resources you can create in the IBM Cloud. This section explains how to use these commands, but you are not going to create any resources.
Installing Portworx in your cluster 

Provision a Portworx service instance from the IBM Cloud catalog. After you create the service instance, the latest Portworx enterprise edition (px-enterprise) is installed on your cluster by using Helm. In addition, [Stork](https://docs.portworx.com/portworx-install-with-kubernetes/storage-operations/stork/) is also installed on your IBM Cloud Kubernetes Service cluster. Stork is the Portworx storage scheduler. With Stork, you can co-locate pods with their data and create and restore snapshots of Portworx volumes.

Looking for instructions about how to update or remove Portworx? See [Updating Portworx](https://cloud.ibm.com/docs/containers?topic=containers-storage_portworx_update) and [Removing Portworx](https://cloud.ibm.com/docs/containers?topic=containers-storage_portworx_removing).

Before you begin:



* Make sure that you have the correct [permissions](https://cloud.ibm.com/docs/containers?topic=containers-clusters&interface=ui) to create IBM Cloud Kubernetes Service clusters.
* [Create or use an existing cluster](https://cloud.ibm.com/docs/containers?topic=containers-clusters).
* If you want to use non-SDS worker nodes in a classic cluster [add a block storage device to your worker node](https://cloud.ibm.com/docs/containers?topic=containers-utilitiesmanual_block).
SAP NetWeaver 7.x SAP HANA single-host installation with AAS](https://cloud.ibm.com/docs-content/v1/content/f89cc64b006ca59b35404693959c83d5747fee3e/sap/images/sap-hana-vpc-std-pas-aas.svg)

Figure 1. SAP NetWeaver 7.x SAP HANA single-host installation with AAS

The scripts are designed to create a new VPC and install SAP (SAP BW/4HANA release) solution together with its dedicated DB Hana box in one task flow.





 Schematics deployment 

You use the Schematics interface to deploy your infrastructure with the scripts in the [GitHub repository](https://github.com/ibm-cloud/sap-bw4hana/tree/main/schematics). When you run the scripts with the Schematics interface, you:



* Enter the URL for the GitHub repository for the Terraform files
* Modify the parameters in the Schematics interface. They are the same parameters as the input.auto.tfvars file that you use when you are running the Terraform scripts in the CLI.







 Catalog Tile deployment 

When you use the Catalog Tile for deployment, you:



* Select the SAP BW/4HANA tile from the catalog
* Enter information for your workspace. The Catalog Tile creates a Schematics workspace for you.
* Modify the parameters for your bastion server, personal credential information, and other parameters specific to your solution.







 Terraform deployment 

You use the Bastion server CLI to run the Terraform scripts that are located in the [GitHub repository](https://github.com/IBM-Cloud/sap-bw4hana/tree/main/cli).

To run the scripts to deploy the SAP BW/4HANA release on dedicated SAP HANA 2.0 BOX VSI, you need to:



* The input.auto.tfvars file to customize the resources for your solution.



* Enter the floating IP and subnet information from the Bastion server.
--version VERSION
: Optional: Specify the version of the add-on to install. If no version is specified, the default version is installed.



 Example addon enable image-key-synchronizer command 

ibmcloud oc cluster addon enable image-key-synchronizer --cluster my_cluster







 ibmcloud oc cluster addon enable openshift-data-foundation 

Virtual Private Cloud

Classic infrastructure

Enable the [OpenShift Data Foundation](https://cloud.ibm.com/docs/openshift?topic=openshift-deploy-odf-vpc) add-on.

ibmcloud oc cluster addon enable openshift-data-foundation --cluster CLUSTER [-f] [--param PARAM] [-q] [--version VERSION]

Minimum required permissions
: Administrator platform access role for the cluster in IBM Cloud Kubernetes Service

Command options:

-c, --cluster CLUSTER
: Required: The name or ID of the cluster.

-f
: Optional: Force the command to run with no user prompts.

--param PARAM
: Optional: Specify an installation setting. To see available settings, run ibmcloud oc cluster addon options --addon openshift-data-foundation.

-q
: Optional: Do not show the message of the day or update reminders.

--version VERSION
: Optional: Specify the version of the add-on to install. To see available versions, run ibmcloud oc cluster addon versions. If no version is specified, the default version is installed.





 ibmcloud oc cluster addon enable static-route 

Virtual Private Cloud

Classic infrastructure

Enable the [static route](https://cloud.ibm.com/docs/openshift?topic=openshift-static-routes) add-on.

ibmcloud oc cluster addon enable static-route --cluster CLUSTER [--version VERSION]

Minimum required permissions
: Administrator platform access role for the cluster in IBM Cloud Kubernetes Service

Command options:

--cluster CLUSTER
HCX client deployment 

A minimal VMware HCX™ installation consists of a single cloud and client-side deployment.

The HCX client side can install on any version of vSphere supported by HCX on the assumption that network connectivity between the client and cloud sides exists.



 Requirements 



Table 1. Requirements

 Component CPU count Memory (GB) Disk (GB) 

 HCX Manager 4 12 60 
 HCX Interconnect (HCX-IX) 4 3 2 
 HCX Network Extension (HCX-NE) 4 3 2 
 HCX WAN Optimizer (HCX-WAN) 8 14 100 







 Client licensing 

HCX is a service. HCX is licensed per site and per virtual machine (VM) managed through licensing servers that are maintained by VMware®. The HCX cloud and client-side instances require communication with the VMware registration site throughout their lifecycle.



* Traffic on 80 and 443 must be allowed to https://connect.hybridity.vmware.com
* A one-time use registration key is provided by the IBM Cloud® for VMware Solutions console for the client-side installation. A key is required for each client-side HCX installation.





 Procedure to order on-premises HCX licenses 



1. From the IBM Cloud for VMware Solutions console, click Licences from the left navigation pane.
2. Scroll to the On-premises HCX licenses table and click Create new.
3. Specify the license name.
4. Click the link or links of the terms that apply to your order, and ensure that you agree with these terms before you order the license.
5. Click Create.









 IP address requirements 

To deploy the HCX, the proper number of IP addresses must be available both on-premises and in the target IBM Cloud.



* vMotion address Maintaining a separate network for vMotion is a common practice in the on-premises data center. The Cloud Gateway must have access to the vMotion network. If it does not, an extra IP address is needed to communicate with the vMotion network.
* On-premises



* One IP address for the HCX Manager appliance.
(3/6) Installing openssh-sftp-server (7.5_p1-r9)
(4/6) Installing openssh-server-common (7.5_p1-r9)
(5/6) Installing openssh-server (7.5_p1-r9)
(6/6) Installing openssh (7.5_p1-r9)
Executing busybox-1.27.2-r11.trigger
OK: 326 MiB in 50 packages
2. Download the Terraform on IBM Cloud configuration files to deploy the Red Hat OpenShift Container Platform.

git clone https://github.com/IBM-Cloud/terraform-ibm-openshift.git

Example output:

Cloning into 'terraform-ibm-openshift'...
remote: Enumerating objects: 375, done.
remote: Total 375 (delta 0), reused 0 (delta 0), pack-reused 375
Receiving objects: 100% (375/375), 681.75 KiB | 1.22 MiB/s, done.
Resolving deltas: 100% (190/190), done.
3. Navigate into the installation directory.

cd terraform-ibm-openshift



3. Generate an SSH key. The SSH key is used to access IBM Cloud classic infrastructure resources during provisioning.



1. Create an SSH key inside the container that you created earlier. Enter the email address that you want to associate with your SSH key. Make sure to accept the default file name, file location, and missing passphrase by pressing Enter.

ssh-keygen -t rsa -b 4096 -C "<email_address>"

Example output:

Generating public/private RSA key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
For more information, see [Install NSX Manager and Available Appliances](https://docs.vmware.com/en/VMware-NSX-T-Data-Center/3.1/installation/GUID-FA0ABBBD-34D8-4DA9-882D-085E7E0D269E.htmlGUID-FA0ABBBD-34D8-4DA9-882D-085E7E0D269E).
2. Log in to the newly created NSX Manager using the jump box provisioned earlier. Use e.g. https://nsx-1.vmware.ibmcloud.local as the URL to connect. For more information, see [Log In to the Newly Created NSX Manager](https://docs.vmware.com/en/VMware-NSX-T-Data-Center/3.1/installation/GUID-BF9FF9E2-47BD-466F-BDD2-8FF5145412E5.htmlGUID-BF9FF9E2-47BD-466F-BDD2-8FF5145412E5).
3. Configure a compute manager. Add the previously provisioned vCenter as the compute manager. For more information, see [Add a Compute Manager](https://docs.vmware.com/en/VMware-NSX-T-Data-Center/3.1/installation/GUID-D225CAFC-04D4-44A7-9A09-7C365AAFCA0E.htmlGUID-D225CAFC-04D4-44A7-9A09-7C365AAFCA0E).
4. Deploy additional NSX Manager nodes (2 and 3) to form a cluster.
mount -t ibmshare -o secure=true 10.240.0.5:/acdaecff_a291_41bd_87c1_0dde05135d59 /mnt/nfs -v

The ibmshare in the command is a script that creates the certificate signing request(csr) and calls the Metadata service to get the intermediate cert and end peer certificate. It parses the mount command-line arguments and creates /etc/swanctl/conf.d/type_ibmshare_.conf. The strongSwan service uses this configuration file to establish the IPsec connection. Then, the script loads the IPsec connection and calls the NFS mount command.

You can also include options such as vers=4.1 and sec=sys.







 Updating the Mount Helper 

To update the installation package, run the install.sh script again.

./install.sh





 Uninstalling the Mount Helper 

The following command uninstalls the utility.

./uninstall.sh





 Troubleshooting Tips 



* If the IPsec installation fails, then check the mount-helper installation script logs that are displayed on the standard output.
* If the IPsec is installed properly but failed to start the IPsec service, then check the charon logs. The charon logs can be found in one of the following log files based on OS image: /var/log/syslog or /var/log/messages.
* You can run the following swanctl command on another terminal to check the IPsec connection negotiation logs before you attempt the mount command.

swanctl -T
* To manually start or disconnect the IPsec connection, use one of the following commands.

ipsec up <connection-name>
ipsec down <connection-name>
* If IPsec command is not available, use the following swanctl command.

swanctl -i --ike <connection-name>
swanctl -i --child <connection-name>
swanctl -t --ike <connection-name>
Setting up a Network Installation Management (NIM) server 

You can provision an AIX virtual machine (VM) and use it as a NIM server for troubleshooting purposes or for downloading fixes and updates.



1. Determine the hostname and IP address of the system by using the following two commands, hostname and ifconfig -a.

Determining your hostname and IP address:

 hostname
mpb-test-aix
 ifconfig -a
en0: flags=1e084863,814c0<UP, BROADCAST, NOTRAILERS, RUNNING, SIMPLEX, MULTICAST, GROUPPRT, 64BIT, CHECKSUM_OFFLOAD (ACTIVE), LARGESEND, CHAIN>
inet 192.168.2.228 netmask 0xffffff00 broadcast 192.168.2.255
tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
enl: flags=1e084863, 814c0<UP, BROADCAST, NOTRAILERS, RUNNING, SIMPLEX, MULTICAST, GROUPRT, 64BIT, CHECKSUM_OFFLOAD (ACTIVE), LARGESEND, CHAIN>
inet6 fe80::205f: dfff:fe3e:dc56/64
tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
sit0: flags=8100041<UP, RUNNING, LINKO>
inet6 ::/96
lo0: flags=e08084b, c0<UP, BROADCAST, LOOPBACK, RUNNING, SIMPLEX, MULTICAST, GROUPRT, 64 BIT, LARGESEND, CHAIN>
inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255
inet6 ::1%1/128
tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1

Show more
2. Using the information from the previous step, add an entry for your hostname and IP address into /etc/hosts.
SAP NetWeaver 7.x SAP HANA single-host installation with AAS](https://cloud.ibm.com/docs-content/v1/content/f89cc64b006ca59b35404693959c83d5747fee3e/sap/images/refarch-sap-hana-single-host-only.svg)

Figure 1. SAP NetWeaver 7.x SAP HANA single-host installation with AAS

The scripts are designed to install SAP (SAP S/4HANA release) solution on an existing VPC together with its dedicated DB SAP HANA box in one task flow.





 Terraform deployment 

You use the Bastion server CLI to run the Terraform scripts that are located in the [GitHub repository for SAP S/4HANA for Terraform](https://github.com/ibm-cloud/sap-s4hana/tree/main/cli).

To run the scripts to deploy the SAP S/4HANA release on dedicated SAP HANA 2.0 BOX VSI, you need to:



* The input.auto.tfvars file to customize the resources for your solution.



* Enter the floating IP and subnet information from the Bastion server.
* By default, the VSI is configured with:



* Red Hat Enterprise Linux® 7.x for SAP Applications (amd64),
* Two SSH keys that are configured to access as root user on SSH,
* Five storage volumes.



You can change the default settings to match your solution.
* You can change the default SAP system configuration settings to match your solution.
* You also specify the location where you downloaded the SAP kits.





The IBM Cloud Provider plug-in for Terraform on IBM Cloud uses these configuration files to provision a VPC in your IBM Cloud account.





 Schematics deployment 

You use the Schematics user interface on IBM Cloud® and enter the [GitHub repository for S/4HANA Schematics](https://github.com/ibm-cloud/sap-s4hana/tree/main/schematics).

When you run the scripts with the Schematics interface, you:



* Enter Workspace information.
The following code snippet shows an example of a private worker OLM installation in the Dallas region on Red Hat® OpenShift® on IBM Cloud®:

$ kubectl apply --filename "https://private-worker-service.us-south.devops.cloud.ibm.com/install?type=openshift&olm=true"
catalogsource.operators.coreos.com/private-worker-agent created
subscription.operators.coreos.com/private-agent-subscription created

Type the following command to install the framework for automatic updates on an IBM Cloud Kubernetes cluster:

kubectl apply --filename "https://private-worker-service.{REGION}.devops.cloud.ibm.com/install?type=iks&olm=true"

Where {REGION} is the location of the toolchain's pipeline. You can specify any of the following values for the {REGION}:



* au-syd (Sydney, Australia)
* eu-de (Frankfurt, Germany)
* eu-gb (London, United Kingdom)
* jp-tok (Tokyo, Japan)
* jp-osa (Osaka, Japan)
* us-south (Dallas, US)
* us-east (Washington DC, US)
* ca-tor (Toronto, CA)
* br-sao (Sao Paulo, Brazil)



The following code snippet shows an example of a private worker OLM installation in the Dallas region on IBM Cloud Kubernetes:

$ kubectl apply --filename "https://private-worker-service.us-south.devops.cloud.ibm.com/install?type=iks&olm=true"
catalogsource.operators.coreos.com/private-worker-agent created
catalogsource.operators.coreos.com/tekton-framework created
operatorgroup.operators.coreos.com/agent-operator-group created
subscription.operators.coreos.com/private-agent-subscription created

To set up a pool of private workers, repeat this process with more Kubernetes clusters.