# WinCC 7.5 热备用冗余在工作组模式下的配置:详细步骤指南
一家陶瓷厂自 2013 年起运行基于 Siemens WinCC 7.0 的 SCADA 系统。硬件采用 HP ProLiant DL380p Gen8 服务器,搭载 Windows Server 2008R2 和 S7-300/400 控制器。目标:在不更换硬件的情况下,升级到 WinCC 7.5 SP2 Update 15(运行于 Windows Server 2012R2),实现两台服务器在工作组模式下的热备用冗余,并在客户端站实现无缝切换。
我们先进行过渡升级,然后将系统克隆到两台相同服务器上。专用骨干网络(10.10.10.x)用于服务器间心跳检测,主网络(192.168.0.x)负责数据同步和 PLC 通信。客户端运行 WinCC Runtime Advanced,支持自动服务器切换。
服务器和网络配置
| 组件 | 服务器 1 | 服务器 2 | 客户端 |
|------|----------|----------|--------|
| 名称 | SCADASERVER1 | SCADASERVER2 | SCADACLIENT0 |
| 操作系统 | Windows Server 2012R2 | Windows Server 2012R2 | Windows Server 2012R2 |
| WinCC | 7.5 SP2 Upd15 | 7.5 SP2 Upd15 | 7.5 SP2 Upd15 (客户端) |
| SQL | 2016 SP3 | 2016 SP3 | 2016 SP3 |
| 主网络 | 192.168.0.1 | 192.168.0.2 | 192.168.0.3 |
| 骨干网络 | 10.10.10.1 | 10.10.10.2 | — |
骨干网络采用直连方式监控伙伴状态,标签和归档同步则通过主网络进行。
步骤 1:SIMATIC Shell 配置服务器通信
WinCC 7.5 默认禁用远程通信。在 SIMATIC Shell 中启用:
- 终端总线(主网络 192.168.0.x)——用于客户端和 PLC。
- 冗余设置(骨干网络 10.10.10.x)——用于心跳检测。
在 Redundancy Editor 和 Shell 中分配 IP。服务器间相互识别,状态显示正常。
步骤 2:工作组模式下的 DCOM 配置
启动 Runtime 时出现错误 RedundancyAgent: 初始化远程通信失败。问题在于工作组模式下 DCOM 需要手动配置身份验证,无需域环境。
2.1. 管理员账户下的服务
修改 CCRedundancyAgent-Service 的账户:
- 打开
services.msc。 - 登录 → 此账户 →
.\\Administrator(两台服务器密码相同)。
LocalSystem 缺少 DCOM 所需的网络身份。
2.2. DCOM 权限
dcomcnfg → 组件服务 → 我的电脑 → 属性:
COM 安全 → 访问权限(限制 & 默认):
- Everyone: 允许本地/远程访问。
- ANONYMOUS LOGON: 允许本地/远程访问。
启动和激活权限(限制):
- Administrators: 全部允许。
- Everyone: 全部允许。
- ANONYMOUS LOGON: 全部允许。
启动和激活(默认):
- SYSTEM、Administrators、Administrator: 全部允许。
ANONYMOUS LOGON 用于发起连接,随后进行账户验证。
2.3. 默认属性
- 启用分布式 COM: ✓
- 默认身份验证级别: Connect。
- 默认模拟级别: Identify。
2.4. LocalAccountTokenFilterPolicy
UAC 会过滤本地 Administrator 令牌。禁用它:
New-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System" `
-Name "LocalAccountTokenFilterPolicy" -Value 1 -PropertyType DWORD -Force
重启 WinCC Runtime。
2.5. Hosts 文件用于名称解析
DCOM 依赖 NetBIOS 名称。在两台服务器的 C:\Windows\System32\drivers\etc\hosts 中添加:
10.10.10.1 SCADASERVER1
10.10.10.2 SCADASERVER2
192.168.0.1 SCADASERVER1
192.168.0.2 SCADASERVER2
在主网络适配器上禁用 TCP/IP 上的 NetBIOS(骨干网络保持启用)。
步骤 3:WinCC 冗余编辑器
创建冗余项目:
- 在 Server1 上新建项目。
- 冗余编辑器 → 添加服务器 → 指定 SCADASERVER2。
- 连接参数:心跳超时 5 秒,切换延迟 10 秒。
- 在 Server2 上同步 Runtime(Server1 为主)。
标签、归档和脚本自动复制。验证状态:主/备。
步骤 4:客户端配置
在 SCADACLIENT0 上:
- 安装 WinCC Runtime Advanced。
- 将两台服务器添加到项目。
- Runtime → 自动服务器选择:优先 Server1,回退 Server2。
我们测试了切换:关闭 Server1 后,客户端 15 秒内切换到 Server2,无数据丢失。
步骤 5:生产环境部署
实验室测试后,在工厂部署。每次更改前备份。与实时 PLC 同步顺利。密切监控 WinCC_Sys_XX.log 日志。
关键要点:
- 工作组模式下,DCOM 是瓶颈:80% 时间花在权限和令牌上。
- 骨干网络专用于心跳,非数据传输。
- Hosts 文件 + NetBIOS 调整解决 90% 名称解析问题。
- 在实验室用真实 PLC 测试切换。
- 两台服务器同步应用所有更改。
总耗时:实验室 2 周,生产 3 天。迁移成本低于域搭建。
— Editorial Team
暂无评论。