IP addresses

Deployment options: Netezza Performance Server for Cloud Pak for Data System
You can access the Netezza Performance Server host by using one of the following methods.
Additional IP address assigned to the instance
The Netezza Performance Server engine is available on default ports.
This method is mandatory for production instances and recommended for development and test instances.
OpenShift cluster IP address and NodePort mapping
The Netezza Performance Server engine is available on nondefault ports.
This method is supported only for development and test instances.

In Cloud Pak for Data System 1.X, Netezza Performance Server was delivered with the host application that runs in a docker container on one of the control plane nodes (e1n1, e1n2 or e1n3). The container had access to the bare metal node network where the cluster virtual IP address for Cloud Pak for Data System was started. This is why the Netezza Performance Server database engine was available on the Cloud Pak for Data System cluster IP through the default ports. For example, 5480.

In Cloud Pak for Data System 2.X, the Netezza Performance Server host runs inside the Red Hat OpenShift cluster. The host is started on one of the worker nodes and it no longer has access to the control plane or bare metal node network. Red Hat OpenShift worker nodes are not available to the customer network, but they can handle multiple instances. This is why Netezza Performance Server cannot use the default cluster IP address on which the default set of ports would be opened. A single IP address and multiple Netezza Performance Server instances would cause port conflicts.

You must assign at least one additional IP address for each Netezza Performance Server instance, which is being deployed. The Netezza Performance Server database is available on this dedicated IP address through the default ports. If you are migrating from Cloud Pak for Data System 1.X, you must switch the database applications Cloud Pak for Data System cluster IP address to the new Netezza Performance Server instance dedicated IP. Select the IP address from the data fabric network, not the management network. Usually, it is the IP address from the same network from which the Cloud Pak for Data System cluster IP address was assigned.

The Netezza Performance Server instance IP address

Services that are deployed for a sample Netezza Performance Server instance (nps-2) are listed in the following example.
[root@gt22-node1 ~]# oc get service -n nps-2
NAME                  TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                                                        AGE
ipshost               ClusterIP      9.255.116.207   <none>        5480/TCP,5481/TCP                                              2d3h
ipshost-external      LoadBalancer   9.255.210.46    9.42.77.153   5480:30842/TCP,8443:31346/TCP,51022:31407/TCP,5481:32568/TCP   2d3h
ipshost-rest-server   ClusterIP      9.255.222.21    <none>        8443/TCP                                                       2d3h

ipshost-external is the LoadBalancer service, which exposes the Netezza Performance Server host pod ports in the Red Hat OpenShift cluster.

The EXTERNAL-IP column shows the instance-specific IP address.

You can access the database and SSH services by using an instance-specific IP and default port. For example, 51022 for the SSH service.
[root@gt22-node1 ~]# ssh -l nz -p 51022 9.42.77.153
nz@9.42.77.153's password:
Last login: Wed Dec 15 11:43:54 2021
[nz@nps-2-npshost ~]$

NodePort

Red Hat OpenShift provides services and routes, which allow to expose specific ports to a pod (for inter-pod communication) and provide external connectivity to services. The service/route function is meant to serve only web applications and is limited to HTTP/HTTPS/TLS. To expose ODBC/OLEDB/JDBC, climgr, backup and restore, and SSH to the container by using any of the Red Hat OpenShift nodes, especially worker nodes, the NodePort service is used. You can SSH to the host pod even if the Red Hat OpenShift node that it runs on is not exposed to the customer network.

NodePort opens a port on all nodes in the range of 30000 - 32767. The ports are assigned dynamically. This model also supports multiple Netezza Performance Server tenants with their services that are exposed at different ports.

Services that are deployed for a sample Netezza Performance Server instance (nps-1) are listed in the following example.
# oc get service -n nps-1
NAME                  TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)                                                                   AGE
bnr-local-svc         ClusterIP   9.255.29.6     <none>        6010/TCP,6011/TCP,6012/TCP,6013/TCP,6014/TCP,6015/TCP,6016/TCP,6017/TCP   4h9m
ipshost               ClusterIP   9.255.90.4     <none>        5480/TCP,5481/TCP                                                         22h
ipshost-external      NodePort    9.255.96.176   <none>        5480:32557/TCP,8443:31486/TCP,51022:30230/TCP,5481:31876/TCP              22h
ipshost-rest-server   ClusterIP   9.255.49.151   <none>        8443/TCP     

ipshost-external is the NodePort service, which exposes the Netezza Performance Server host pod ports in the Red Hat OpenShift cluster.

The Netezza Performance Server database engine port 5480 is mapped to port 32557.

The SSH service that is started in the Netezza Performance Server host pod on port 51022 is mapped to port 30230.

The EXTERNAL-IP column is empty, which means that instance-specific address was not deployed.

You can access the database by using the Red Hat OpenShift cluster virtual IP address (started on a control plane, bare metal node) and port 32557.

An SSH client can connect to the host port by using Red Hat OpenShift cluster IP and port 30230.

[root@gt22-node1 ~]# ip -br -c addr show | grep fbond
fbond            UP
fbond.901@fbond  UP             9.42.116.193/24 fe80::e42:a1ff:fe05:66e2/64
[root@gt22-node1 ~]# ssh -l root -p 30230 9.42.116.193
root@9.42.116.193's password:
Last login: Wed Dec  1 17:00:58 2021 from 9.254.4.1
[root@nps-1-npshost ~]#