You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Rundeck v5.2.0中获取NODE1输出并在自身执行命令发送至NODE2

在Rundeck v5.2.0中跨节点传递作业输出并发送请求的实现方案

实现思路

分两步完成:先在NODE1上执行脚本并将输出捕获到Rundeck变量中,再在Rundeck服务器本地调用PowerShell脚本,把变量内容发送至NODE2。

具体步骤

1. 配置NODE1脚本步骤并捕获输出

  • 打开Rundeck新建/编辑目标作业,添加「执行脚本」步骤
  • 节点选择NODE1,脚本类型选「PowerShell」
  • 填入你的业务脚本,确保最后输出True或False(示例:Write-Output (Get-YourConditionCheckResult))
  • 进入步骤高级选项,勾选「将输出存储到数据变量」,设置变量名为node1_output(可自定义)

2. 配置Rundeck本地的请求发送步骤

  • 添加新的「执行脚本」步骤,节点选择Rundeck服务器(可填localhost或对应服务器节点标签),脚本类型选「PowerShell」
  • 编写发送请求的脚本,引用第一步捕获的变量:
# 获取NODE1的输出结果
$nodeResult = "${data.node1_output}"

# 发送请求到NODE2,根据实际接口调整Uri、请求方法和参数格式
Invoke-WebRequest -Uri "http://NODE2/your-target-endpoint" -Method Post -Body @{status = $nodeResult} -ContentType "application/x-www-form-urlencoded"

注意事项

  • 确保Rundeck服务器的PowerShell环境具备访问NODE2的权限(如防火墙放行、接口认证配置等)
  • 若NODE1的脚本输出包含多余内容,需在脚本中过滤,仅保留True/False(示例:Write-Output ($yourResult.ToString().Trim()))
  • 变量引用需严格遵循Rundeck语法:作业级数据变量用${data.变量名}调用

内容的提问来源于stack exchange,提问作者aristosv

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 19:47:03