Symbolic links

Updated: April 19, 2023

You can set up symbolic links to the various “QoS-qualified” pathnames:
ln -sP /net/lab2~preferred:en1 /remote/sql_server

This assigns an “abstracted” name of /remote/sql_server to the node lab2 with a preferred QoS (i.e., over the en1 link).

Note: You can't create symbolic links inside /net because Qnet takes over that namespace.

Abstracting the pathnames by one level of indirection gives you multiple servers available in a network, all providing the same service. When one server fails, the abstract pathname can be “remapped” to point to the pathname of a different server. For example, if lab2 failed, then a monitoring program could detect this and effectively issue:

rm /remote/sql_server
ln -sP /net/lab1 /remote/sql_server

This would remove lab2 and reassign the service to lab1. The real advantage here is that applications can be coded based on the abstract “service name” rather than be bound to a specific node name.