从表面上看,我需要能够在目标节点上安装一些软件守护进程,以使这些工作起作用。 如果我不能这样做(例如Amazon RDS实例),我有什么select?
同样,Ansible似乎基于SSH。 这可以用来configurationRDS吗?
感谢您的反馈 – 讨论导致我在这里更有针对性的问题: https : //serverfault.com/questions/588237/whats-a-good-cm-tool-for-managing-a-cloud-cluster-由分集资源交stream
您可以使用Ansible使用rds , rds_param_group和rds_subnet_group模块来pipe理RDS。 他们不依赖于安装任何远程pipe理代理(ew!),并且不直接SSH进入节点。 这三个模块使用官方提供的API调用(在boto库的帮助下)与AWS通信。
当然,他们可能无法在运行MySQL的EC2实例上做所有的事情 ,但是这些模块仍然给你一定程度的pipe理。
为了扩大Nathan的良好答案和评论,我可以提供一些进一步的解释,为什么configurationpipe理工具不能很好地(如果有的话)与Amazon RDS等SaaS解决scheme一起工作。
RDS本质上是“托pipeMySQL”。 您无法访问底层操作系统,因此您无法安装软件包,无法访问configuration文件或尾部日志文件。 从configuration的angular度来看,您与RDS的唯一接口是通过Amazon的Web控制台或API,与Elasticache“托pipeMemcache”完全相同,ELB可以被认为是“hosted HAproxy” – 它们是SaaS(软件即服务)产品。
因此,像Puppet或Chef这样的传统configurationpipe理工具将无法正常工作,因为他们需要完整的操作系统级访问。
然而,一个可以使用的工具是Amazon自己的CloudFormation工具。 不是“configurationpipe理”本身,但它可以用作替代品。 查看亚马逊的文档了解更多细节。
如果您真的想在Amazon上使用Puppet或其他configurationpipe理工具,则需要在EC2实例上运行您自己的MySQL安装。 然而,这样做有缺点和优点,因为您以易于pipe理为代价获得了控制权,这正是RDS所提供的 – Amazon处理您的备份,维护,高可用性等,您只需要与MySQL端点通话即可。
正如ceejayoz在他的评论中指出的,上面并不是说configurationpipe理工具是毫无价值的 – 我个人恰好是一个庞大的木偶粉丝 – 你只需要为你的环境select合适的工具。 Puppet在做OS级pipe理方面非常棒。 CloudFormation在pipe理您的Amazon服务方面非常出色。 将这两种技术结合在一起,您就拥有了一整套可以pipe理整个基础架构的工具。
您没有RDS的任何选项。 所有的pipe理都是为你处理的。 如果您需要更多数据库的权力,请使用EC2并自行安装。
有了Salt,你可以使用boto_rds模块,但正如其他人所指出的那样,不要指望自己pipe理的MySQL数据库具有相同的控制级别,请参阅https://docs.saltstack.com/en/。最新/ REF /模块/所有/ salt.modules.boto_rds.html