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 must run on both sides. In WinCC OA the OPC UA server redundancy is achieved using the non-transparent mode.
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 1. 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 data point 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 data point.