在 OceanBase 集群部署中,关于 OBServer 节点和 ODP(OBProxy)的部署建议,以下说法正确的是?


A. ODP 必须部署在独立的服务器上,不能与 OBServer 部署在同一台机器上,否则会影响数据库性能。

B. ODP 作为代理层,是无状态的服务进程,可以通过负载均衡器(如 F5、LVS)进行高可用部署。

C. 一个 ODP 只能连接一个 OceanBase 集群,如果需要访问多个集群,必须部署多个 ODP 实例。

D. ODP 的部署数量必须与 OBServer 节点数量保持一致,否则无法实现负载均衡。

2 个赞

解析
ODP(OBProxy)是 OceanBase 的无状态代理服务,不持久化任何数据。多个 ODP 实例之间互不通信,可以独立部署。在生产环境中,通常部署多个 ODP 实例,并通过负载均衡器(如 F5、LVS、Nginx)对客户端提供统一的访问入口,实现 ODP 层的高可用和负载均衡。

  • A 错误 :ODP 可以与 OBServer 部署在同一台机器上 (例如在测试环境或资源受限的场景),生产环境建议独立部署以避免资源争抢,但不是强制要求。
  • B 正确 :ODP 是无状态服务,可配合负载均衡器实现高可用。
  • C 错误 :一个 ODP 实例可以连接多个 OceanBase 集群 ,通过配置 obproxy_config 中的 cluster_namers_list 区分不同集群。
  • D 错误 :ODP 数量与 OBServer 数量无需保持一致 。通常 ODP 的部署数量远少于 OBServer 数量(如 2-4 个 ODP 可服务于数十个 OBServer),由负载均衡器统一调度。
5 个赞

正确答案:B

6 个赞

这题我会,选B

4 个赞

B. ODP 作为代理层,是无状态的服务进程,可以通过负载均衡器(如 F5、LVS)进行高可用部署。

4 个赞

支持一下

2 个赞