我有一个服务器集群,每个实例需要对整个系统状态有一定的了解。
基本上我需要的是一个查找服务…
由于我是服务器开发/pipe理的新手,我应该从哪里开始看? 什么技术是合适的? 有没有更好的解决scheme来解决这个问题?
似乎Apache Zookeeper或者它更轻的替代Noah (如果你想要RESTful接口)可能适合在这里。 此外,还有更多的替代registry/查找服务在野外,似乎这可能是适合您的情况的适当的解决scheme。
configurationpipe理工具也可以在这里使用(如果你还没有使用的话)。 大多数stream行的开源configurationpipe理工具是Chef , Puppet和Cfengine 。
例如,使用厨师,你可以在你的食谱中查找所需的信息:
db_slaves = search(:node, 'mysql_server_role:slave') db_slaves.each do |slave| # execute something ... end
这是使用Chefsearchfunction为了收集厨师服务器已知的所有DB奴隶,然后做一些事情。
您也可以在其他提到的CM工具中使用类似的function(确切的技术可能不同)。