OPC UA Server - Redundancy

This chapter deals with the case that the WinCC OA OPC UA server is running in a redundant WinCC OA system.

Redundancy in WinCC OA

Server redundancy allows Clients to have multiple sources from which to obtain the same data. If the WinCC OA system is redundant, the WinCC OA OPC UA server is usually running on both sides.

There is also an option to run the server with the config entry connectToRedundantHosts, which allows you to have a single OPC UA server for accessing a redundant WinCC OA system.

In non-transparent redundancy, the client is responsible for the failover from one server to the other as well as actions to continue to send or receive data. Therefore, the client must be aware of the redundant servers. According to the OPC UA specification, the server failover mode of the WinCC OA OPC UA server corresponds to "Hot (b)".

Hot failover mode means that the client connects to both servers in the redundant server set and subscribes to the ServiceLevel variable to find the highest ServiceLevel. If the WinCC OA OPC UA server is running, the server shows the information in its server status whether it belongs to the active or the passive WinCC OA system by setting the ServiceLevel variable. Thereby this information is available for the client. The ServiceLevel of the OPC UA server which belongs to the active WinCC OA system will be set to 255, and the ServiceLevel of the OPC UA Server which belongs to the passive WinCC OA system will be always set to 100. The value can be configured using the config entry passiveServiceLevel. The process image is held consistently in both OPC UA servers. That means that the client receives the same values from both servers in case of queries (Data Access, Historical Access) as well as subscriptions.

Clients may implement the following subscription behavior in a Hot failover mode:

Client connects to both servers and establishes subscription(s) in each where all subscriptions are reporting. The Client is responsible for handling/processing multiple subscription streams concurrently. The client has to send value changes (i.e. Write Service) either to both servers or to the active server, as the OPC UA server on the passive system is not able to change values. This means that clients should issue service requests such as Write to both servers or to the Server with the highest ServiceLevel. If the client is sending the values only to the currently active server, value changes may get lost in case of a WinCC OA redundancy switchover. Continuation Points (e.g. Browse, Historical Access) are not synchronized between the both servers of the redundant server set.

To allow that the status data on the _OPCUAPvssServer datapoint can be different for both OPC UA servers in the redundant system, the OPC UA server on the second host automatically uses the _OPCUAPvssServer_2 datapoint.