NSX Advanced Load Balancer 中的 SE 托管多个虚拟服务以处理特定的应用程序。可以将单个虚拟服务扩展到多个 SE,每个虚拟服务包含多个创建、更新和销毁的对象。其中的一些虚拟服务对象需要在所有 SE 中可用,以确保在扩展的应用程序实例中具有一致的运行方式。
当前系统使用控制器在参与的 SE 之间分发该信息。每个 SE 具有一个连接到控制器的本地 REDIS 实例,并通过控制器在 SE 之间分配和同步这些对象。
该方案在规模、收敛时间等方面存在限制。在没有控制器参与的情况下,SE 执行该分配和同步。SE-SE 持久性同步是通过新的分布式架构完成的。支持 VMware 和 LSC 平台。该信息是在 9001
端口上传输的。需要在 SE 之间打开该端口。
有关端口详细信息的更多信息,请参见端口和协议。
以下是更改默认端口的 CLI 命令:
configure serviceenginegroup <> objsync_port
禁用该功能的 CLI 命令如下所示:
configure serviceenginegroup <> no use_objsync
以下是几个调试命令:
命令 |
描述 |
---|---|
|
Keyval 持久性摘要 |
|
Keyval 持久性的 Objsync 视图摘要 |
|
池持久性摘要 |
|
池持久性对象的 Objsync 视图摘要 |
要通过“objsync_port”对端口
9001
进行任何更改,您需要更改安全组、ACL 等。请参见“NSX Advanced Load Balancer 在管理通信中使用的协议端口”。在 Azure 中,对于 SE 对象同步,您需要配置一个小于
4096
的端口。SE 间数据分发(例如 IP 持久性、Cookie 持久性、KV 持久性等)是通过新的基础架构(称为 ObjSync)完成的。用于通信的默认端口是端口 9001,可以通过服务引擎组属性中的
objsync_port
配置该端口。支持的云 = 所有云
限制:需要在安全组或 ACL 上为相应云环境打开
objsync_port
。