从零学习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 | 任务脚本或命令 |
disabled | yes 禁用计划任务,no 启动计划任务 |
state | absent 删除计划任务 |
十三、软件仓库配置模块
##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。 |
相关文章:

从零学习Linux操作系统 第三十一部分 ansible常用模块介绍
一、ansible运行模块的两种方式 Ad-Hoc方式 ##利用ansible命令直接完成管理,主要用于临时命令使用场景 playbook方式 ##ansible脚本,主要用于大型项目场景,需要前期的规划,相当于shell当中的脚本 二、如何查看模块帮助 ansible…...

【Linux C | 网络编程】多播的概念、多播地址、UDP实现广播的C语言例子
😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…...

HarmonyOS NEXT应用开发案例——滑动页面信息隐藏与组件位移效果
介绍 在很多应用中,向上滑动"我的"页面,页面顶部会有如下变化效果:一部分信息逐渐隐藏,另一部分信息逐渐显示,同时一些组件会进行缩放或者位置移动。向下滑动时则相反。 效果图预览 使用说明 向上滑动页面…...
ffmpeg 转码过程中参数含义
ffmpeg 转码过程中参数含义 frame 649 fps 73 q28.0 size 3072kB time00:00:25.88 bitrate 972.4kbits/ frame 694 fps 74 q28.0 size 3328kB time00:00:27.68 bitrate 984.9kbits/ frame 732 fps 74 q28.0 size 3584kB time00:00:29.20 bitrate1005.5kbits/ fram…...

探索c++——了解c++的魅力
前言:c是一门既面向对象又面向过程的语言。 不同于java纯粹的面向对象和c纯粹的面向过程。 造成c该特性的原因是c是由本贾尼大佬在c的基础上增添语法创建出来的一门新的语言。 它既兼容了c, 身具面向过程的特性。 又有本身的面向对象的特性。 面向对象和…...
Oracle常用语句语法
1 第一章Oracle命令 转载至 Oracle常用语句语法汇总 https://www.modb.pro/db/1759752946170548224 a) 系统管理员连接 conn */* as sysdba b) 查询当前用户 show user c) 创建新用户 create user 用户名 identified by 密码(密码不能以数字开头)。例如…...

时隔n年再度会看Vue,Git
时隔n年再度会看Vue,Git 曾经沧海难为水,除却巫山不是云。不知道这句话用在这里合不合适,好多东西在记忆中都淡化了。但是互联网确是有记忆的。研究以前项目的时候,翻看到gitee码云上托管的项目,就像是自己的孩子重新又回来了一样…...
SpringCloud-Zuul网关的使用
在SpringCloud中网关Zuul起什么作用? 在Spring Cloud中,Zuul 是一个边缘服务网关,起着以下作用:反向代理:Zuul 可以作为应用程序的反向代理服务器,接收客户端请求并将请求转发给相应的服务。这使得客户端可…...
mysql 中的一些重要函数
show create table user_profile 查看表结构 1.datediff(end_date,start_date)函数,now(), curdate() curtime() date_add(日期,interval num 时间) date_format(日期,格式) 4.select IFNULL(null,0); oracle 中nvl 函数 5.select IF(2 > 1, 2,0)ÿ…...

windows11配置电脑IP
windows11配置电脑IP 选择"开始>设置>“网络&Internet >以太网”。在 "属性"下,编辑IP地址,子网掩码,网关以及DNS。...

【JavaEE】_前端POST请求使用json向后端传参
目录 1. 关于json 2. 通过Maven仓库,将Jackson下载导入到项目中 3. 使用Jackson 3.1 关于readValue方法 3.2 关于Request.class类对象 3.3 关于request对象的属性类型 3.4 关于writeValueAsString 前端向后端传递参数通常有三种方法: 第一种&…...

大语言模型系列-GPT-2
文章目录 前言一、GPT-2做的改进二、GPT-2的表现总结 前言 《Language Models are Unsupervised Multitask Learners,2019》 前文提到,GPT-1利用不同的模型结构微调初步解决了多任务学习的问题,但是仍然是预训练微调的形式,GPT-…...

30m二级分类土地利用数据Arcgis预处理及获取
本篇以武汉市为例,主要介绍将土地利用数据转换成武汉市内各区土地利用详情的过程以及分区统计每个区内各地类面积情况,后面还有制作过程中遇到的面积制表后数据过小的解决方法以及一些相关的知识点: 示例数据下载链接:数据下载链…...
LeetCode-22题:括号生成(原创)
【题目描述】 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 【题目链接】. - 力扣(LeetCode) 【解题代码】 package dp;import java.util.ArrayList; import java.util.Arrays; im…...

如何应对IT服务交付中的问题?看了本文DevOps就懂了
👨🎓博主简介 🏅云计算领域优质创作者 🏅华为云开发者社区专家博主 🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支…...

Ubuntu23.10禁用Wayland
禁用前 编辑custom.conf文件 sudo vim /etc/gdm3/custom.conf 去掉WaylandEnablefalse前的#号 保存退出 重启系统 生效: 成功转换为X11...

Sora: 大型视觉模型背景、技术、局限性和机遇的综述
论文链接:https://arxiv.org/pdf/2402.17177.pdf 背景 在分析 Sora 之前,研究者首先盘点了视觉内容生成技术的沿袭。 在深度学习革命之前,传统的图像生成技术依赖于基于手工创建特征的纹理合成和纹理映射等方法。这些方法在生成复杂而生动…...

比较 2 名无人机驾驶员:借助分析飞得更高
近年来,越来越多的政府和执法机构使用无人机从空中鸟瞰。为了高效执行任务,无人机必须能够快速机动到预定目标。快速机动使它们能够在复杂的环境中航行,并高效地完成任务。成为认证的无人机驾驶员的要求因国家/地区而异,但都要求您…...

Vue开发实例(六)实现左侧菜单导航
左侧菜单导航 一、一级菜单二、二级菜单三、三级菜单1、加入相关事件 四、菜单点击跳转1. 创建新页面2. 配置路由3. 菜单中加入路由配置4、处理默认的Main窗口为空的情况 五、动态左侧菜单导航1、动态实现一级菜单2、动态实现二级菜单 一、一级菜单 在之前的Aside.vue中去实现…...

[嵌入式系统-37]:龙芯1B 开发学习套件 -6-协处理器CP0之CPU异常处理与外部中断控制器的中断处理
目录 一、CP0概述 1.1 CP0概述 1.2 龙芯异常exception与中断interrupt的区别 二、CPU协处理器的异常处理 三、外部中断与外部中断控制器 3.1 外部中断源 3.2 如何配置外部中断源 3.3 外部中断的中断向量表 3.2.1 软件中断向量表结构定义:ls1b_irq.c 3.2.2…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...

linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...