物联网领域对于DevOps来说挑战很大,但是换种方式不见得会更好。DevOps也是一个工具箱,你需要思考从中找挑出的工具是否能正确应对当前工作。
我们仍然可以使用许多DevOps工具箱中的工具,只需要确保我们在做正确的事情,而不只是在不理解问题的前提下实现想法。
下面是一些建议:
。 只要你在测试实验室中,失败和快速周转是可以的。
。 确保你的测试实验室和产品环境接近。
。 在实验室不要只使用最新版本,也要兼容旧版本。
DevOps的物联网设备动手实验室
到目前为止,我们大多讨论了DevOps的抽象意义、物联网及其未来。
为了得到动手环节的灵感,让我们来制作一个简单的物联网设备,它可以连接到Jenkins服务器并且显示出构建的状态。通过这种方式,将我们尝试的物联网设备和DevOps结合起来!
在构建失败的情况下,将闪烁的LED作为状态显示。这个项目很简单,但是聪明的读者可以以此为基础扩展项目。为本次练习挑选的物联网设备比较灵活,可以实现比LED闪烁更多的功能。
该项目将有助于说明一些可能性以及物联网的挑战。
NodeMCUAmica是来自Espressif的基于ESP8266芯片的可编程的小设备。除了基本的ESP8266芯片,Amica板额外的特性让开发更加容易。
下面是一些设计的规格:
。 Tensilica Xtensa LX106是一个32位的RISC CPU,运行频率为80MHz。
。 它的Wi-Fi芯片允许它连接到我们的网络和Jenkins服务器。
NodeMCU Amica板有一个USB接口可以给固件编程并连接到电源适配器。
ESP8266芯片需要一个USB到串口的适配器去连接USB接口,它由NodeMCU板提供。
板子有几个输入/输出的端口,可以连接到某些硬件上来可视化构建的状态。开始我们会做得比较简单,只使用连接到设备上某个端口的板载的LED。
NodeMCU自带的固件可以通过Lua语言来编程。Lua是一种高级语言,可以快速实现原型。顺便提一句,它在游戏编程领域也很流行,也可以从另一方面说明Lua的高效。
考虑到它提供的这么多功能,这个设备相当便宜:
很多地方都可以买到NodeMCU Amica,从电子商店到网上经销商。
买到NodeMCU不难,从硬件的角度来说项目也很简单,在实践中也可以采用Arduino或者树莓派,如果它们更容易获得。