影刀RPA新手教程:机器人管理与多机部署入门
流程在单机上跑顺了之后,几乎每个用影刀RPA做自动化的人都会遇到同一堵墙:流程越来越多,一台电脑排不开;夜里任务挂了没人管;几台机器各跑各的,执行记录散落各处,出了问题挨台登录排查。我第一次管三台机器的时候,每天早上要远程登录三台电脑各看一遍日志,光巡检就花掉半小时,直到用上机器人管理和控制台调度才解放出来。
这篇讲的就是影刀RPA的多机部署入门:什么是一个"影刀机器人",怎么把几台电脑纳入统一管理,怎么在控制台给机器人排任务、看执行记录。这套体系涉及企业版能力和账号权限,我会把每个前提条件说清楚,免得你兴冲冲配置半天卡在权限上。
先说核心概念:一个企业高级账号,登录客户端,开启调度模式,即成为一个影刀机器人,受到云端控制台控制,接收和执行控制台发布的计划任务。机器人不是额外的软件,就是你装好的影刀客户端换了一种工作模式。
认识影刀机器人:从客户端到云端受控
理解机器人管理的第一步,是理解"调度模式"这个开关。平时你的影刀客户端是自主模式:自己写流程、自己跑、自己配计划任务。切换成调度模式后,客户端交出控制权——不可自主运行应用,只接受调度中心统一分配的计划任务。
切换方法有两种,官方文档都写了:
- 方法一:在任务栏右键影刀图标,点击「工具」,切换为「调度模式」
- 方法二:在影刀客户端 → 个人头像 → 工具 → 切换为调度模式
弹出的对话框点击"确定"即进入调度模式。切换之后,这台电脑在控制台的机器人列表里出现,可以被分配任务了。
但这里有个硬前提:调度是企业版能力。官方文档写明:企业版管理员或分配权限的高级账号(普通账号不可在控制台集中调度管理),企业下的高级账号登录影刀客户端,才可设置「调度模式」。所以多机部署的第一步不是装软件,是确认你有企业版账号体系,且你的账号被管理员分配了调度权限。
安装环节本身没有特殊性:官网下载客户端,选择安装路径,点击立即安装,浏览器插件按提示装好。每台要纳入管理的电脑都走一遍这个流程,然后用各自的企业高级账号登录。
机器人管理:控制台的统一视角
所有机器人添加好之后,在「影刀RPA控制台 → 机器人管理」中查看、管理企业下所有的影刀机器人。这个列表就是你的"机器人总览大屏"。
机器人有三种状态,含义必须分清:
| 状态 | 含义 | 能否接新任务 |
|---|---|---|
| 空闲 | 无计划执行 | 可直接执行,不需要排队 |
| 运行中 | 正在运行计划任务 | 继续分配会排队 |
| 离线 | 断网、退出调度模式或退出客户端 | 无法执行,任务排队等待 |
离线是新手最容易忽略的状态:机器人电脑关机、断网、客户端退出、或者有人手贱切回了自主模式,都会导致离线,任务不会被执行而是排队挂着。我踩过一次:同事白天要用自己的电脑办公,随手把调度模式关了,当晚的采集任务全部排队到第二天早上,数据延迟了一天。
列表里可以切换预览模式和列表模式,默认显示机器人账号名和主机名,可以对主机名添加备注方便查找,也可以按状态和分组筛选。点击空闲或运行中的机器人小图,可以查看大图——该图为主机界面截图,可刷新查看最新状态,相当于给每台机器人装了个监控探头。
机器人分组:多机管理的第一课
机器人一多,分组就是刚需。官方的场景描述是:机器人较多、机器人分不同业务场景时,可对机器人分组,一个机器人可在多个分组内。
我的分组方式按业务线来:电商采集组(跑淘宝、拼多多采集的三台机器)、数据处理组(跑清洗汇总的一台机器)、临时任务组(机动)。分组之后在机器人列表按分组查看,更重要的是调度新建计划时可以直接选择一个分组,即选中该分组下所有机器人,不用逐台勾选。
分组还有个进阶价值:配合执行策略实现负载分摊。调度任务支持两种机器人选择范围——assign指定具体机器人,group通过分组指定范围;对应的执行策略有"随机空闲机器人"(any)和"全部机器人执行"(all)。比如同一套采集应用要跑五个店铺,配成选分组+随机空闲机器人,任务会自动分给组里空着的机器,不需要你手动算哪台闲哪台忙。
任务管理:给机器人排活的正确姿势
机器人就位后,就可以添加任务了。路径:影刀RPA控制台 → 任务管理 → 常规任务计划 → 新建常规任务。新建时四个配置点:
- 选择应用:计划中可选择企业下所有账号的已发布应用,可选择多个
- 选择机器人:选择要执行计划的机器人,可选择多个
- 执行方式:设置周期执行或定时执行一次
- 执行周期:例如每周一10:00执行,可以通过Crontab表达式写更精细的周期
特别提醒第一个配置点:应用必须先"发布"才能被调度。本地调试完的流程要点发布到企业应用里,控制台的任务计划才选得到它。我第一次配置时选不到自己写的流程,排查半天才发现是压根没发布。
Crontab表达式举个实用的例子,每天凌晨1点跑采集、每15分钟跑一次监控、工作日晚上8点跑汇总,分别对应不同的表达式写法,配置时注意时区和机器实际开机时间,机器人离线时定时任务不会执行。
计划建好后,在「常规任务计划」中可查看:包含应用、触发方式、执行时间、可运行账号、执行机器人/组和控制操作。点击操作列「记录」按钮,一键跳转到该计划的执行记录。
执行记录与运行详情:出问题先看这里
任务建好后,达到执行时间,在「任务管理 → 执行记录」中可以清晰看到任务执行的详情,所有执行记录统一放在执行记录菜单,包括API执行的记录。
执行记录的价值在于三点:查得到(什么时间、哪台机器人、跑了什么应用)、看得清(每个应用的运行状态和详情)、救得回(对执行出异常的计划,可以查看原因、重新运行异常的应用)。
应用运行状态有一套标准枚举,看懂它排查效率翻倍:
| 状态码 | 含义 |
|---|---|
| waiting | 等待调度(机器人不空闲或离线时常见) |
| running | 运行中 |
| finish | 正常结束 |
| error | 异常 |
| stopped | 已停止 |
任务里应用大量卡在waiting,优先查机器人状态是不是离线或者被长任务占着;成批error,大概率是目标页面改版或登录态失效,去机器人电脑上人工看一眼。这套"记录→状态→定位"的排查链路,是多机部署后日常运维的主干道。
系统联动与执行策略:让多机协作更聪明
任务计划还有几个精细配置,直接决定多机协作的智能程度。异常执行策略有四种:停止执行(terminate)、继续执行(continue)、重试(retry)、重试-继续执行(retry_continue)。我给采集任务统一配retry_continue:单店采集失败重试一次,重试还挂就跳过继续跑下一家,保证一次计划里一个异常不拖垮全局。这个思路和流程内部的Try-Catch异常处理是同构的——控制台层面管机器间的容错,流程内部管指令级的容错,两层都要有。
定时器类型也很丰富:定时模式(固定时间)、分钟、小时、天、周、月、cron周期模式、手动(manual)。夜间任务建议错峰,五台机器别都排整点,错开几分钟避免互相抢资源。
联动方面,任务执行结果可以接到飞书、企微通知上:流程末尾加发送消息指令,把当日执行摘要推送到群;配合执行记录的回调能力,应用运行结束后结果数据还能回传到你自己的系统。多机部署后这套通知体系是刚需,不然你巡检还是得挨台看——绕一圈又回到解放前。
进阶:用API查机器人状态
机器人多了之后,可以用开放API做自动化巡检。查询机器人信息的接口是POST请求,地址为api.yingdao.com下的oapi/dispatch/v2/client/query,请求头带鉴权Token,请求体填机器人账号或机器人uuid,二选一。
{"accountName":"boyi@csqy"}响应里最有用的字段是status(机器人状态)和clientIp(客户端ip)。官方文档还提醒了一个细节:机器人移出后重新切换调度模式,机器人uuid会生成新的,所以建议用机器人名称查询,别依赖uuid做长期引用。把"定时查机器人状态→发现离线→发飞书告警"串成一个小流程,多机运维的自动化程度就又上一档。
再往上还有远程控制桌面(企业版专属):在控制台点击目标机器人,点右上角"远程控制模式",通过VNC直接在网页上操作那台电脑。用之前记得在机器人电脑上运行setup_vnc.bat脚本授权并重启计算机,否则第一次连接会弹防火墙警报。一台机器人同一时间只能被一个远程会话控制,超过5分钟无操作系统会回收会话。
十二模块视角下的多机部署定位
多机部署不是孤立技能,它和其他模块的关系值得理一遍,帮你判断自己现阶段该投入多少:
| 模块 | 与多机部署的关系 |
|---|---|
| 认识影刀/安装 | 每台机器标准安装+插件,前提动作 |
| 元素定位四合一 | 与部署无关,流程内功 |
| 变量与数据类型 | 与部署无关,流程内功 |
| 流程控制 | 与部署无关,流程内功 |
| 网页自动化 | 部署前流程必须单机跑稳 |
| 数据处理 | Excel路径注意多机目录一致性 |
| 鼠标键盘图像 | 机器人电脑需保持非锁屏可用状态 |
| 进阶技能 | API查询机器人状态、HTTP回调 |
| 平台实战 | 按平台拆分任务分给不同机器人 |
| 系统联动 | 通知+告警是多机运维刚需 |
| 工程化规范 | 应用发布、命名、分组规范 |
| 速查表 | 离线排队、权限不足是高频坑 |
注意表格里反复出现的逻辑:先把单机流程做稳,再上多机。元素定位、流程控制、网页自动化这些内功不牢,部署出去的是一堆会挂的任务;多机部署放大的是稳定流程的价值,放大的同样还有烂流程的麻烦。
常见问题速查:多机部署的坑
| 现象 | 原因与解法 |
|---|---|
| 任务一直显示waiting | 机器人离线或正忙,去机器人管理看状态,离线就重新连上并切调度模式 |
| 切调度模式后本地流程跑不了 | 调度模式下不可自主运行应用,属正常设计,临时要跑先切回自主模式 |
| 控制台选不到我写的流程 | 应用未发布,本地发布到企业应用后再配置计划 |
| API查询返回的uuid失效 | 机器人重新切换调度模式后uuid会变,改用机器人账号名称查询 |
| 远程控制弹防火墙警报 | 未运行setup_vnc.bat,运行脚本并重启计算机 |
| 夜间任务没执行 | 机器人电脑关机或休眠导致离线,任务排队未跑,检查电源策略 |
多机部署的配置清单、Crontab排班模板和机器人巡检流程源码,我放在代码仓库 home.linyan.cloud,可以直接参考改造,照着清单从零把三台机器纳入统一管理,大概一个下午就能搞定。
延伸阅读建议:官方文档里「调度管理」「机器人管理」「任务管理」三篇是多机部署的权威资料,建议按这个顺序读;配好之后翻一遍「枚举值说明」,把状态码和执行策略背熟,日常运维全靠它们。练手顺序建议:先单机切调度模式玩明白,再分组、再排任务,最后接通知和API,一步一步来,每步验证通过再进下一步。
#影刀RPA #RPA自动化 #机器人管理 #多机部署 #定时任务
作者:林焱