您现在的位置是:首页 > 正文

Ansible自动化运维之常用模块的ad-hoc应用

2024-01-30 23:51:42阅读 0

  • Ansible中的内置模块非常的多,一般使用ansible-doc来获取模块相关帮助; 可以直接查看doc帮助文档尾部 的example例子 仿照应用

  • ansible默认模块为command模块

1. yum模块

使用:

在这里插入图片描述

应用:
[devops@server1 ansible]$ ansible test -m yum -a "name=httpd state=present" ##对test组中主机yum安装httpd

在这里插入图片描述
在这里插入图片描述

安装完成:

在这里插入图片描述

2. service模块

使用:

在这里插入图片描述

应用:
[devops@server1 ansible]$ ansible test -m yum -a "name=httpd state=present"  ##开启httpd服务

在这里插入图片描述
在这里插入图片描述

服务配置成功

在这里插入图片描述

3. firewalld模块

使用

在这里插入图片描述

应用
[devops@server1 ansible]$ ansible test -m firewalld -a "service=http permanent=yes state=enabled"  ##火墙允许http服务 并且开机自启

在这里插入图片描述

4. copy模块

使用
  • 需要注意的是src源文件需要在执行目录下存在
  • 一般在config服务时,使用copy模块来修改服务相应配置文件
    在这里插入图片描述
应用
[devops@server1 ansible]$ ansible test -m copy -a "src=hosts dest=/mnt/ owner=devops group=devops mode=0644 " ##拷贝文件 并且设置其所有者及所有组为devops 文件权限为644

在这里插入图片描述

5.template模块

使用:

template模块与copy模块作用相同都是用于copy文件的,区别在于copy模块copy的src源文件都是静态文件,不存在变量;当年我们需要copy的文件中出现变量,我们就要用到template模块;并且src文件是以".j2"结尾的模板文件
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

6 uri模块

使用

在这里插入图片描述

应用
[devops@server1 ansible]$ ansible test -m uri -a "url=http://172.25.3.2  return_content=yes" ##访问http://172.25.3.2 并回送内容

在这里插入图片描述

6. file模块

使用

在这里插入图片描述
在这里插入图片描述

应用
[devops@server1 ansible]$ ansible test -m file -a "path=/mnt/foo.conf state=touch mode=u=rw,g=r,o=r" ## 设定权限创建文件并

在这里插入图片描述
在这里插入图片描述

7. user模块

使用

在这里插入图片描述

应用
[devops@server1 ansible]$ ansible  test -m user -a "name=johnd comment='John Doe' uid=1040 "  ##建立用户johnd uid为1040 

在这里插入图片描述
在这里插入图片描述

8. mysql_db模块

使用
在使用数据库时需要下载MySQL-python

在这里插入图片描述
在这里插入图片描述

应用
[devops@server1 ansible]$ ansible test -m yum -a "name=mariadb-server,MySQL-python  state=present"  ##创建数据库前先安装数据库 
[devops@server1 ansible]$ ansible test -m service -a "name=mariadb state=started"
##开启数据库服务
[devops@server1 ansible]$ ansible  test -m mysql_db -a "name=test state=present"  ##创建数据库

在这里插入图片描述
在这里插入图片描述

9. mysql_user模块

使用

在这里插入图片描述

应用
[devops@server1 ~]$ ansible test -m mysql_user -a "name=bob password=12345 priv='*.*:ALL,GRANT'"  ##创建数据库用户bob 密码为12345 并授权

在这里插入图片描述
在这里插入图片描述

网站文章