IBM Support

Connect the Information Server DataStage Designer Windows clients to IBM Cloud Pak for Data

How To


Summary

Use these procedures to configure and connect the Information Server DataStage Windows clients to IBM Cloud Pak for Data, for example the Windows Designer, Director and Administrator clients.

Objective

The Information Server Windows DataStage clients such as the Designer, Director, and Administrator can be used to connect to DataStage in IBM Cloud Pak for Data. This procedure applies to versions up to and including DataStage 4.0.1 on Cloud Pak. DataStage versions 4.0.2 and onward cannot accept connections from the Windows clients.

Steps

Step 1. Configure the Red Hat OpenShift client
  1. Ensure that the Red Hat OpenShift client, oc, is installed on your computer (Windows or Mac). You use the oc client to access the Red Hat OpenShift cluster where Cloud Pak for Data is deployed.  You can also log in directly to the Linux Infrastructure node and use the oc client that is already installed there for this procedure.
  2. If you need the oc client, download the oc command-line tool by following the instructions at Get Started with the CLI 3.11 or Get Started with the CLI 4.5
  3. Install the client tool and put the directory in which you installed the tool into your path in the OS environment.
  4. Ensure that you have an account that is created for you in Red Hat OpenShift so that you can log in and get access to the cluster. Contact the administrator of the system that is running your instance, if necessary.
  5. If required, add the IP address and host name for your Red Hat OpenShift system to your hosts file. On Windows, the hosts file is located in: C:\Windows\System32\drivers\etc\
    192.168.1.100 ibm-master ibm-master.cloud master
  6. From a terminal or command window, log in to the cluster: oc login https://<openshift cluster>:port. For example:
    oc login https://ibm-master.cloud:8443
Note: If you are using Red Hat OpenShift 4.5 or later versions, replace 8443 with 6443 in the command.
Log in to Cloud Pak for Data with your Red Hat OpenShift credentials. If you get a message about certificates, enter Y
Step 2. Update configmap ds-proxy-cm on your cluster
  1. Change to the project where <namespace> is the namespace of your cluster where DataStage is installed: 
    oc project <namespace>
  2. Back up the configmap ds-proxy-cm setting: 
    oc get cm ds-proxy-cm -o yaml > ds-proxy-cm.yaml
  3. Edit the configmap ds-proxy-cm: 
    oc edit cm ds-proxy-cm
    Use vi command to add two lines after the line proxy_pass backend; and save the change:
        
    proxy_socket_keepalive on;
    proxy_timeout 4h;
      
  4. Scale down the deployment ds-nginx-proxy: 
    oc scale deploy ds-nginx-proxy --replicas=0
  5. Scale up the deployment ds-nginx-proxy: 
    oc scale deploy ds-nginx-proxy --replicas=1
  6. Wait and confirm that the ds-nginx-proxy pod is restarted: 
    oc get pods | grep ds-nginx-proxy
Step 3. Set up Nginx proxy on a Windows computer with DataStage Designer
  1. Download nginx for Windows from http://nginx.org/en/docs/windows.html.
  2. Update the nginx configuration file nginx.conf:
    1. Get the value for the place holder <ds-proxy-route>: 
      
      oc get route ds-proxy -n <namespace> -o jsonpath='{.spec.host}'
      where <namespace> is the namespace of your cluster.
    2. Replace the place holder <ds-proxy-route> with the value in the nginx.conf file:
      
      #user  nobody;
      worker_processes  1;
      
      #error_log  logs/error.log;
      #error_log  logs/error.log  notice;
      #error_log  logs/error.log  info;
      
      #pid        logs/nginx.pid;
      
      
      events {
          worker_connections  1024;
      }
      
      stream {
          log_format json_combined escape=json
              '{'
                '"time_local":"$time_local",'
                '"remote_addr":"$remote_addr",'
                '"status": "$status",'
                '"$upstream_bytes_sent":"$upstream_bytes_sent",'
                '"$upstream_bytes_received":"$upstream_bytes_received",'
                '"upstream_connect_time":"$upstream_connect_time",'
                '"upstream_addr":"$upstream_addr"'
              '}';
          #access_log logs/nginx.log json_combined;
          upstream backend {
              server  <ds-proxy-route>:443;
          }
          server {
              listen 31538;
              proxy_pass backend;
              proxy_socket_keepalive on;
              proxy_timeout 4h;
              proxy_ssl  on;
              proxy_ssl_session_reuse on;
              proxy_ssl_server_name on;
              proxy_ssl_name <ds-proxy-route>;
          }
      }
      Note: If the Windows system has the full Information Server suite installed, then port 31538 is not available, so the port needs to be changed to an unused port (e.g. 31537). For example, replace the line "listen 31538' with "listen 31537" in the nginx.conf file.
  3. Update hosts file under C:\Windows\System32\drivers\etc by adding the following entry to map is-en-conductor-0.en-cond to localhost.
    
    127.0.0.1   is-en-conductor-0.en-cond
  4. Start or reload nginx service if it's already running. In the directory where Nginx was unzipped, run one of the following commands:
  • To start nginx service, run: start nginx
  • To reload nginx service, run: nginx.exe -s reload
Step 4. Update the timeout value to 30 minutes for your Load Balancer
If you are on IBM cloud or a bare metal environment, configure the haproxy Load Balancer by completing the following steps:
1.  Back up the /etc/haproxy.cfg file:
cp /etc/haproxy.cfg  /etc/haproxy.cfg.orig
2.  Update the timeout settings with the following values in the /etc/haproxy.cfg  file:

timeout client    30m
timeout server    30m
3.  Restart the haproxy service:
systemctl restart haproxy
If you are using the Azure Load Balancer, consult the Microsoft document  Configure TCP reset and idle timeout for Azure Load Balancer to configure the idle timeout to 30 minutes for your Azure Load Balancer.
If you are using the AWS Load Balancer, consult the AWS document  Configure the idle connection timeout for your Classic Load Balancer to configure the idle timeout to 30 minutes for your AWS Load Balancer.
Step 5. Increase the timeout value to the ds-proxy route
Run the following command, replacing [namespace] with the namespace on your cluster, where DataStage is installed:
oc annotate route ds-proxy --overwrite haproxy.router.openshift.io/timeout=30m -n [namespace]
Step 6. Connect your Windows Designer client to the services and engine tiers that are running on your cluster
  1. Obtain the <cpd-route> value by running the following command:
    
    oc get route -n <namespace> <namespace>-cpd -o jsonpath='{.spec.host}'
    where <namespace> is the namespace of your cluster, where DataStage is installed.
  2. Start the DataStage Designer client.
  3. In the dialog window under Host name of the services tier, fill in:
    <cpd-route>:443
  4. In the dialog window under Project, fill in:
    
    IS-EN-CONDUCTOR-0.EN-COND:31538/dstage1
    Note: Replace 31538 with the port number used in nginx.conf if a different port number is used (for example, 31537).
  5. Click Login. Accept the self-signed certificate from the Security Alert dialog.
    Note:  On CPD installs with IAM integration enabled, an APIKey needs to be used in place of the password. The APIKey can be generated from the user profile UI, which can be accessed by clicking the user icon and selecting 'Profile and settings'.

Document Location

Worldwide

[{"Type":"MASTER","Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEBWJ","label":"IBM DataStage Enterprise Plus Cartridge for IBM Cloud Pak for Data"},"ARM Category":[{"code":"a8m50000000ClW2AAK","label":"Organize-\u003ETransform Data"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.5.0;4.0.1"}]

Document Information

Modified date:
26 May 2022

UID

ibm16356623