ocp宕机对obproxy的影响性

【 使用环境 】生产环境
【 OB or 其他组件 】obproxy 4.2.1
【 使用版本 】
【问题描述】obproxy 使用的是ocp的 config_url地址,如果ocp宕机了,obproxy还能够正常提供服务吗

2 个赞

我们测试过可以继续提供服务,但是如果把obproxy本地缓存删了就不行了

1 个赞

如果 OBProxy 已经启动并加载了配置信息,它可以在短时间内继续提供服务,因为现有的配置信息已经被缓存到 OBProxy 的本地

如果 OCP 宕机时间较长,OBProxy 无法获取新的配置更新,可能会导致一些配置相关的功能失效,如动态路由调整等

3 个赞

如果一个ocp里面维护了2个集群,但是obproxy只连过其中一个集群,这个时候ocp宕机了,通过obproxy可以连接另一个集群嘛?obproxy会通过ob_config_url刷新所有集群的缓存嘛?

1 个赞

如果 OCP 宕机,OBProxy 无法从 OCP 获取新的配置信息,因此无法连接到未连接过的集群,ob_config_url是从OCP中获取的,如果OCP不能提供服务了,那么肯定也获取不到ob_config_url了,也没有刷新集群缓存一说了

1 个赞

那就是只会缓存连接过的集群?而不是通过ob_config_url缓存所有集群下的信息,大约多长时间会缓存到本地,也就是 rootservice_list.json文件

1 个赞

@论坛小助手

1 个赞

根据文档描述,当 OCP 宕机时,OBProxy 可以继续使用本地缓存的 rslist 信息提供服务。具体而言,OBProxy 从 OCP 拉取到 rslist 信息后,会保存在本地的 obproxy_rslist_info.json 文件中。如果 OCP 不可用,OBProxy 可以使用本地的 rslist 缓存文件继续提供服务。然而,这种方式存在一定的缺点:

  1. 缓存中只保存了访问过的集群的 rslist 信息,因此如果集群未访问过,则 OBProxy 无法提供服务。
  2. 缓存信息具有时效性,如果集群的 rslist 发生变化,OBProxy 无法感知。

关于您的问题,如果 OCP 宕机,OBProxy 只能继续提供已连接过的集群的服务。对于未连接过的集群,OBProxy 无法通过本地缓存的 rslist 信息连接。

此外,OBProxy 会定期从 OCP 拉取最新的 rslist 信息,更新本地缓存。具体的刷新频率没有明确说明,但可以根据实际情况调整 ignore_local_config 配置项来控制是否优先使用本地缓存。

更多信息请查看:

  1. ODP 服务高可用
  2. ODP 路由功能
  3. obproxy_config_server_url
2 个赞

学习了,OCP不能做成高可用么

1 个赞

OBProxy不重启就不影响。会缓存

1 个赞

学习了

1 个赞

不影响,不要部署在一起

1 个赞

学到了呀

可以高可用啊,生产环境一般都是3节点部署