This blog will explain that it is possible to run an SAP system in different subnets and why a restart of the whole SAP system is necessary if the (A)SCS instance will be moved to a different subnet, for example using a high availability solution.
The (A)SCS instance contains the Message Server (msg_server.exe) and the Enqueue Server (enserver.exe). Both processes are the single point of failure components of an SAP system. To configure them highly available, the (A)SCS will be installed in a Microsoft Failover Cluster or any other HA solution available on the market.
A prerequisite is that the virtual host name used for the (A)SCS instance (which is usually SAPGLOBALHOST name by default), has one IP address configured in DNS, a so-called A-record in DNS.
When you start the SAP System all “clients” will connect to either message server or enqueue server.
Clients mean here:
- SAP application server instances (ABAP or JAVA)
- SAP standalone gateway instances
- SAP Web Dispatcher instances
- SAP routers
- any RFC client (from 3rd party vendors)
They all want to connect to the hostname used for the (A)SCS instance. The OS retrieves the IP address for the (A)SCS hostname and all clients are using this IP address for communication.
If a failover will occur to site B, message server and enqueue server are running under a different IP address now. All clients are still trying to reconnect using the IP address of site A.
Take a look at this video to understand this basic principle of SAP operations: https://sapvideoa35699dc5.hana.ondemand.com/?entry_id=1_b9e6t03p
If you failover an SAP (A)SCS instance in an HA environment and you don’t want to restart any client, then use the same network subnet.
If you use different subnets, a restart of all clients is always mandatory.
Mandatory really always? Are there no exceptions?
Yes! It is possible to configure a NetWeaver or S/4 based “HA” configuration using different subnets.
Here you can find a (not complete) list:
- SWPM does not fully support the HA installation, you need to manually interfere. For example, if the additional cluster node will be installed. SWPM cannot configure the hostname of the ASCS with two IP addresses (in different subnets) and the necessary “OR”.
- Apply SAP note 1425520 to all SAP related components: Dialog instances, gateways, Web Dispatcher instances, etc.
- Set the environment variable mentioned in note 1425520 on all clients which use the SAP DLL for RFC communication.
- Configure third-party RFC applications to recognize a change of the IP address of the hostname used for the (A)SCS instance. Most likely there are third-party applications which do not support this! In case of a failover, these applications must be manually restarted!
The hostname used for the (A)SCS instance will be registered in DNS dynamically by the HA solution (for example the Failover cluster). You have to make sure that:
- The cluster node which takes over a clustered instance can register the DNS record in the DNS server of the site of this cluster node.
- All DNS servers on all sites must FAST replicate the change!
- All DNS clients on all sites must be disabled, to get the latest, changed DNS information!
- TTL changed to a low value
Be aware, that the failover can take much longer! If the dynamic DNS update doesn’t work, the result will be a completely system standstill stituation.