我正在用Ansible配置我的AWS EC2实例,但我不知道存储我的应用程序配置的最佳方法是什么。
现在我只是使用Ansible向服务器发送一个"app.properties“文件,但是我想从我的源代码管理中删除它。此外,我希望存储环境变量上的所有内容,而不是os文件,以使其更安全。
有什么好的工具吗?一些简单的东西,比如key-val配置服务器,您的所有服务器都将连接并获得它们自己的属性?
像Netflix或Amazon这样的大公司如何解决这个问题?
谢谢!
发布于 2014-02-13 00:16:08
有几种工具可以用于此目的。Ansible就是其中之一。如果要使用Ansible,可以使用"Ansible变量“。您可以根据这些"Ansible变量“的值分配系统环境变量。
您还可以在一个git存储库中存储包含所有变量的所有Ansible剧本。这样,它们就不会在服务器中显示,而只是在运行Ansible播放本之后显示为环境变量。
您可以在这里查看如何使用Ansible设置环境变量:environment.html
话虽如此,还有其他工具可以帮助你做到这一点。其中:木偶,厨师,CFEngine,织物和SaltStack。所有这些都会帮助你完成你想要的,尽管不同。它们有各自的优点和缺点,取决于您要寻找的是什么以及您的体系结构是什么样子的。
在这里也可以查看我的答案,以获得更多的见解:Heroku-like deployment and environment configuration via EC2
https://stackoverflow.com/questions/21741127
复制相似问题