Use of Virtual/Secondary host name with SAP HANA

There are scenarios where you do not connect to SAP HANA database instance directly via Host IP address or Physical hostname but via a Virtual IP or NAT address.

The main connection between NAT and the IP is established via DNS or a local entry in local host file.

But internally SAP HANA tries to make a connection to the Tenant DB using physical IP by default. Same has been depicted below with an example of SAP HANA Studio.

If you check the properties of a tenant database from studio you will see the following:

Even though you connect to DB using NAT IP (10.253.80.9) it is internally redirected to original IP (10.249.28.20) to make additional connections.

In this case when you try to make connection to a tenant database via webdispatcher or sql clients you will not be able to communicate to tenant DB.

studio1

You can also verify the same by querying M_HOST_INFORMATION.

studio2

This behaviour is controlled by parameter “public_hostname_resolution” under global.ini.

stud3

To change the behaviour you will have to change the parameter to “no” so that system is not forced anymore to use IP address of the Network interface. Instead you can map the hostname to required IP address as required.

settono

Note: This change does not required a DB restart.

Now you can map the hostname with required IP address on client machine to connect to the database:

Changes can be observed again with studio again.

afterc

 

 

Advertisements

Check your ports before you install the application

I have come across situations where it was necessary to check the ports before even installing an application to see if firewall is open or if no other application is already using the port.

Linux:

On Linux environments this can be done using command ln:

Use yum or zypper or apt-get to install the tool:

ln1

Now simulate your port and test:

nc2

Windows:

On windows I did not find a ready-made way to do the same. So designed my own, with some help from internet.

No installation required and it is version independent. Just download and run it from below link:

Simulate Port on Windows

Instructions:

Unzip the file to your desktop.

Double click to execute the file:

porttest

porttest1

If prompted allow firewall access.

porttest3

And you are ready to test.

telnetport

Once you are connected, you get a message in your simulator:

simutt

Note: After the test is done end the test process from your task manager. Otherwise the port will be kept occupied.

servvee