目录

简介

先决条件

要求

使用的组件

配置

预配置

网络图

CMS核心和边缘配置

验证

故障排除

相关信息

简介

本文档介绍如何配置思科Meeting Server (CMS)边缘。

先决条件

要求

Cisco建议您了解以下CMS 3.X组件：

- Webbridge 3

- 呼叫

- C2

- 防火墙

- Turn服务器

使用的组件

本文档中的信息基于以下软件和硬件版本：

- CMS3.X开放式虚拟设备(OVA)

- Chrome浏览器122.0.6261.112

- Firefox浏览器123.0.1 (20240304104836)

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

配置

预配置

1. 配置网络时间协议(NTP)服务器：

最好在CMS边缘和核心服务器上配置相同的NTP服务器。

2. 配置域名服务器(DNS)：

1. 为CMS核心服务器配置内部DNS（内部DNS CMS Edge A记录指向CMS Edge内部IP地址；如果无法配置，则必须配置两个CMS Edge A记录，一个指向CMS内部IP地址，另一个指向外部IP地址）。

2. 为CMS边缘服务器配置外部DNS。外部DNS A CMS记录指向CMS Edge的外部IP地址。

3. CMS核心使用内部CMS Edge A记录进行连接。

4. 公共用户通过公共IP地址访问CMS Edge。

5. 用户域：cms.demo：

a. CMS Edge的记录：

- edge.cms.demo (internal user login with this A record)

- edge.cms.demo (public user also use same A record from internet, you could specify the different external A record)

b. CMS核心记录：

core.cms.demo

6. 制作CMS核心和边缘服务器认证：

a.制作认证

- cmscore-fullchain.cer （所有服务都涉及实验中的fullchain证书，您也可以涉及服务器证书）

- cmsedge-fullchain.cer （所有服务都涉及实验中的fullchain证书，您也可以涉及服务器证书）

b.制作两台服务器的fullchain认证。

- cmscore-fullchain.cer （此证书包括根证书）

- cmsedge-fullchain.cer （此证书包括根证书）

网络图

CMS核心和边缘配置

1. 激活CMS核心服务器相关服务。

a.配置信号网络。

激活网络接口：

ipv4 a add 10.124.56.224/24 10.124.56.1

b.激活Callbridge组件。

callbridge listen a

callbridge certs core.key cmscore-fullchain.cer

callbridge trust c2w cmsedge-fullchain.cer (if not, which result in WebRTC failed)

callbridge enable

2. 激活CMS边缘服务器相关服务：

a.配置两个网络接口。

注意：“b”是公共网络接口，a是内部网络接口。

- 激活网络a、网络b

- 将默认网关配置为b（它是公共网络接口）

- 配置内部网关a

ipv4 a add 10.124.144.80/24 10.124.144.1

ipv4 b add 10.124.42.112/24 10.124.42.1

ipv4 b default

b.激活车削元件。

turn certs edge.key cmsedge-fullchain.cer

turn listen a b

turn credentials <username> <password> <cms.demo> (cms.demo is actual domain deployment)

turn public-ip x.x.x.x

turn tls 447

turn enable

注意：

1. x.x.x.x 是NAT映射公有IP地址；如果没有NAT映射，则不需要配置此步骤。

1. 端口可以自行定义，请参阅相关的CMS指南。

c.激活webbridge3组件。

webbridge3 https certs cmsedge.key cmsedge-fullchain.crt (cmsedge-fullchain.crt ,please refer to CMS fullchain document)

webbridge3 https listen b:445 (b is public network interface , this step just provide public users WebRTC service)

webbridge3 https listen a:445 b:445 (this step could provide both internal and external WebRTC service, but need to edge.cms.demo has two A records on internal/external DNS servers.)

webbridge3 c2w certs edge.key cmsedge-fullchain.crt

webbridge3 c2w listen a:6000 (a is internal network interface, 6000 is self-defined port which need to keep the same with the below Webbridge URL)

webbridge3 c2w trust cmscore-fullchain.cer (if no this step, result in WebRTC failed)

webbridge3 enable

3. 建立相关组件之间的通信。

a. Callbridge <—> Turn（公共媒体服务）

b. Callbridge <—> WebBridge3（WebRTC服务）

在CMS核心上配置turn和webbridge3：

a.配置Callbridge和Turn之间的连接，并激活公共媒体服务。

登录Webadmin GUI，导航到Configuration > General。

b.配置Callbridge和Webbridge3之间的连接，并激活WebRTC服务。

通过CMS上的API创建Webbridge，然后添加C2W连接，例如，c2w://edge.cms.demo:6000（端口必须与Webbridge3服务配置保持相同）。

restart Callbridge component and apply all configuration

callbridge restart (go to CLI)

4. 启用防火墙功能并禁用公共22端口(ssh)。

firewall a default allow ( a is the external/public network interface)

firewall a deny 22

firewall a enable

验证

1. 确认所有服务均在CMS核心和边缘上运行：

CMS核心服务状态：

CMS> webadmin Enabled : true TLS listening interface : a TLS listening port : 443 Key file : core.key Certificate file : cmscore-fullchain.cer HTTP redirect : Disabled STATUS : webadmin running CMS> callbridge Listening interfaces : a Preferred interface : none Key file : core.key Certificate file : cmscore-fullchain.cer Address : none C2W trusted certs : cmsedge-fullchain.cer Callbridge cluster trusted certs : none Callbridge trust branding certs : none UCM trusted certs : none UCM verification mode : disabled IMPS trusted certs : none IMPS verification mode : disabled WC3 JWT Expiry in hours : 24

CMS边缘服务状态：

CMS> webbridge3 Enabled : true HTTPS listening ports and interfaces : a:445 b:445 HTTPS Key file : edge.key HTTPS Full chain certificate file : cmsedge-fullchain.cer HTTPS Frame-Ancestors : none HTTP redirect : Disabled C2W listening ports and interfaces : a:6000 C2W Key file : edge.key C2W Full chain certificate file : cmsedge-fullchain.cer C2W Trust bundle : cmscore-fullchain.cer Meetingapps address : none Meetingapps port : none Audio priority flag : Enabled Beta options : none CMS> turn Enabled : true Username : admin Password : Cisco.123 Short term credentials : disabled Shared secret : none Realm : cms.demo Public IP : none High Capacity Mode : enabled Relay address : 10.124.144.80 TLS port : 447 TLS cert : cmsedge-fullchain.cer TLS key : edge.key TLS bundle : none Listen interface a Listen interface b

2. 验证webrtc登录状态并加入会议：

故障排除

1. CMS Edge：您可以看到webrtc参与者“Thomas”加入通话。参与者ID：fcfe42f4-ac94-4ab2-a14a-f4165ec960a7。

可以在CMS核心日志文件中找到此参与者ID。

Feb 23 09:02:21.588 local0.info CMS client_backend: INFO : WebApp Audit : Session: a77d94b1-ba12-4e4e-8f3e-86b3e9c1de8f : Participant Thomas performed action of join call

Feb 23 09:02:21.599 local7.info CMS 3b8086e0e5a0 wb3_frontend: [Join call:fcfe42f4-ac94-4ab2-a14a-f4165ec960a7] 10.140.248.52 - - [23/Feb/2024:09:02:21 +0000] status 200 "POST /api/join HTTP/1.1" bytes_sent 1003 http_referer "https://edge.cms.demo:445/" http_user_agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0" toupstream 192.0.2.2:9000: upstream_response_time 0.008 request_time 0.007 msec 1708678941.598 upstream_response_length 1027 200

Feb 23 09:02:21.633 user.info CMS client_backend: INFO : WebSocket : Got authenticated JWT for guest1573064743 callbridge 320d02c3-7af5-4e4f-b51c-9a7a4dc0b8b9 call 04704220-95a8-4d36-a6ec-3d4d789d9250 participant fcfe42f4-ac94-4ab2-a14a-f4165ec960a7 tracing 0

Webrtc参与者离开呼叫：

Feb 23 09:02:37.982 local0.info CMS client_backend: INFO : WebApp Audit : Session: a77d94b1-ba12-4e4e-8f3e-86b3e9c1de8f : Participant Thomas(fcfe42f4-ac94-4ab2-a14a-f4165ec960a7) performed action of leave call

2. CMS核心：紫色线是会议ID，其他参与者加入此会议时具有相同的会议ID。蓝线是特定用户ID：guest1573064743。

Feb 23 09:02:21.594 user.info CMS host:server: INFO : guest login request 1450660605: resolution in progress

Feb 23 09:02:21.594 user.info CMS host:server: INFO : guest login request 1450660605: call ID lookup scheduled

Feb 23 09:02:21.594 user.info CMS host:server: INFO : guest login request 1450660605: resolution in progress

Feb 23 09:02:21.597 user.info CMS host:server: INFO : guest login request 1450660605: credential storage scheduled (queue length: 1)

Feb 23 09:02:21.597 user.info CMS host:server: INFO : created guest account with user ID "guest1573064743"

Feb 23 09:02:21.597 user.info CMS host:server: INFO : guest login request 1450660605: credential storage executed

Feb 23 09:02:21.597 user.info CMS host:server: INFO : guest login request 1450660605: credential storage in progress

Feb 23 09:02:21.598 user.info CMS host:server: INFO : guest login request 1450660605: successfully stored credentials

Feb 23 09:02:21.598 user.info CMS host:server: INFO : instantiating user "guest1573064743"

Feb 23 09:02:21.598 user.info CMS host:server: INFO : conference db0fafc3-ad47-43bd-bcbd-47886416451b: locked due to lack of lock consensus

Feb 23 09:02:21.598 user.info CMS host:server: INFO : conference db0fafc3-ad47-43bd-bcbd-47886416451b: lock state has changed to locked

Feb 23 09:02:21.598 user.info CMS host:server: INFO : API "9999" Space GUID: 58ef98d1-5181-4e63-a386-4b60597be7e4 <--> Call Correlator GUID: 5d031ae1-1c94-44ec-afd4-fa0e76230e3f<--> Internal GUID: db0fafc3-ad47-43bd-bcbd-47886416451b

Feb 23 09:02:21.598 user.info CMS host:server: INFO : unable to apply logo (space '9999') -- no license

Feb 23 09:02:21.599 user.info CMS host:server: INFO : conference db0fafc3-ad47-43bd-bcbd-47886416451b: lock state has changed to unlocked

Feb 23 09:02:21.599 user.info CMS host:server: INFO : API call leg fcfe42f4-ac94-4ab2-a14a-f4165ec960a7 in call db0fafc3-ad47-43bd-bcbd-47886416451b (API call 04704220-95a8-4d36-a6ec-3d4d789d9250)

Feb 23 09:02:21.599 user.info CMS host:server: INFO : conference db0fafc3-ad47-43bd-bcbd-47886416451b has control/media GUID: bf286660-6e5d-403f-8926-514d385dad3c

Feb 23 09:02:21.599 user.info CMS host:server: INFO : conference db0fafc3-ad47-43bd-bcbd-47886416451b named "9999"

Feb 23 09:02:21.601 user.info CMS host:server: INFO : new session created for user "guest1573064743"

Feb 23 09:02:21.603 local0.info CMS postgres[54639]: [6-1] 2024-02-23 09:02:21.603 UTC [54639] LOG: could not send data to client: Broken pipe

Feb 23 09:02:21.603 local0.err CMS postgres[54639]: [7-1] 2024-02-23 09:02:21.603 UTC [54639] FATAL: connection to client lost

Feb 23 09:02:21.768 user.info CMS host:server: INFO : call 11: allocated for guest1573064743 / "Thomas" conference participation (Firefox)

Feb 23 09:02:21.768 user.info CMS host:server: INFO : call 11: configured - API call leg fcfe42f4-ac94-4ab2-a14a-f4165ec960a7

Feb 23 09:02:21.768 user.info CMS host:server: INFO : call 11: ActiveControlState change, unknown -> unknown

Feb 23 09:02:21.769 user.info CMS host:server: INFO : call 11: setting up combined RTP session for DTLS (combined media and control)

Feb 23 09:02:21.770 user.info CMS host:server: INFO : call 11: ActiveControlState change, unknown -> inactive

Feb 23 09:02:21.770 user.info CMS host:server: INFO : call 11: ActiveControlState finality change (inactive, final=1)

Feb 23 09:02:21.770 local0.info CMS host:server: INFO : participant "guest1573064743" joined space 58ef98d1-5181-4e63-a386-4b60597be7e4 (9999)

Feb 23 09:02:21.770 user.info CMS host:server: INFO : participant "guest1573064743" (fcfe42f4-ac94-4ab2-a14a-f4165ec960a7) joined conference db0fafc3-ad47-43bd-bcbd-47886416451bvia WB3

Feb 23 09:02:21.772 user.info CMS host:server: INFO : call 11: starting DTLS combined media negotiation (as initiator)

Webrtc用户离开呼叫：guest1573064743离开空间ID：58ef98d1-5181-4e63-a386-4b60597be7e4 (9999)。

Feb 23 09:02:37.943 user.info CMS host:server: INFO : user "guest1573064743": deactivating due to session resource teardown

Feb 23 09:02:37.943 user.info CMS host:server: INFO : call 11: tearing down ("guest1573064743" conference media)

Feb 23 09:02:37.943 user.info CMS host:server: INFO : call 11: destroying API call leg fcfe42f4-ac94-4ab2-a14a-f4165ec960a7

Feb 23 09:02:37.943 local0.info CMS host:server: INFO : participant "guest1573064743" left space 58ef98d1-5181-4e63-a386-4b60597be7e4 (9999)

Feb 23 09:02:37.943 user.info CMS host:server: INFO : removing guest account 'guest1573064743' (name 'Thomas') on call drop

Feb 23 09:02:37.943 user.info CMS host:server: INFO : destroying guest account with user ID "guest1573064743"

Feb 23 09:02:37.944 user.info CMS host:server: INFO : conference bf286660-6e5d-403f-8926-514d385dad3c destroyed

相关信息

- 思科-会议服务器-3-8-单组合服务器部署

- Cisco-Meeting-Server-3-8-Single-Split-Server-Deployment

- 思科技术支持和下载