High availability needs to be configured for OceanBase Database Proxy (ODP) to ensure service continuity. User requests are firstly sent to ODP, and if ODP fails, the requests cannot be properly handled. ODP also copes with OBServer node failures and performs fault tolerance operations.
As ODP does not have any persistent data, it accesses OceanBase Database to obtain the required data. Therefore, ODP failures do not cause data loss. Multiple ODP instances form a cluster to provide services, with F5 or another load balancer determining the specific ODP instance for handling requests. If an ODP instance fails, the load balancer automatically removes the instance to prevent new requests from being forwarded to it.
ODP monitors the cluster status in real-time, checking the health status of each OBServer node and the real-time location of each partition by obtaining the cluster system table. Additionally, ODP monitors the service status of OBServer nodes based on network connections. When ODP detects exceptions, it marks the corresponding OBServer nodes as failed and switches services to functioning OBServer nodes.