Installing
The following sections outlines the steps to set up IBM Connect Direct Web Services. This workflow also describes how to plan, configure, uninstall, and troubleshoot the IBM® Connect:Direct® Web Service.
The table lists the necessary installation and configuration tasks that you must perform to complete the installation.
| Task | For more information, see the following sections in this guide |
|---|---|
| Installing IBM Connect:Direct Web Service | |
| Configuring a secure connection between IBM Connect:Direct Web Console and a IBM Connect:Direct server | Establishing a Secure Connection between IBM Connect:Direct and IBM Connect:Direct Web Service |
|
Configuring the property files that control system-wide IBM Connect:Direct Web Console properties. |
Configuring application.properties |
|
Configuring Web Services Logs |
Connect:Direct Web Services Logs |
| Configuring Control Center integration | Connect:Direct Web Services and Control Center Integration |
Installing on UNIX
Before you begin
- Review the system requirements. For more information, see Minimum Hardware and Software Requirements.
- Make sure you have added firewall rules for inbound and outbound connections between Web Services and Connect Direct Server. Firewall rules must allow inbound connections to the specified Web Services port. Connect Direct server must also have its API port open for web service.
Procedure
To install the Connect:Direct Web Services from command line on a UNIX Operating System follow the steps given below.
- If you are installing as a root user, the product will be installed across system and therefore,
it is recommended not to install as a root user. You should install it in a shared area with limited
access so as not to disrupt any permission changes on the
/rootdirectory. -
Ensure that you login to the same functional account to upgrade Connect:Direct Web Services.
What to do next
Directory Structure
The following figure illustrates IBM Connect:Direct Web Service directory structure after a successful installation:
|
Installing on Windows
Before you begin
Make sure you have added firewall rules for inbound and outbound connections between Web Services and Connect Direct Server. Firewall rules must allow inbound connections to the specified Web Services port. Connect Direct server must also have its API port open for web service.
Procedure
To install IBM Connect:Direct Web Service on a Windows platform follow the steps given below.
What to do next
Directory Structure
The following figure illustrates IBM Connect:Direct Web Service directory structure after a successful installation on a Windows Operating System:
|
Installing on AIX
Before you begin
libatomic.alibgcc_s.alibc++.alibunwind.alibatomic.alibc++abi.a
Make sure you add firewall rules for inbound and outbound connections between Web Services and Connect Direct Server. Firewall rules must allow inbound connections to the specified Web Services port. Connect Direct server must also have its API port open for web service.
About this task
Follow the procedure given below to prepare and complete installation on AIX.
Procedure
Installing on zLinux
Before you begin
Make sure you add firewall rules for inbound and outbound connections between Web Services and Connect Direct Server. Firewall rules must allow inbound connections to the specified Web Services port. Connect Direct server must also have its API port open for web service.
About this task
Follow the procedure given below to prepare and complete installation on zLinux.
Procedure
- If you have downloaded the Web Services for zLinux installation software from Fix Central or Passport Advantage go to the download folder.
- Refer cdws_install_cdws_overview.html table. To continue installing follow the steps described in, Installing on UNIX
Installing IBM Connect:Direct Web Service using an IBM Certified Container Software
IBM Certified Container Software (CCS) can be installed on the Kubernetes based cluster.
Kubernetes is an open-source container orchestration engine to automate the deployment, scaling and management of containerized applications. This application release has been qualified and certified on an on-premise Red Hat® OpenShift® Container Platform (OCP) which is an enterprise-ready Kubernetes container platform with full-stack automated operations to manage the deployment life-cycle.
IBM CCS offers a container image and a helm chart. It meets the standard criteria for the packaging and deployment of containerized software. In addition, the container image is IBM certified.
Pre-installation Tasks
- Setting up Your Registry Server: Ensure you have a registry server in place to host the image required for installation.
- Setting up Namespace or Project: Ensure that you have an existing namespace/project or create a new one if necessary.
- Installing and configuring IBM Licensing and Metering service: Ensure that this service is installed on your cluster.
- Downloading the Certified Container Software: Ensure that the installation files are available on your client system.
- Creating the Security Context Constraints for OpenShift Cluster: Make sure you have generated the necessary SCC using the provided scripts.
- Creating storage for data persistence: Ensure you have required storage option ready to be used.
- Creating secret: Ensure you have secrets needed for Connect:Direct Web Services configuration and pull secret (if required).
- Configuring the Deployment: Review the various parameters in the values.yaml file along with their default values. Update any default values as necessary and as supported by IBM Certified Container Software for Connect:Direct for Web Services.
Post-installation tasks
The post deployment configuration steps can be performed via:
• Accessing Connect Direct Web Services
- Access Connect Direct Web Services using the Load Balancer or External IP address and the port to which container server port (9443) is mapped. For more information, refer to Exposed Services.
- Issue the following command to get the external IP
address
kubectl get svc
• Attaching to the container
- Issue the following command to get the pod
name
kubectl get pods -n <namespace>
- Issue the following command to attach to the
container
kubectl exec -it <pod name> bash
• Restarting Connect:Direct Web Services inside container
- Sometime, few configurations of IBM Connect:Direct Web Services needs its
services to be restarted. To restart the Connect:Direct Web Services in
container, delete the existing pod. Run below command to delete the
pod:
kubectl delete pod <pod name> -n <namespace>
Known Limitations
- High availability and scalability are supported in traditional way of Connect:Direct Web Services deployment using Kubernetes load balancer service.
- IBM Connect:Direct Web Services chart supports only the x64 architecture.
Configure AWS CloudWatch for Rendering Container Logs (EKS)
Configure Amazon CloudWatch Observability for Amazon EKS to collect, store, monitor, and analyze container logs and metrics from rendering workloads.
Prerequisites
- An existing Amazon EKS cluster
- EKS cluster version 1.23 or later
- AWS CLI version 2 installed and configured
- kubectl installed and configured for cluster access
Required IAM Permissions
- Amazon EKS
- AWS IAM
- Amazon CloudWatch
Configure IAM for Worker Nodes
Configure IAM permissions for EKS worker nodes so that CloudWatch can collect and store container logs.
- Open the AWS Management Console.
- Go to IAM > Roles.
- Locate the IAM role used by the EKS worker nodes.
- Attach one of the following policies to allow worker nodes to publish logs
to CloudWatch: Option 1: AWS Managed Policy (Simpler) -
CloudWatchLogsFullAccessOption 2: Custom Policy (Least Privilege - Recommended){ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": "*" } ] }
- Step 1: Install the Amazon CloudWatch Observability Add-on
- Install the Amazon CloudWatch Observability add-on to enable log collection,
metrics monitoring, and observability features for the EKS cluster.
- Open the Amazon EKS console.
- Select the EKS cluster.
- Go to Add-ons.
- Select Get more add-ons.
- Search for Amazon CloudWatch Observability.
- Select Install.
- Configuration options
- Review and configure the add-on access and namespace settings before
completing the installation.
- Add-on access: Select EKS Pod Identity (Alternatively, IAM Roles for Service Accounts (IRSA) can be used.)
- Namespace: Use the default namespace
(
amazon-cloudwatch) or provide a custom namespace. - Select Install or Create.
- Wait for the installation to complete.
- Step 2: Verify Add-on Status
- Verify that the CloudWatch Observability add-on and its required components
are running successfully in the cluster.
- In the EKS console, open Add-ons.
- Confirm that the Amazon CloudWatch Observability add-on status is Active.
- Select the add-on name to view detailed information.
- Optional: Verify pods by running:
kubectl get pods -n amazon-cloudwatchConfirm that the following exported components are deployed and running after installation:- cloudwatch-agent
- fluent-bit
- Step 3: View Logs in CloudWatch
- Access CloudWatch Logs to verify that container node, and cluster logs are
being collected and stored successfully.
- Open the Amazon CloudWatch console.
- Go to Logs > Log groups.
CloudWatch automatically creates the following log groups:
/aws/containerinsights/<cluster-name>/application /aws/containerinsights/<cluster-name>/performance /aws/containerinsights/<cluster-name>/host- Log group details
-
- application: Application and container logs
- performance: Cluster and workload performance metrics
- host: Node-level logs and metrics
Logs are automatically created and stored using this naming convention.
Optional: Enable CloudWatch Application Signals
CloudWatch Application Signals collects application-level metrics and traces such as latency and availability without requiring code changes.
Complete the following steps to enable Application Signals for the EKS cluster.
- Steps to enable
-
- Open Amazon CloudWatch Observability.
- Select Enable CloudWatch Application Signals.
- Under Platform, select EKS.
- Choose the EKS cluster.
- Select a setup method:
- Console (recommended)
- Manifest (YAML)
- Complete the configuration and select Enable.
(Optional) Customize Log Collection
Customize CloudWatch log collection settings to align with operational, monitoring, and compliance requirements.
- Open the Amazon CloudWatch console.
- Navigate to Logs > Log groups.
- Adjust log retention policies as needed.
Upgrade or Remove the Add-on (UI)
Manage the CloudWatch Observability add-on throughout its lifecycle by upgrading to a newer version or removing it from the cluster.
- Upgrade the Add-on
- Upgrade the add-on to access the latest features, performance improvements,
security updates, and bug fixes.
- Open the Amazon EKS console.
- Select the EKS cluster.
- Navigate to Add-ons.
- Select Amazon CloudWatch Observability.
- Click Update.
- Choose the latest available version.
- Remove the Add-on
- Remove the add-on when CloudWatch observability features are no longer
required for the cluster.
- Select the add-on.
- Select Remove.
- Confirm deletion.
Log Analysis in CloudWatch
Use CloudWatch log analysis tools to search, filter, troubleshoot, and gain operational insights from collected container logs.
- Log Tail - Used to view live logs in near real-time.
- Logs Insights - Used for querying, filtering, and analyzing logs.
Common Logs Insights Query Commands
- fields
- filter
- filterIndex (new)
- stats
- sort
- limit
- parse
- dedup
- pattern
- diff
- unnest (new)
For more information about Logs Insights query commands and syntax, see CloudWatch Logs Insights query syntax.
Sample CloudWatch Logs Insights Queries
- View Recent Application Logs: Use this query to display the most
recent application log entries.
fields @timestamp, @message sort @timestamp desc limit 50 - Filter Logs for a Specific Namespace: Use this query to retrieve logs
generated by workloads running in a specific Kubernetes
namespace.
fields @timestamp, kubernetes.namespace_name, @message filter kubernetes.namespace_name = "default" sort @timestamp desc limit 50 - Filter Logs for a Specific Pod: Use this query to view log entries
generated by a specific Kubernetes
pod.
fields @timestamp, kubernetes.pod_name, @message filter kubernetes.pod_name like /my-app/ sort @timestamp desc - Search for Error Messages: Use this query to identify log entries
that contain error messages.
fields @timestamp, @message filter @message like /error/i sort @timestamp desc limit 100 - Count Errors Over Time: Use this query to analyze error occurrence
trends over a specified time
interval.
filter @message like /error/i stats count() as error_count by bin(5m) - View Logs by Container Name: Use this query to display log entries
generated by a specific
container.
fields @timestamp, kubernetes.container_name, @message filter kubernetes.container_name = "app-container" sort @timestamp desc - Duplicate Repeated Log Messages: Use this query to remove duplicate
log messages and focus on unique events during log
analysis.
fields @message dedup @message limit 20
Migrating to Connect:Direct Web Services using Certified Container Software
- Create a backupTo create a backup of configuration data and other information such as logs and configuration files, present in the persistent volume, follow the steps given below:
- Go to mount path of Persistent Volume.
- Make copy of the following directories and store them at a secured location:
- json
- restlogs
- configFilesNote:
- Update the path in .hiddenFile for the CDWS keystore and truststore. The installation path is /opt/MFTWebServices/.
- If Connect:Direct Web Services is installed in a
conventional mode, create a backup of the
following directories:
- INSTALLATION_DIR/JSONFileSystem
- INSTALLATION_DIR/RestLogs
- INSTALLATION_DIR/mftws/BOOT-INF/classes
From the classes directory, only following files are required: application.properties, .hiddenFile, ssl-server.jks, trustedkeystore.jks, log4j2.yaml. These files will be placed in configFiles directory on persistent volume.
- Restore the data in a new deploymentTo restore data in a new deployment, follow the steps given below:
- Create a Persistent Volume.
- Copy all the backed-up directories to the mount path of Persistent Volume.
- For other prerequisites such as secrets see, Pre-installation Tasks.
- Upgrade to Certified Container SoftwareCreate a new instance of chart using the following helm CLI command:
helm install <release-name> --set license=true,image.repository=<reponame>,image.tag=<image tag>,image.imageSecrets=<image pull secret>,secret.secretName=<CDWS secret name> ibm-cdws-1.0.x.tgz
Silent Install and Silent Upgrade for Connect:Direct Web Services
Connect:Direct Web Services administrators can use procedures defined in the following sections to run an unattended install with minimal user interaction. Silent installs can be used for repetitive installs in your deployment.
Installation and Upgrade Considerations
-
Ensure that the installation executable file, script, and
silentInstall.propertiesfile are placed in the same directory. Also, do not rename these files. - The same
silentInstall.propertiesfile that was used to perform silent installation must be used to upgrade Connect:Direct Web Services to a different version. -
When you upgrade from version < 6.0.0.5 the user must update database properties that is, Redis properties (
REDIS_PORT) must be replaced with changed PostgreSQL properties (POSTGRES_PORTandPOSTGRESQL_PASSWORD) in thesilentInstall.propertiesfile.Attention: CDWS 6.2.0.10 onwards steps related to Postgres are not applicable
- Supply values in the
silentInstall.propertiesfile included in software package, Fix Pack 3 (v6.0.0.3) and above.silentInstall.propertiesfile defines the installation configuration that you would normally enter during an interactive installation process (console-mode installation). ThesilentInstall.propertiesfile is subsequently used to silently install Connect:Direct Web Services.Before you begin
The following Connect:Direct Web Services minimum version levels are required to perform silent installation:
The following table lists script files to be used by Operating Systems to perform unattended installation.Table 3. Product Minimum Version IBM Connect:Direct Web Services Fix Pack 3 (v6.0.0.3) Table 4. Silent Installer script name by OS Operating System Silent installation script name Windows MFTWebServicesInstall.bat UNIX MFTWebServicesInstall.sh - To perform silent installation see the following examples:
UNIX environment (RHEL)
When executing the
MFTWebServicesInstall.sh,pass the argumentsilentto the script.[user@SolQA-02 CDWS_6.1.0.1]$ ./MFTWebServicesInstall.sh silent Installing Webservices... Installer installed/upgraded correctly. Please refer INSTALLATION_DIRECTORY/README.txt for getting started with MFTWebservices. Press any key to continue.....WINDOWS environment
To install in a Windows environment, execute theMFTWebservicesInstall.batfile available in the download folder.C:\Users\Administrator\Desktop\CDWS_Installer\CDWS_6.1.0.0_01_05_2020>MFTWebservicesInstall.bat Installing Webservices... "Exit Code: 0" Installer installed/upgraded correctly. Please refer INSTALLTION_DIRECTORY/README.txt for getting started with MFTWebservices. Press any key to continue . . .Error Handling during Silent Install
- If you encounter problems when performing a silent installation review the log file,
failure.txt, available inside the
logsdirectory at the same location where you have installed Connect:Direct Web Services. - If silent installation does not begin:
- Cleanup the registry settings in the .com.zero.registry.xml
In UNIX environment, this file is located in
/varfor Root users and$HOME/for non-root users. In Windows, this file is located in C:\Program Files\Zero G Registry.
- Edit the Zero G registry file to remove entries that begin with MFTWebServices
and delete any entries beginning with the following tag:
<product name="MFTWebServices">...</product> - Attempt silent installation again.
- Cleanup the registry settings in the .com.zero.registry.xml
- If you encounter problems when performing a silent installation review the log file,
failure.txt, available inside the
Connect:Direct Web Services Silent Install and Silent Upgrade Example
- Download the installation package from Fix Central and navigate to the directory where
the installation package is downloaded.
The following files will be used to perform Silent Installation:
silentInstall.properties-
MFTWebservices.exe MFTWebservicesInstall.bat(for Windows)MFTWebServicesInstall.sh(for UNIX)
- Modify the
silentInstall.propertiesfile based on your requirements.
| Parameters | Mandatory/Optional | Description |
|---|---|---|
| Read-Only parameters | ||
INSTALLER_UI |
Use default value | Do not modify this attribute. |
CHOSEN_INSTALL_SET |
Use default value | Do not modify this attribute. |
| Editable Parameters | ||
USER_INSTALL_DIR |
M | The directory where the installer will get installed. For Unix, example:
For Windows, directories should be separated with double backslash. (\\) Example: C:\\Program Files\\MFTWebservices
|
SSL_PORT |
M | Port number used to communicate with the Jetty server. |
KEYSTORE_PASS |
M | This attribute can contain either clear text or base64 encoded password for the
Keystore where the certificate will be placed. When a clear text password is
provided, the value will be encrypted and updated in the
silentInstall.properties file. The Keystore password must be 6 or
more characters. |
CONFIRM_PASS |
M | This attribute should store the same value as KEYSTORE_PASS attribute. |
TRUSTSTORE_PASS |
M | This attribute can contain either clear text or base64 encoded password for the
Truststore where the certificate will be placed. When a clear text password is
provided, the value will be encrypted and updated in the
silentInstall.properties file. The Truststore password must be 6
or more characters. |
CONFIRM_TRUSTSTORE_PASS |
M | This attribute should store the same value as TRUSTSTORE_PASS attribute. |
CERTIFICATE_TYPE |
M |
This attribute stores value for certificate type to be used for secured communication Possible values:
Default value: 1 |
| TRUST_CERTIFICATE_FILE | O |
This attribute should contain the full path of the file with the file name. It only considers PEM format extension certificate. For Unix, example: /root/Certificates/trustCert.pem For Windows, directories should be separated with double backslash. (\\) Example: C:\\Certificates\\trustCert.pem Note: If set empty, then import will be skipped.
|
BACKUP_CONFIG_DATA |
O |
This attribute decides whether to backup the data during uninstallation of the product. Valid Values are:
Note: If yes is mentioned it will backup configuration
data at $INSTALLATION_DIRECTORY/backup Files location.
|
| Parameters | Mandatory/Optional | Description |
|---|---|---|
| If certificate type is Self Signed certificate | ||
CERTIFICATE_LABEL |
M | This attribute should store the certificate label or alias of the certificate entered in lower case. |
CERTIFICATE_EXPIRY_TIME |
M | This attribute should store the expiry time in days. Value entered should be greater than 0. |
COMMON_NAME |
M |
This attribute should store the Common Name of the certificate. Values not allowed:
|
ORGANISATION |
M | This attribute should store an Organization Name that must be registered with some
authority at the national, state, or city level. Use the legal name under which your organization is registered. Do not use an abbreviated form or use any of these symbols: ! @ # $ % ^ * ( ) ~ ? > < / \. |
LOCALITY |
M | This attribute should store the name of locality/city where the organization is located. |
STATE |
M | This attribute should store the name of state where the organization is located. |
COUNTRY |
M | This attribute should store country code in the standard format where the organization is located. |
EMAIL_ID |
M | This attribute should store e-mail ID for the support group. |
DNS_NAME |
M | This attribute should store the domain name secured by the certificate. |
IP_ADDR |
M | This attribute should store the IP address secured by the certificate. |
EXPORT_CERTIFICATE_LOC |
O |
This attribute should contain the valid absolute path to save the self signed public certificate. For Unix, example : /root/MFTWebservices For Windows, directories should be separated with double backslash. (\\) Example : C:\\Program Files\\MFTWebservices Note: If set empty, export will be skipped.
|
| If certificate type is CA Signed certificate | ||
CA_CERTIFICATE_FILE |
M | This attribute should contain the full path of the file with the file name. It only
considers PEM or PKCS12 format extension certificate. The file must contain the private key,
the CA-signed certificate, the CA certificate and all intermediate certificates. For Unix, example: /root/Certificates/certFile.pem For Windows, directories should be separated with double backslash. (\\) Example: C:\\Certificates\\certFile.pem
|
CA_CERTIFICATE_PASSWORD
|
M | This attribute should contain the private key password of the CA Signed certificate. The password would be the Base64 password. |
CERTIFICATE_LABEL |
M | This attribute should store the certificate label or alias of the certificate entered in lower case. |