DIY带外管理 · 强悍Pi-KVM

2021-09-27 作者:

Let’s talk about the open source IP-KVM (or KVM over IP) solution based on Raspberry Pi 4B, named Pi-KVM, which has sophisticated feature sets that can provide almost same experience like HP ILO or DELL iDRAC, only except the hardware monitoring and err logging.

  • Hardware screen capture with low latency.
  • OTG Keyboard & mouse; Mass Storage Drive emulation.
  • ATX power control (thru Pi GPIO) with some MOSFET relays.
  • RJ-45 and USB serial console port.
  • IPMI BMC, redfish… all those professional server stuff support.
  • Nice and easy-to-use web UI with virtual keyboard, video quality control, key-combination shortcuts and virtual USB drive control.
  • A fully featured, user-customizable Linux OS.

只要玩过专业带外管理,基本就很难接受只有本地键鼠,以及OS之上的RDP和VNC了吧。

随便放两张Dell iDRAC系统截图吧。

今天要聊到的Pi-KVM,在简单廉价的硬件结构上,实现了除硬件子系统监控和告警之外,专业BMC几乎所有功能。

  • 低延迟的显示器信号捕捉和传输(100ms以内)。
  • OTG 键鼠,U盘模拟;给家用机远程load OS不叫事儿。
  • 通过Pi GPIO外加几个继电器实现的ATX电源控制;不说也懂,控制不了电源还叫BMC么。
  • RJ45和USB串口;既能控制路由/交换,也能控制自己。
  • IPMI BMC,redfish… 专业能玩的,它都能玩。
  • 简洁实用的web控制台,软键盘、组合键、粘贴板、视频质量控制、虚拟USB驱动器控制,全乎+易用。
  • 除了所有以上之外,还是个全功能的Arch Linux ARM版本,灵活性刚刚的,这可把专用BMC打趴了吧。

多吹无益,上图。

【注】请忽略裸线,5V和GND用胶带缠了一下,反正不是高压,胶带不绝缘也没关系,别物理刺穿就行;银色金属箔是屏蔽,说明小米的线做工还是靠谱的哈,该有的都没少。

文档制作基于Ventoy的Win10安装盘,全程不用物理U盘,安装Windows。

如果我没说清楚,就重申一遍。类似Dell和HP的专业BMC,可以直接远程挂载ISO装系统。Pi-KVM更狠,借着自己内置存储,直接把U盘/光盘镜像上传,经过物理USB线,模拟一个驱动器插到被控电脑就搞定了,有点爽。

如上所言,被控电脑经USB线连接仿真U盘,BIOS从Linux file-CD启动,无论装什么OS都能够顺利引导。

具体功能菜单浏览:

ATX电源控制,需要接继电器,我懒,没有接。

组合键输入,为什么走浏览器需要用便捷菜单输入键盘快捷键,玩家都懂。

粘贴板,好似还支持多语言,这贴心程度简直了,真心佩服开发者。

键鼠操作记录和回放,这玩意真不常见。安全起见还注明,Pi-KVM不会保存记录。

最后,如上所言,还是个基于Arch Linux for ARM的完整系统,想怎么玩都开放。

那么看官们,习惯哪家的开源远端管理方案我就不举例了,干就完了。

结尾给个DIY参考文档吧:

最后来一张传统艺能,其实全过程中唯一真正需要DIY的,就这根4芯USB Y-cable。

跟10年前在家手焊15pin D型头,在VGA线中集成了3.5mm音频模拟信号来比……嗯,休闲娱乐,丑点,能用就行。


更新一下,评论有人问这个4芯USB Y-cable怎么做,能不能买,我统一答复一下。

这个4芯USB Y-cable自己剥开线皮做一个就行,好像某宝可以买,但买到的应该没有一个A头的5V断开的设计,所以依然还是得剥皮改线。我这就是平常凑单买的一些小米的线,感觉一般人家里买过大量Android手机的都不缺。

按PiKVM作者的说法,就是type A公头两个,type C公头一个:

  • 走信号的线,接被控电脑。掐断5V,剩余三根导通,这样子避免被控制的电脑USB host口得到5V输入(不断开的话,极端情况下,可能损坏被控电脑USB供电部分);
  • 然后走供电的线,接Pi的供电头。把两根信号掐了,只留5V和GND,这样一边可以让Pi得到达标的供电(毕竟3A呢,靠电脑USB供电没保障),另一边跟Pi和电脑的GND连起来共地,确保USB信号传输的参考地是一致的。

转个图看一眼就明白了:

(Image credit: Tom's Hardware)

(Image credit: Tom’s Hardware)

某宝买到的HDMI-CSI2转接板

某宝买到的HDMI-CSI2转接板

 

原创文章,转载请注明: 转载自渔人小径

本文链接地址: DIY带外管理 · 强悍Pi-KVM

打赏 PayPal

文章的脚注信息由WordPress的wp-posturl插件自动生成

打赏 赞(0)
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏

最近文章

分享

4 条评论

  1. caoye

    大佬,您好,我对硬件不太懂,想请教您一下这个pikvm怎么设置。 现在我手里有个树莓派4B,然后只想能远程开机,然后可以进入bios界面就行了,如果DIY的话需要买什么硬件模块呢,万分感谢

    • yungilike

      作者的官网链接在这里
      目标机器的显示输出采集,应该是需要一个HDMI-CSI2的转接器,我也只买了这一件
      如果还需要控制电源,那么就需要继电器和一些接线,接到被控制pc的电源插槽上,这一步我不需要所以没做,但要做也挺容易的
      其实如果你机器比较好,可以打开wake-on-lan这样局域网发个唤醒包,机器就开机了;还有一种选择就是wifi智能插板,提前把机器bios设置成上电就开机

      pikvm作者还提供软硬件一体的产品,前阵子在Kickstarter卖了不少(好像部分是中国生产),只是我不愿等,就自己某宝买的配件,按他教程攒的,效果挺不错

发表评论

电子邮件地址不会被公开。 必填项已用*标注