Python 动态更新和API绑定还是其他什么?
在我工作的地方,我们有几个即将到来的项目需要动态DNS功能,例如能够动态插入/修改/删除DNS记录 到目前为止,我们一直在使用一个主节点和几个从节点的简单绑定设置。Master的数据(区域文件)在git中,我们有一个简单但非常有效的Fabric文件,用于确保所有更改都提交到git,然后将更改部署到Master,从而将更改进一步传播到从属服务器 我们使用视图,我们经常使用视图,考虑到我们有多少内部内容,必须保持这种功能,即不向公众公开内部记录 我已经研究了很长一段时间可能的解决方案,a-允许我们在所有区域上执行动态更新,包括在不同视图中的相同区域,b-公开理想的restful API,我们可以对话发布这些更新,c-开源,这样我们既可以使用它,也可以至少基于某些东西 可悲的是,我还没有找到任何接近这个要求集的东西,我认为这不是很个性化。我们开始考虑自己编写一些东西——使用Python和Python DNS,通过nsupdate协议与Bind进行对话,并根据需要发布更改,但在深入之前,我想得到一些建议,看看是否遗漏了什么?Python 动态更新和API绑定还是其他什么?,python,dns,bind,Python,Dns,Bind,在我工作的地方,我们有几个即将到来的项目需要动态DNS功能,例如能够动态插入/修改/删除DNS记录 到目前为止,我们一直在使用一个主节点和几个从节点的简单绑定设置。Master的数据(区域文件)在git中,我们有一个简单但非常有效的Fabric文件,用于确保所有更改都提交到git,然后将更改部署到Master,从而将更改进一步传播到从属服务器 我们使用视图,我们经常使用视图,考虑到我们有多少内部内容,必须保持这种功能,即不向公众公开内部记录 我已经研究了很长一段时间可能的解决方案,a-允许我们在
任何建议,非常感谢。当您已经使用了
git
时,为什么不简单地摆脱DNS从属,让所有东西都成为一个由自己的git
存储库提供的主机呢?然后只编写一些API,直接编辑区域文件,自动提交更改并设置提交后挂钩,该挂钩将在提交时将更改部署到所有DNS服务器?是。不过,我会编写一个ssh脚本,使所有服务器都能获取更新。或者,服务器可以通过cron
每隔五分钟拉一次;这可能足够了。