安装ansible自动化运维工具编写playbook实现apache的安装与启动
一.Ansible的安装
本次实验拥有两个主机,IP地址分别为:
192.168.32.143(管理机) 192.168.32.144(远程主机)
由于目前RHEL官方的yum源还没有Ansible的安装包支持,因此在安装Ansible之前,需要在主机中安装包含Ansible软件包的EPEL源.如下图:
EPEL源安装完成后,方可安装Ansible.安装命令如下:
安装完成后,可以使用如下命令查看Ansible的版本:
由图可知,Ansible的版本为2.9.25
二. 配置SSH无密码登录
生成一对密钥
在管理机中,使用ssh-keygen命令生成一对密钥,在命令执行过程中,对询问直接按回车键.结果如下所示
ssh-keygen命令执行完毕,会在/root/.ssh下生成一对密钥,其中id_rsa为私钥,id_rsa.pub为公钥,公钥需要下发到远程主机用户的.ssh目录.
2.将公钥下发到远程主机
使用ssh-copy-id命令将公钥下发到节点,在询问是否确定连接处输入yes,进行公钥验证.在提示输入密码处输入密码,至此,公钥下发完毕.
保管私钥**
公钥下发完毕后,使用ssh-add命令将私钥交由192.168.32.144管理,在命令执行完毕后,在执行ssh命令验证配置是否成功.
如果能够无密码进入目标主机,说明SSH无密码登录配置成功.
三.主机目录
主机目录的配置文件默认是/etc/ansible/hosts,查看该文件,可以看到如下部分内容:
[webservers]和[dbservers]代表分组.现在将该文件清空,将要管理的节点信息添加进来,并进行分组,内容如下:
在该文件中添加节点时,除了使用IP地址外,还可以用域名,别名对节点进行标识.
配置完成后,用ping模块对节点进行ping操作,测试节点与管理机是否连通:
由输出结果可知,主机192.168.32.144连通,ansible正常工作.
四.编写playbook实现Apache的安装与启动
首先创建/etc/ansible/playbook目录,在该目录下添加apache.yml文件,此文件就是一个playbook.
该文件内容如下:
定义好apache.yml文件后,使用命令查看文件是否有错误并调用ansible-playbook命令执行该文件.具体命令与执行结果如下:
如图所示,apache.yml文件的任务成功执行.
之后用ssh命令登录192.168.32.144查看httpd服务是否成功安装与启动.具体结果如下:
至此,安装ansible自动化运维工具编写playbook实现apache的安装与启动已成功实现.