我想管理几个运行嵌入式Linux的设备的配置。
在我的环境中有一个web服务器,它有一个SOAP接口,可以用来获取/设置我想要配置的每个设备的所有参数。web服务器通过发送SNMP消息与嵌入式Linux设备进行通信,这是我控制它们的唯一选择。
我想使用配置管理工具来定义每个嵌入式设备,然后使用SOAP服务器对它们进行混淆,但我似乎找不到Puppet/Ansible的任何例子来实现我想做的事情(但可能我在谷歌上搜索了错误的术语)。
傀儡设备听起来有点像我想做的事情,它似乎用于配置某些类型的网络设备,但它仍然使用ssh与设备节点对话,并在节点上的shell中运行命令,而不是使用中间代理获取/设置参数。我希望我将不得不编写一个自定义提供程序(或非Puppet工具的等效程序),在任何配置管理工具中有实现这一点的方法吗?我确信一定有一种合理的方法来做到这一点,但我很难找到这类场景的例子。
发布于 2014-07-27 14:39:53
我的第一个想法是.您的中央服务器允许您定义所有的信任,而不是向每个设备发出出站请求,而是以每个节点很容易发现的格式写出该格式。
我使用CFEngine,它重量轻,速度快,几乎可以在任何东西上运行。默认情况下,每个节点每五分钟向中央策略服务器报到,但是您当然可以根据需要调整日程。该策略可以在其中下载由中央服务器生成的那些天。(用于进行SNMP调用)如果有新的数据,那么cfengine代理可以处理该数据并进行必要的调整。
发布于 2014-08-27 16:54:22
假设运行嵌入式Linux的设备可以运行Python,一种解决方案是使用抗拉脚本让它们从中央位置检查您的Ansible剧本,并让设备在本地运行ansible-playbook。这样,您不需要能够通过ssh访问设备。
您可以从crontab调用ansible并/或让它在设备启动后运行。
有关更多信息,请参见Ansible的文档。
https://serverfault.com/questions/615700
复制相似问题