5

DIY带外管理 · 强悍Pi-KVM

 2 years ago
source link: http://fisherworks.cn/?p=3411
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

DIY带外管理 · 强悍Pi-KVM

2021-09-27 作者: Fisherworks

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)

某宝买到的HDMI-CSI2转接板

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


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK