3、部署环境规划:服务器选型、操作系统要求、网络拓扑设计、高可用方案

好,咱们进入第三章。部署环境规划,这步要是没做好,后面运维起来会非常痛苦。我见过太多项目,前期随便找台机器就上了,结果一到生产环境就各种卡顿、崩溃,最后全得重来。说白了,环境规划就是给机器人盖房子,地基得稳。

3.1 服务器选型:别光看核数,要看场景

服务器选型,很多人第一反应就是CPU核数越多越好。其实不然。你得先想清楚,你的机器人是干什么的?

  • 流程密集型:比如大量数据抓取、报表生成。这类任务吃CPU和内存。我建议至少4核8G起步,并发多的话上8核16G。
  • UI交互密集型:比如操作SAP、浏览器。这类任务更吃内存和磁盘IO。内存建议16G以上,磁盘用SSD。我曾经有个项目,机器人操作ERP时频繁卡死,最后发现是机械硬盘的锅,换成SSD后问题全消。
  • 混合型:既有计算又有UI操作。那就得综合考量,CPU、内存、磁盘都不能短板。

我的个人习惯:生产环境统一用物理机或高性能云主机,别用低配虚拟机。虚拟机资源争抢严重,机器人跑起来像老爷车。

场景 CPU 内存 磁盘 推荐机型
轻量级(<5个机器人) 4核 8G 256G SSD 入门级云主机
中型(5-20个机器人) 8核 16G 512G SSD 中配物理机
大型(20+机器人) 16核以上 32G以上 1T SSD 高性能服务器

3.2 操作系统要求:Windows是主流,但别乱装

RPA机器人,尤其是操作桌面应用的,Windows Server是绝对主流。为什么?因为很多企业软件只支持Windows。你想想看,一个银行的核心系统,能在Linux上跑吗?

操作系统版本建议

  • Windows Server 2019/2022 数据中心版或标准版
  • Windows 10/11 专业版(仅限开发环境)

注意:千万别用Windows Server Core(无GUI版本)。RPA机器人需要图形界面,没有桌面环境,它连个按钮都点不了。

安装完系统后,有几个关键配置必须做:

  1. 关闭自动更新:机器人跑着跑着突然重启更新,那画面太美我不敢看。
  2. 开启远程桌面:方便运维人员远程排查。
  3. 安装必要运行库:比如.NET Framework 4.8、Visual C++ Redistributable。
  4. 配置防火墙:只开放必要端口,比如RPA控制台用的443、机器人通信用的端口。

避坑指南:我曾经遇到过一台服务器,装完系统后没打补丁,结果被勒索病毒盯上了。从那以后,我每次部署前都会先打全补丁,再关闭自动更新。这个顺序别搞反了。

3.3 网络拓扑设计:别让网络成为瓶颈

网络拓扑设计,说白了就是让机器人、控制台、数据库之间能顺畅通信。我见过最离谱的案例,机器人和控制台之间隔了三个防火墙,每次心跳包都要等5秒,机器人直接判定为离线。

典型拓扑结构

  • 控制台服务器:部署在中心机房,负责调度、监控、日志。
  • 机器人执行机:可以分布在多个网段,甚至跨地域。
  • 数据库服务器:独立部署,别跟控制台挤在一起。
  • 文件服务器:存放脚本包、配置文件、日志文件。

网络要求

  1. 控制台与机器人之间:延迟 < 50ms,丢包率 < 0.1%。
  2. 控制台与数据库之间:建议同机房,延迟 < 1ms。
  3. 机器人访问目标系统:确保网络可达,端口开放。

我建议:如果机器人需要访问内网系统,最好用专线或VPN。别走公网,不安全也不稳定。

3.4 高可用方案:别让单点故障毁了你的项目

高可用,说白了就是别让一个机器挂了,整个RPA系统都瘫痪。我刚开始做RPA时,觉得高可用是锦上添花,直到有一次控制台服务器硬盘坏了,所有机器人失联,业务停了整整一天。嗯,从那以后我再也不敢忽视高可用了。

常见高可用方案

3.4.1 控制台高可用

  • 主备模式:一台主控制台,一台备用。主挂了,备自动接管。我用的是Keepalived + Nginx,简单可靠。
  • 负载均衡模式:多台控制台同时工作,通过负载均衡器分发请求。适合大型部署。

3.4.2 机器人高可用

  • 机器人集群:多台机器人执行相同的任务,一台挂了,其他机器自动顶上。
  • 热备机器人:专门留一台空闲机器人,随时准备接管故障机器人的任务。

3.4.3 数据库高可用

  • SQL Server Always On:微软官方方案,支持自动故障转移。
  • MySQL主从复制:成本低,但需要手动切换。

我的经验:数据库高可用一定要做。RPA系统里,数据库是核心中的核心。我见过一个项目,数据库挂了,所有机器人的状态、日志、调度信息全丢了,恢复起来简直噩梦。

高可用配置示例(伪代码)

# 控制台主备配置
主控制台: 192.168.1.10
备控制台: 192.168.1.11
虚拟IP: 192.168.1.100

# 机器人配置
机器人1: 192.168.2.10
机器人2: 192.168.2.11
机器人3: 192.168.2.12

# 数据库配置
主数据库: 192.168.3.10
备数据库: 192.168.3.11

最后,别忘了做压力测试。我习惯在部署前,用脚本模拟100个机器人同时运行,看看系统扛不扛得住。扛不住就加资源,别等到上线了再手忙脚乱。

好了,环境规划这块就聊到这儿。下一章咱们聊聊具体的部署流程,到时候我会手把手教你搭一套完整的RPA环境。