5.2.4 ansible基础模块及其应用

5.2.4 ansible基础模块及其应用

ansible运维管理采用基于模块化方式,在安装部署过程中简单易学。ansible工作于SSH协议模式,配置管理默认使用SSH协议进行通信,在自动化运维生产环境中支持自定义模块,基于Python语言开发,集合了众多运维工具的优点,具有Palybook格式编程等优点。ansible基础模块介绍如下。

1.ping模块

执行命令ansible all -m ping,其中all参数表示对所有主机执行操作,-m参数表示在测试运行时使用ping模块。代码如下所示:

2.setup模块

setup模块获取节点的详细信息,包括获取硬件的信息和软件的信息,如主机IP地址、环境变量等。代码如下所示:

3.在服务器之间批量复制文件

从ansible主机中将源文件复制到目标服务器主机中,代码如下所示:

4.file模块

在运维服务器主机中新建文件和目录,如果文件存在,则会更新数据信息。

(1)新建文件的代码如下所示:

(2)新建目录的代码如下所示:

(3)删除目录,并批量删除指定目录文件,代码如下所示:

5.shell模块

与command模块的使用类似,不同点是command的执行命令不能通过管道。

shell模块的执行命令如下所示:

6.script模块

script模块可以帮助我们在远程主机上执行ansible来管理主机上的脚本,也就是说,脚本一直存在于ansible管理主机本地,不需要手动拷贝到远程主机后再执行。代码如下所示:

7.group模块

group模块用于在管理服务器主机中批量新建用户组,可以指定用户组ID和用户组名称,代码如下所示:

8.user模块

user模块用于批量管理用户,在管理服务器主机中新建用户和删除用户,代码如下所示:

9.get_url模块

从远程网络中将需要的文件批量下载到本地服务器中,代码如下所示:

10.yum模块

yum模块能够从指定的服务器自动下载RPM安装包,并且可以自动处理依赖性关系。安装http服务的执行命令如下所示:

11.service模块

service模块用来管理节点上的服务,可开启、关闭、重启服务器等。启动服务器、重启服务器、停止服务器的代码如下所示: