我有一个Ansible手册,用于在远程机器上建立LAMP环境.
本剧本的一部分涉及安装Composer:
- name: Install Composer
get_url:
url: https://getcomposer.org/installer
dest: /tmp/composer-setup.PHP
command: PHP /tmp/composer-setup.PHP --install-dir=/usr/local/bin --filename=composer
我的考虑
相反,这些5行结构我正在考虑在剧本中使用这个ansible-galaxy命令:
ansible-galaxy install geerlingguy.composer
geerlingguy.composer
是拥有超过百万用户的最具社区支持的AG角色(所以我假设如果出现问题并且Jeff目前不在身边 – 比如说,在夏威夷度过假期,那么会有很多社区成员要修复问题并确保稳定.
使用它也会缩短我已经很长的剧本.
我的问题
一般来说,最好的做法是将Ansible-galaxy角色与Ansible剧本中的任务和测试一起使用,而不是剧本中应该显示达到相同目标的一组ansible-modules(可能是一些可能无关紧要的多余额外内容) t中断作为AG角色的一部分)?我会认为是的,因为它更公共,更稳定.
解决方法:
是否使用galaxy提供的角色是您需要在特定环境中评估的决策(对于您正在考虑的每个角色).
galaxy上的好角色通常会处理比你的特定角色更多的情况(看看这里的任务内容,与你的剧本相比),但这些功能需要付出代价:你正在为系统添加一个外部依赖,并依赖在社区处理您的要求.
与开发剧本(或您自己的galaxy角色)相比,您需要考虑评估galaxy角色的成本;无论是现在还是将来.没有严格的规则.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。