Ansible 用 Roles 部署 LNMP 网页应用程式(上)
上一章「Ansible 怎么使用 Roles」我们探索了 Galaxy (银河),并学习了 Roles 的使用方法,接下来冻仁教大家如何用 Roles 部署 TestLink 这套相依于 LNMP 环境的网页应用程式。
LNMP = Linux + Nginx + MySQL + PHP
TestLink 是什么?
TestLink 是一套开源的测试管理软件。其部署的方法与 Drupal 和 Wordpress 等内容管理系统 (CMS) 相似,皆可使用 GNU/Linux + Web server + MySQL + PHP 环境进行安装。
来自维基百科的解释:
TestLink,是一个用于管理测试过程并提供统计分析的开源软件。该软件发布于 sourceforge,并采用 Web 界面交互,可以进行自动化的测试用例运行,并将测试结果生成报表并归档。(more)
怎么选 Roles?
由于 Galaxy 上的 Roles 皆由社群成员所维护,故使用前冻仁会藉由以下几点来挑选合适的 Roles。
- 是否支持我们要用的作业系统 (OS)?
- 若不支持请直接找下一个。
- 是否支持多个 OS 平台?
- 通常支持多个 Linux 发行版本的 Roles 质量会比较好一些。
- 有无整合 Travis CI 进行测试?
- 有整合 CI 就可以从 README 的 Badge 上看到建置的结果。
- 绿色为成功;红色代表失败。
- 得到的星星数多不多?
- 不是一定要找到很多星星才可以用,不过星星数越多代表被越多人认可。
- 下载数多不多?
- 同第 4 点。
- 最后更新的时间点为何?
- 有时会找到看起来似乎很棒,但距离上次更新已是一两年前,年久失修的状况。
在这里的范例里,冻仁挑选了以下三个同时支持 CentOS, Debian 和 Ubuntu 平台的 Roles。
以上,在这一章我们认识系统需求,也挑选了合适的 Roles,下章冻仁将带大家用 Roles 撰写强化版的 Playbooks。
相关连结
1. 冻仁第一次听到 TestLink 是在 2013 年的夏天, 那时接到主管指派在下帮某位女同事架站,才知道有那么一套专为管理测试导向的CMS。 ↩
2.chusiang.php7
是冻仁从itcraftsmanpl.php7
fork 出来,并加入支持 CentOS 6, 7 平台的 Role,同时也是冻仁第一个分享至 Galaxy 的 Role。 ↩