简介
本文档介绍如何解决持续聊天室从Jabber消失的问题。
先决条件
要求
Cisco 建议您了解以下主题:
- 思科即时消息和在线状态服务(IM&P)
- Cisco Jabber
- 命令行界面 (CLI)
- SQL语言
使用的组件
本文档不限于特定的软件和硬件版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
场景和条件如下:
- 分配给IM&P节点A(可以是高可用性(HA)对中的数据库发布方或订用方节点)的所有用户都可以看到所有持续聊天室。
- 分配给IM&P节点B(可以是数据库发布者或HA对中的订阅者节点)的所有用户无法看到大多数或部分持久聊天室。
- 如果您从IM&P节点B取消分配任何用户并将其改为分配给节点A,则一旦用户注销并重新登录Jabber,他们就可以看到所有持续聊天室。
- 如果在IM&P节点A上发出show perf query class "Cisco XCP TC Room Counters" CLI命令,则可以看到列出的所有持久聊天室。
- 如果在IM&P节点B上发出show perf query class "Cisco XCP TC Room Counters" CLI命令,则无法看到列出的所有持久聊天室。
故障排除
重现问题并收集以下服务的Debug Level跟踪:
- 思科XCP文本会议管理器
- 思科XCP路由器
- 思科XCP连接管理器
从日志中,当用户被分配到节点B时,您可以看到Cisco XCP Text Conference Manager服务如何回复404 Not Found错误返回用户:
Line 3807: 16:12:44.634 |046f1b70| debug| DiscoGear.cpp:240 Handling disco#info query:
此外,请查找这些节点之间的“caliases”表中的任何错误或不匹配。通过在每个IM&P节点上发出run sql select * from tcaliases CLI命令,可以列出“tcaliases”表的内容。
输出类似于以下内容,并且两个节点上的输出大都相同:
admin:run sql select * from tcaliases
pkid tcalias isprimary fkprocessnode peerclusterid originalfkprocessnode
==================================== =================================================== ========= ==================================== ============= ====================================
043d4cad-2a9d-4295-b371-46641ae034f4 conference-2-StandAloneCluster64ba2.cisco.com t b7b69c1f-baf5-3ff4-7d26-8f56fd0d4d11 NULL b7b69c1f-baf5-3ff4-7d26-8f56fd0d4d11
88ac04fc-c619-4541-a526-e6ee6934e4bf conference-3-StandAloneCluster64ba2.cisco.com t ce4a26a8-8551-8baa-c34d-fb4fbf81ff08 NULL ce4a26a8-8551-8baa-c34d-fb4fbf81ff08
3c2d12d6-7e98-6d2b-3dc4-70016a4597b9 alias.cisco.com f b7b69c1f-baf5-3ff4-7d26-8f56fd0d4d11 NULL b7b69c1f-baf5-3ff4-7d26-8f56fd0d4d11
解决方案 1
一旦识别出此错误签名和行为,您就可以尝试通过重新启动两个IM&P节点上的Cisco XCP文本会议管理器服务来重新同步会议室
在两个节点上运行CLI命令:utils service restart Cisco XCP Text Conference Manager
重新启动Cisco XCP文本会议管理器时:
admin:utils service restart Cisco XCP Text Conference Manager
Do not press Ctrl+C while the service is restarting. If the service has not restarted properly, execute the same command again.
Service Manager is running
Cisco XCP Text Conference Manager[STARTING]
Cisco XCP Text Conference Manager[STARTING]
Cisco XCP Text Conference Manager[STARTED]
注意:重新启动Cisco XCP Text Conference Manager服务会暂时关闭Jabber用户的临时组聊天和持续聊天室。
之后,将Jabber用户分配给节点B注销并重新登录。这必须允许他们重新发现所有丢失的房间。
解决方案 2
如果在应用解决方法1后问题仍然存在,则问题是由节点B中的tc-1.xml文件(文本会议配置文件)引起的,该文件未与节点A中的文件对齐。
以下是解决该问题的步骤:
步骤1.在CM Administration > System > Presence Redundancy Groups中启用“高可用性”。

步骤2.启动节点B到节点A的手动故障切换。此时,caliases表和tc-1.xml文件必须使用当前高可用性状态进行更新。

步骤3.启动回退,使在线状态冗余组恢复正常/正常状态。caliases表和tc-1.xml文件现在已更新。

注意:在解决方法2上应用的操作会暂时导致Jabber用户从一个节点移动到另一个节点时断开与IM and Presence服务的连接。
之后,将Jabber用户分配给节点B注销并重新登录。此过程现在允许他们重新发现所有丢失的房间。
验证
当前没有可用于此配置的验证过程。