ansible的简单实验

实验背景:

Z公司为了提升工作效率,消除重复任务,更少的错误风险,要求尽量减少对现网服务器的改动,因此在目前主流的运维自动化工具 中选择Ansible来实现IT运维管理自动化。

 

实验环境:

                                                                                                          

实验内容一

  1. 确认实验环境:

了解服务器和主机用的操作系统,以及各个设备的ip地址

设备

操作系统版本

Ip

与其他主机是否能ping’通

服务端

 

 

 

被管理端

 

 

 

 

 

  1. 安装ansible(在控制端用yum方式安装Ansible。)

CentOS (Yum)

 

第一步:新增 epel-release 第三方套件来源。

第二步安装 Ansible。

 

 

3. 安装python及ssh无密登录

第一步:在所有节点上安装yum、ssh、python:

控制节点:

被控制节点:

 

第二步:在控制节点上执行:ssh-keygen:

 

 

第三步:在控制节点上执行:

4. 修改配置文件ansible.cfg并配置被控制主机。

第一步:修改配置文件ansible.cfg

首先在管理节点上输入:

 

输入之后,会看见这样一个界面:

 

接着点击键盘上的i键进入insert模式,将下列图中标黄的文件编辑进去

 

编辑完成之后保存并退出。

 

第二步:配置被控制主机

首先在管理节点上输入:

输入之后会看见默认的ansible的host文件,如下图所示

同样的还是输入 i,进入insert模式编辑以下文件

 

因为只用了一台被控制节点,所以只输入一个被控制节点的ip地址即可

保存配置文件并退出。

 

结果验证:

 

通过输入

来测试控制节点和被控制节点的连通性。

如图所示,如果出现正确的相应信息,success,则证明上述操作无误

 

 

 

实验内容2 :通过ad-hoc命令批量管理服务器

任务一:测试各个远程主机组webservers连通性。

在进行完实验内容之后,通过输入命令来测试控制主机和被控制主机组之间的连通性,如果出现以下success内容,则证明实验环境良好,可继续下列实验。

 

任务二:查看远程主机组webservers的网卡信息。

实验解析:首先需要在被控制主机上查看被控制主机的网卡名称是什么,有的机器网卡名称是eth0,有的则不是,如下图所示,被控制主机的网卡名为eno16777736

那么当我们在控制主机上查看被控制主机的网卡信息时,一定要注意网卡的名称是否对应,

                   图1

我们在控制主机上输入命令之后,就可以在控制主机上查看关于被控制主机的网卡信息,如图1所示。

 

任务三:执行远程主机脚本test.sh。

实验解析:在控制主机上远程控制被控制主机执行主机脚本,首先在被控制主机上有脚本,所以需要现在被控制主机上去创建脚本test.sh,如图2,图3所示,

                   图2

创建脚本:

                       图3

 

注意:/home/test.sh 脚本需要在远程主机上存在且有执行权限,如图4所示,修改权限。

                    图4

在控制主机上通过输入命令来检查结果,如图5所示。

                    图5

 

 

任务四:主控端向目标主机拷贝test1.sh文件到/tmp/目录下,并设置该文件所有者和所属组为root,文件权限为rwxr-xr-x。

实验解析:同样的,主控端向目标主机拷贝test1.sh文件,首先在主控端是有这个文件的,所以需要在主控端去创建这个文件test1.sh。在此不做介绍了,上面已经解析过了。

如图6所示

可以到目标主机上看一下是否有test1.sh的文件产生,如图7所示,在目标主机上进入tmp目录中,查看目录下所有文件,可以发现test1.sh文件被成功建成。

                  图7

 

任务五:查看远程主机组webservers /etc/sysctl.conf文件uid, gid信息,如图8所示

                   图8

 

 

任务六:安装httpd到所有远程主机组webservers上。

如图9所示

                  图9

 

任务七:开启远程主机组webservers http服务,并查看服务状态,首先启动服务,如图10所示

 

                 图10

接着查看服务状态如图11所示

                     图11

 

停止服务如图12所示

                         图12

 

 

任务八:在远端服务器组webservers上创建/home/f1文件,并删除/home/f1。

 

首先创建/home/f1文件,如图13所示

                   图13

在被控制主机上查看是否有/home/f1文件生成,在被控制主机上先进入home目录在查看目录文件有哪些,如图14所示

             图14

 

接着删除/home/f1文件,如图15所示

图15

结果检验:

在被控制主机上查看/home/f1是否还存在,如图16所示

                      图16

 

 

实验内容三:playbook自动部署Nginx

任务一:完成playbook自动部署Nginx。

首先在控制端创建文件main.yml

 

在这个文件里面输入一下内容,如下图所示

保存并退出。

 

然后执行Playbook,如下图所示

 

 

实验结果验证:

首先开启nginx,如下图所示

接着查看nginx的服务状态,如下图所示,表示成功安装了nginx。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章