ansible实战:如何为一千台服务器部署网站

Posted 系统运维分享

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ansible实战:如何为一千台服务器部署网站相关的知识,希望对你有一定的参考价值。

1.安装ansible,以及基本的认识

2.用ansible为服务器部署phpbb论坛网站

3.把网站交给nagios

详细讲解:

  • 一。安装ansible,以及基本的认识

ansible其实原理跟saltstack一样,都是很方便就能管理很多服务器。如果大家还记得saltstack中的状态文件,那么今天介绍ansible就简单的多,状态文件就是一种需求文件,总服务器放出状态文件给其他服务器,其他服务器就会想方设法的去满足这个状态文件。这也就实现了批量管理服务器的工作了。那么ansible其实也一样,只不过它的文件不叫状态文件,而是playbook,俗称剧本,被管理的服务器拿到这个剧本就会像演戏一样演绎这个剧本,从而满足管理服务器的需求。

这里还要说一点的是,ansible的剧本文件简单一点,相对比起saltstack的sls文件要更加容易理解。所以很多人愿意去学习ansible。

1.首先安装ansible,需要yum源,可以用epel,我这里也有。写一个repo文件。

ansible实战:如何为一千台服务器部署网站3.现在试试能不能连上虚拟机。使用命令ansible all --ask-pass -m ping,如果你不想输入密码,那么你可以配置密钥认证,这样就可以直接执行了。现在说明ansible的基本配置成功了。

ansible实战:如何为一千台服务器部署网站

  • 二。用ansible为服务器部署phpbb论坛网站

我们现在要知道如果一个新的服务器要部署一个网站的步骤,如果你手动都不会部署,那么你怎么去写剧本文件。所以你先要手动部署成功了,再说写剧本文件的事情。

这里我们部署phpbb需求有几个,一个是httpd,mysql,php,以及响应的依赖,依赖问题怎么解决,这就要你提前自己手动部署一遍,这样你就知道需要什么依赖,然后写在剧本文件中。

1.我们为了部署phpbb,那么就在管理端单独写一个phpbb的目录,然后需要什么文件,我们都放在这个目录中。主要有一下文件。config是selinux文件,我不想更改远程的文件了,直接从本地拷贝,httpd.conf和phpbb.conf是http的配置文件,我做了单独的虚拟主机,phpbb目录是phpbb这个论坛的解压目录。

ansible实战:如何为一千台服务器部署网站虚拟主机配置是下面的内容:

ansible实战:如何为一千台服务器部署网站3。那么我现在剧本文件也写好了,那么我们现在就开始应用这个剧本文件到被管理端,使用命令ansible-playbook --ask-pass phpbb.yaml。执行之后,可以看到最后的输出是成功的。

ansible实战:如何为一千台服务器部署网站4.现在测试一下,看看能不能安装phpbb。直接在浏览器输入172.16.70.5(在我本机浏览器输入),看到下面的输出就表示你的php部署成功,现在看看所有的依赖能否完全成功。

ansible实战:如何为一千台服务器部署网站
ansible实战:如何为一千台服务器部署网站4.我把配置网站的东西都配置了一下,现在可以看一下效果,这就是网站的后台。

ansible实战:如何为一千台服务器部署网站

  • 三。把网站交给nagios

1.nagios是一个很好的管理工具,现在我们就用nagios来管理,之前我也讲过nagios了,所以今天就演示一下。添加一个172.16.70.5.cfg的配置文件,里面写上一下内容,这里我也不是用nrpe或者nrpd了,直接就监控http服务。

ansible实战:如何为一千台服务器部署网站2.重新加载nagios配置文件。看看是否管理到了vm5,成功检测到vm5,并且httpd服务正常运行。

总结:

今天主要学习了另一个管理工具ansible,其实ansible和saltstack一样,我们学习的都是模块和方法,要不然怎么说是python写的呢,所以工具不难,难的是你愿意不愿意去学习它灵活的地方。


以上是关于ansible实战:如何为一千台服务器部署网站的主要内容,如果未能解决你的问题,请参考以下文章

Ansible自动化运维实战在Jumpserver平台使用Ansible管理服务器

[Ansible实战]-ansible部署rsync全网备份项目

ansible自动化运维实战一

运维自动化之 - ansible 批量主机管理

走进自动化运维之Ansible服务部署,附带(参数及模块)详解!

利用Docker/Ansible实现轻量集群服务部署