从零学习Linux操作系统 第三十一部分 ansible常用模块介绍

一、ansible运行模块的两种方式

Ad-Hoc方式 ##利用ansible命令直接完成管理,主要用于临时命令使用场景

在这里插入图片描述

playbook方式 ##ansible脚本,主要用于大型项目场景,需要前期的规划,相当于shell当中的脚本
在这里插入图片描述

在这里插入图片描述

二、如何查看模块帮助

ansible-doc ##显示模块帮助的指令

命令格式
ansible-doc [参数] [模块…]

#常用参数
-l ##列出可用模块
-s ##显示指定模块的playbook片段
在这里插入图片描述
在这里插入图片描述

三、ansible命令的常用执行参数

命令格式:
ansible 清单 -m 模块 -a 模块参数

常用参数

–version显示版本
-m module指定模块,默认为command模块
-v详细过程 -vv -vvv更详细过程
–list显示主机列表,也可以用–list-hosts
-k提示输入ssh连接密码,默认key认证
-C预执行检测
-T执行命令的超时时间,默认10s
-u指定远程执行的用户
-b执行sudo切换身份操作
-become-user=USERNAME指定sudo的用户
-K提示输入sudo密码

ansible的颜色的代表

绿色执行成功但为对远程主机做任何改变
黄色执行成功并对远程主机做改变
红色执行失败

四、command模块的使用方法

command
#功能: 在远程主机执行命令,此模块为默认模块
在这里插入图片描述
#常用参数

chdir执行命令前先进入到指定目录
cmd运行命令指定
creates如果文件存在将不运行
removes如果文件存在在将运行
free_form在远程主机中执行的命令,此参数不需要加

在这里插入图片描述

五、shell模块的使用方法

#功能:
#和command功能类似

#常用参数

chdir执行命令前先进入到指定目录
cmd运行命令指定
creates如果文件存在将不运行
removes如果文件存在在将运行
free_form在远程主机中执行的命令,此参数不需要加
executable指定执行环境,默认为sh

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

六、scrip模块的使用方法

功能:
在ansible主机中写好的脚本在受控主机中执行
编写一个脚本

vim clean.sh
在这里插入图片描述
ansible all -m script -a “/mnt/westos.sh”
远程执行脚本

七、copy模块的使用

#功能
从ansible主机复制文件到受控主机,或者指定建立文件

#常用参数

src源文件
dest目的地文件
owner指定目的地文件所有人
group指定目的地文件所有组
mode指定目的地文件权限
backup=yes当受控主机中存在文件时备份原文件
content 指定文本内容直接在受控主机中生成文件

在这里插入图片描述

八、fetch模块的使用方法

#功能
从受控主机把文件复制到ansible主机,但不支持目录

#常用参数

src受控主机的源文件
dest本机目录
flat基本名称功能

九、file模块的使用方法

#功能
设置文件的属性

#常用参数#

path指定文件名称
state指定操作状态
mode设定权限
owner设定文件用户
group设定文件组
src源文件
dest目标文件
recurse=yes递归更改

state ##指定操作状态
##touch 建立
##absent 删除
##directory 递归
##link 建立链接

十、.archive模块

功能:压缩

#常用参数

path打包目录名称
dest声称打包文件名称
format打包格式
owner指定文件所属人
mode指定文件权限

ansible all -m archive -a ‘path=/etc dest=/opt/etc.tar.gz format=gz owner=lee mode=700’ -k

十一、hostname模块

#作用
管理主机名称

常用参数
name 指定主机名称

在这里插入图片描述

在这里插入图片描述

十二、cron模块

#作用
计划任务,定时任务设定

#常用参数

minute分钟
hour小时
day
month
weekday
name任务名称
job任务脚本或命令
disabledyes 禁用计划任务,no 启动计划任务
stateabsent 删除计划任务

在这里插入图片描述

十三、软件仓库配置模块

##yum_repository##
#作用
配置系统软件仓库源文件

#常用参数

name指定仓库名称
baseurl指定源路径
description指定仓库描述
file指定仓库文件名称
enabled仓库是否启用
gpgcheck仓库是否检测gpgkey
state默认值present 建立,absent 为删除

在这里插入图片描述

十四、利用dnf模块管理软件

作用
管理系统中的dnf仓库及管理软件

name指定包
state指定动作,present 安装,latest 更新,absent 删除
list列出指定信息
disable_gpg_check禁用gpgkey检测
enablerepo指定安装包来源
disablerepo禁用安装包来源

十五、service服务管理模块

作用
管理系统服务状态

#常用参数

name指定服务名称
state指定对服务的动作,started启动,stoped关闭,restarted重启,reloaded重新加载
enabled设定服务开机是否启动,yes开启启动,no开机不启动

在这里插入图片描述

十六、firewalld火枪控制模块

#常用参数

zone火墙的域
service服务名称
permanent永久生效
state=enabled 允许,disabled 拒绝,immediate 立即生效

在这里插入图片描述

十八、利用group模块管理组

作用
group 模块可以帮助我们管理远程主机上的组

#常用参数

name用于指定要操作的组名称。
state用于指定组的状态=present 建立,absent 删除
gid用于指定组的gid。

在这里插入图片描述

十九、文件关键行替换

lineinfile:替换一整行文本

path :指定要操作的文件。

line :指定文本内容。 “|+” 表示格式化输入

regexp:使用正则表达式匹配对应的行当替换文本时。
如果有多行文本都能被匹配。
则只有最后面被匹配到的那行文本才会被替换。
当删除文本时,如果有多行文本都能被匹配。
这么这些行都会被删除。

state :当想要删除对应的文本时需要将state参数的值设置为absent
state的默认值为present。

backrefs:当内容无匹配规则时不对文件做任何更改,默认值为no
向后引用regexp变量信息

insertafter :借助insertafter参数可以将文本插入到“指定的行”之后
insertafter参数的值可以设置为EOF或者正则表达式

insertbefore:借助insertbefore参数可以将文本插入到“指定的行”之前
insertbefore参数的值可以设置为BOF或者正则表达式

backup:是否在修改文件之前对文件进行备份。

create:当要操作的文件并不存在时,是否创建对应的文件。

二十、替换文件当中的关键字

replace
作用
replace 模块可以根据我们指定的正则表达式替换文件中的字符串,文件中所有被匹配到的字符串都会被替换

#常用参数

path指定要操作的文件
regexp指定一个正则表达式,文件中与正则匹配的字符串将会被替换。
replace指定最终要替换成的字符串。
backup是否在修改文件之前对文件进行备份,最好设置为yes。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

厄罗萌多

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值