Ansible学习笔记6

news2024/12/23 15:52:05

stat模块:获取文件的状态信息,类似Linux的stat状态。

获取/etc/fstab文件的状态。

[root@localhost tmp]# ansible group1 -m stat -a "path=/etc/fstab"
192.168.17.106 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "stat": {
        "atime": 1693322482.6770303,
        "attr_flags": "",
        "attributes": [],
        "block_size": 4096,

得到了json格式的文件。key-value。对于开发的人很喜欢这种键值对的格式,开发的时候非常方便。能够通过key得到值。

template模块(拓展)

与copy模块功能几乎是一样的。

template模块是不能拷贝目录的。

文件拷贝是可以的。

[root@localhost ~]# ansible group1 -m template -a "src=/etc/hosts dest=/etc/hosts"
192.168.17.106 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "checksum": "ae3c3e4f757591751a520e8a4bba45490e6c3164",
    "dest": "/etc/hosts",
    "gid": 0,
    "group": "root",
    "mode": "0644",
    "owner": "root",
    "path": "/etc/hosts",
    "size": 226,
    "state": "file",
    "uid": 0
}
192.168.17.105 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "checksum": "ae3c3e4f757591751a520e8a4bba45490e6c3164",
    "dest": "/etc/hosts",
    "gid": 0,
    "group": "root",
    "mode": "0644",
    "owner": "root",
    "path": "/etc/hosts",
    "size": 226,
    "state": "file",
    "uid": 0
}

那我们涉及到copy文件,建议还是使用copy模块来实现。

template模块首先使用变量来渲染jinja2模板文件成普通文件,然后再复制过去。而copy不支持。(jinja2是一个基于python的模板引擎。)

fetch模块:

fetch模块跟copy模块功能类似,但是作用相反,用于把远程主机上的文件拷贝到本地。

场景:把很多服务器上的日志拷贝到本地。日志集中管理。日志分析。

PV:pageview:点击率。

将/tmp/1.txt文件拷贝到本地。根据每台主机的IP地址或者别名存放在/tmp目录下。

[root@localhost ~]# ansible group1 -m fetch -a "src=/tmp/1.txt dest=/tmp"
192.168.17.105 | CHANGED => {
    "changed": true,
    "checksum": "d2911a028d3fcdf775a4e26c0b9c9d981551ae41",
    "dest": "/tmp/192.168.17.105/tmp/1.txt",
    "md5sum": "0d59da0b2723eb03ecfbb0d779e6eca5",
    "remote_checksum": "d2911a028d3fcdf775a4e26c0b9c9d981551ae41",
    "remote_md5sum": null
}
192.168.17.106 | CHANGED => {
    "changed": true,
    "checksum": "b27fb3c4285612643593d53045035bd8d972c995",
    "dest": "/tmp/192.168.17.106/tmp/1.txt",
    "md5sum": "cd0bd22f33d6324908dbadf6bc128f52",
    "remote_checksum": "b27fb3c4285612643593d53045035bd8d972c995",
    "remote_md5sum": null
}

主要为了区分不同的agent主机。

[root@localhost tmp]# ll
total 4
drwxr-xr-x  3 root root  17 Aug 30 13:36 192.168.17.105
drwxr-xr-x  3 root root  17 Aug 30 13:36 192.168.17.106
-rwx------. 1 root root 836 Aug 29 14:56 ks-script-edvhAX
-rw-------. 1 root root   0 Aug 29 14:53 yum.log
[root@localhost tmp]# cat 192.168.17.105/tmp/1.txt
agent1
[root@localhost tmp]# cat 192.168.17.106/tmp/1.txt
agent2

如果只fetch一个文件,那么路径也是这么一个过程。

说明:需要注意的是,不能fetch目录。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/948816.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据通信——传输层TCP(可靠传输原理的ARQ)

引言 上一篇讲述了停止等待协议的工作流程,在最后提到了ARQ自动请求重传机制。接下来,我们就接着上一篇的篇幅,讲一下ARQ这个机制 还是这个图来镇楼 ARQ是什么? 发送端对出错的数据帧进行重传是自动进行的,因而这种…

《Go 语言第一课》课程学习笔记(十三)

方法 认识 Go 方法 Go 语言从设计伊始,就不支持经典的面向对象语法元素,比如类、对象、继承,等等,但 Go 语言仍保留了名为“方法(method)”的语法元素。当然,Go 语言中的方法和面向对象中的方…

高忆管理:培育钻石价格大跌,力量钻石等多家概念股业绩下滑

8月29日,培养钻石板块直线拉升,其间沃尔德(688028.SH)涨幅达10.89%,力气钻石(301071.SZ)、惠丰钻石(839725.BJ)、四方达(300179.SZ)、黄河旋风(600172.SH&…

【STM32】学习笔记(TIM定时器)-江科大

TIM(Timer)定时器 定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断 16位计数器、预分频器、自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时 不仅具备基本的定时中断功能,而且…

SpringBoot实现简单的登录验证码

参考了一些资料,完成了这个验证码的功能,下面记录一下功能的实现过程。 一、效果图 二、实现原理 后台生成验证码图片,将图片传到前台。后台在session中保存验证码内容。前台输入验证码后传到后台在后台取出session中保存的验证码进行校验。…

x86架构 指令INT3只有一个字节的原因

文章目录 一、单字节原因简介二、断点原理三、单字节具体原因参考资料 一、单字节原因简介 INT3指令生成一个特殊的单字节操作码(CC),用于调用调试异常处理程序。(这种单字节形式很有价值,因为它可以用来用断点替换任何…

冠达管理:火爆!拼多多飙涨15%,中概股沸腾!这些外资巨头唱多中国资产

当地时间8月29日,美国三大股指团体收涨,道指涨0.85%,标普500指数涨1.45%,纳指涨1.74%。科技股大涨,特斯拉涨7.69%,英伟达涨4.16%。纳斯达克我国金龙指数收涨3.7%,拼多多涨超15%。 广东研山私募…

开源百度电商小程序源码 含完整代码包+安装部署教程 一键搭建商城小程序

分享一款开源百度电商小程序源码,含完整代码包安装部署教程,一键搭建商城小程序,源码开源可二开,已测试完美运营版,帮你一键搭建百度商城小程序,含多套模板、自由DIY功能和完整的搭建部署教程。程序支持除百…

微信测试号实现微信分享等功能

目录 1 申请微信测试号 2 测试号信息 3 下载微信的测试代码 4 将下载的代码放到自己的服务器上 5 接口配置信息 6 JS安全域名 ​7 扫码关注,只有关注的微信号才能测试 ​8 修改sample.php文件 9 在微信上打开,并分享 10 问题 1 申请微信测试号 …

【USRP】调制解调系列1:AM、FM解调

AM,DSB,SSB和VSB的联系是都为幅度调制(调幅) 区别: AM是调幅,带载波。 DSB是抑制载波的调幅,可增加功率效率,但两个边带均传输相同的信息。 SSB单边带抑制了一个边带&#xff0c…

高忆管理:etf联接基金有哪些?

ETF联接基金自面世以来,就备受出资者重视,由于它可以以比较低的本钱获得和国际市场相同的收益,而且具备杰出的流动性和简略易懂的买卖方法。那么,ETF联接基金都有哪些呢? 一、什么是ETF联接基金? ETF联接基…

Vue怎么安装?看这一篇就够了!

Vue2.0 安装 一般我们都不会单独用 npm 去安装 Vue 插件,而是通过脚手架 Vue CLI 去初始化一个 Vue 项目。 Vue CLI 安装 ::: warning 注意 使用默认的镜像源安装 npm 第三方包可能要很长时间,建议你已经替换了新的镜像源。如需要请查看 npm 镜像源修…

不用订阅,不用破解,永久免费使用Axure最新版教程

首先去官网下载最新的axure,你没听错,就是最新的。 下载网址:Axure RP - UX Prototypes, Specifications, and Diagrams in One Tool 下载完后解压安装到本地,并注册属于你自己的账户,开始试用。可惜的是只有30天的试…

零基础如何备考通过PMP?

​01为什么要去考?新手能考吗? 首先PO一个官方解释: PMP——项目管理专业人士资格认证,由项目管理协会(Project Management Institute)发起,在全球206多个国家和地区得到高度认可。 通俗点说就…

如何自己实现一个丝滑的流程图绘制工具(七)bpmn-js 批量删除、复制节点

背景 希望实现批量删除和复制节点,因为bpmn-js是canvas画的,所以不能像平时页面上的复制一样直接选择范围,会变成移动画布。 思路是: 绘制一个选择的效果框,这样才可以看出来选的节点有哪些。 上面的选中范围框效果…

CSS 实现平面圆点绕椭圆动画

前言 👏CSS实现平面圆点绕椭圆动画,速速来Get吧~ 🥇文末分享源代码。记得点赞关注收藏! 1.实现效果 2.实现原理 transform-style:CSS 属性 transform-style 设置元素的子元素是位于 3D 空间中还是平面中。如果选择平面&#xf…

Python GUI应用程序开发之wxPython使用详解

概要 wxPython是一个强大的跨平台GUI工具包,它使用Python编程语言开发,提供了丰富的控件功能。如果你是一名Python开发者,而且希望创建一个功能齐全的桌面应用程序,那么wxPython是一个值得考虑的选择。 什么是wxPython wxPython…

【论文阅读】你看不见我:对基于激光雷达的自动驾驶汽车驾驶框架的物理移除攻击

文章目录 AbstractIntroduction Abstract 自动驾驶汽车(AVs)越来越多地使用基于激光雷达的物体检测系统来感知道路上的其他车辆和行人。目前,针对基于激光雷达的自动驾驶架构的攻击主要集中在降低自动驾驶物体检测模型的置信度,以诱导障碍物误检测&…

宏观经济和风电预测误差分析(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

【LeetCode-中等题】199. 二叉树的右视图

文章目录 题目方法一&#xff1a;层序遍历取每一层最后一个元素方法二&#xff1a;深度优先搜索 题目 方法一&#xff1a;层序遍历取每一层最后一个元素 // 方法一 &#xff1a;层序 集合(取每层子集合最后一个元素)// List<List<Integer>> Rlist new ArrayList…