一、为什么你需要一个“能远程控制”的PDU?
先说说我们做机房管理时经常遇到的尴尬场景:
半夜两点,公司VPN连不上,你第一反应是“服务器是不是死机了”。但实际情况往往是——那台跑了三年的软路由又卡住了,只需要把它断电重启一下就能解决。问题是,机房在郊区,开车过去要40分钟……
这就是为什么我们需要一个能远程控制、能分路独立管理的智能PDU。
芯步的8位智能分控PDU,说白了就是一个带8个插孔的智能排插,但每个插孔都可以单独控制通断。你可以把它理解为“8个可以远程按下的开关”。接入你自己的系统后,点一下按钮就能重启某台设备,再也不用来回跑腿了。
二、准备工作:硬件和账号
在动手之前,你手头需要这几样东西:
芯步8位智能分控PDU硬件——就是那台设备本身
2.4G WiFi网络——注意,不支持5G频段,这是物联网设备的常规设定,记得连对WiFi
一个芯步账号——去官网注册一下就行,免费的
把设备从箱子里拿出来后,先别急着往机柜里装,先在办公桌上完成配网和调试,确认能控制了再上架。
三、配网:把PDU连上WiFi
配网这一步,官方提供了两种方式——电脑端和手机小程序端。我强烈用小程序,方便很多。
用小程序配网的步骤:
微信搜索“芯步小程序”,用刚才注册的账号登录
进入你的工作台(如果还没创建工作台,在网页端创建一个就行)
在小程序里点击右上角的“加号”,输入你现场的WiFi名称和密码——这里注意:WiFi必须是2.4G的
然后把手机的个人热点名称和密码,临时改成刚刚输入的那个WiFi的名称和密码
PDU设备上电后,会自动搜索这个名称的热点,连上之后就算配好网了
把手机热点改回原来的设置,PDU会自动连上你现场的WiFi
配网成功的标志是设备指示灯停止闪烁,并且在控制台的“设备列表”里能看到它上线。
如果一直搜不到设备,别着急。检查一下WiFi是不是2.4G的,或者把PDU断电重启一下再试。
四、核心环节:接口对接
PDU连上网之后,重头戏来了——怎么用代码控制它?
4.1 接口的基本信息
芯步的这套设备开放的是HTTP接口,也就是说,不管你用Python、Java、PHP还是Node.js,只要你的编程语言能发起HTTP请求,就能控制它。
接口地址是这个格式:
这里面有几个关键参数
| 参数 | 说明 |
|---|---|
| AppID | 你在芯步控制台创建应用后得到的,相当于你的“项目身份证” |
| sign | 签名,用来验证请求合法性,防止别人乱调你的接口 |
| ts | 时间戳,和签名配合使用 |
| device | 设备的唯一ID,在控制台能看到 |
| order | 真正下发到设备的命令,JSON格式 |
4.2 签名怎么算?
签名算法不复杂,官方给的方式是
解释一下:先把你的AppSecret做一次MD5加密,然后把加密后的字符串和当前时间戳拼在一起,再做一次MD5。
这样做的好处是,每次请求的sign都不一样(因为ts在变),就算有人抓包拿到了你的请求,也没法重放攻击。
4.3 控制命令怎么写?直接上代码
这里用Python写个例子,比较直观:
这段代码执行后,PDU的第1个插孔就会断电。你只要把power1后面的"0"改成"1",就能再把它打开。
4.4 进阶玩法:批量控制和顺序控制
既然是8位的分控PDU,实际场景中肯定不会只开关一个孔位。芯步的接口支持几种批量控制方式
1. 全部打开或全部关闭:
2. 控制指定的某几路:
3. 顺序通电(先通后断):