我正在尝试开发一个开源应用程序,就像所有Unix平台的集中式配置管理一样(例如更改root密码,SSH配置,DNS设置,/ etc / hosts管理等等) )。
我需要您的反馈,建议您将什么配置用作所有配置的接口(脚本列表将在Unix服务器中作为客户端运行以读取配置并将其应用于每个系统中“客户端=== >到===>服务器模式“
我应该使用LDAP来托管配置吗?任何Unix操作系统都可以与LDAP通信以获取配置
或者我应该将配置保存在数据库(例如MySQL)中并构建一个Web界面来读取数据库并将配置打印到客户端?
或者您有任何其他想法?
答案 0 :(得分:3)
答案 1 :(得分:2)
Curl可以从URL下载文件并将该文件写入标准输出。例如,执行curl -sS http://someHost/file.cfg
将从指定的Web服务器下载“file.cfg”。 “-sS”选项指示Curl打印错误消息,但不打印任何进度诊断。顺便说一句,Curl支持许多协议,包括HTTP,FTP和LDAP,因此您可以灵活地使用您希望用于托管集中配置存储库(CCR)的技术。
您可以使用curl从CCR检索配置文件,将结果存储在本地文件中,然后解析该本地文件。
答案 2 :(得分:1)
从DevStructure中查看蓝图。这听起来像是你想要做的事情。基本上它反向工程服务器并检测从安装状态改变的所有内容。开源也是。
https://github.com/devstructure/blueprint(Blueprint @ Github)
答案 3 :(得分:1)
我们也将推出ConfigChief,它是一个可以满足您需求的中央配置存储库:集中存储配置点(具有版本控制,审计,ACL,继承等所有功能)。
一旦你有了这个,结合变更通知,你就可以像Ciaran McHale对CCR说的那样运行一个卷曲并获得你解析的配置文件。这样就无需编写脚本来从外部生成配置文件。
如果您有兴趣,可以在http://woot.configchief.com
注册参加测试版免责声明:我想从第一个字就很明显了!