当前位置: 首页 > news >正文

Ansible自动化运维中的Setup收集模块应用详解

作者主页:点击! 

Ansible专栏:点击!

创作时间:2024年5月22日13点14分


💯趣站推荐💯

前些天发现了一个巨牛的🤖人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家,人工智能, 机器算法等......  点击跳转网页!icon-default.png?t=N7T8https://www.captainbed.cn/sis

Setup模块是Ansible中最常用的模块之一,用于收集有关目标主机的各种信息,这些信息被称为Facts。Facts信息涵盖了操作系统、硬件、软件、网络配置等方面,可以用于各种自动化运维任务。

🎆Setup模块的作用优点

  1. 简单易用:使用Setup模块非常简单,只需在Playbook中添加一个setup任务即可开始收集目标主机的信息。这种简单易用的特性使得即使是初学者也能快速上手。

  2. 全面的信息收集:Setup模块能够收集各种系统信息,包括硬件、操作系统、网络、内存、CPU等方面的信息。这使得管理员可以全面了解目标主机的状态,为系统管理和故障排查提供了有力支持。

  3. 实时性:Setup模块是在每次Playbook运行时实时收集信息的,因此你可以始终获取到目标主机的最新状态。这有助于及时发现并解决系统问题,确保系统的可靠性和稳定性。

  4. 可定制性:你可以根据需要定制Setup模块的行为,只收集你感兴趣的信息,从而避免收集大量无用的数据,减少数据传输和处理的开销。

  5. 与条件执行结合:收集到的信息可以与条件执行结合使用,从而实现根据不同主机状态执行不同任务的灵活性。这种灵活性使得你可以根据系统状态采取相应的措施,实现更智能的自动化运维。

  6. 与其他模块集成:Setup模块与其他Ansible模块无缝集成,可以与模块如Template、Copy、File等结合使用,实现根据收集到的信息动态生成配置文件、更新文件内容等功能。

🥈Facts含义

在Ansible中,Facts是指由Ansible自动收集的关于目标主机(也称为受管节点)的各种信息。这些信息包括硬件、操作系统、网络、内存、CPU等方面的数据。当Ansible执行Playbook时,它会默认执行一个名为"Gather Facts"的任务,该任务会在目标主机上运行一个特殊的模块(通常是setup模块),以收集各种系统信息,并将这些信息存储在内存中。

参数

Facts信息含义
ansible_all_ipv4_addresses所有目标主机的 IPv4 地址列表。
ansible_all_ipv6_addresses所有目标主机的 IPv6 地址列表。
ansible_date_time系统时间。
ansible_kernel内核版本。
ansible_default_ipv4默认网关的 IPv4 地址。
ansible_default_ipv6默认网关的 IPv6 地址。
ansible_distributionLinux 系统发行版本,例如 CentOS、Ubuntu、等。
ansible_nodename主机名。
ansible_pkg_mgr包管理器,例如 yum、apt、dpkg 等。
ansible_python_versionPython 版本。
ansible_processor_coresCPU核数。
ansible_processor_count逻辑 CPU 核心数,包括超线程。
ansible_cpu_infoCPU 信息字典,包含 CPU 频率、架构等信息。
ansible_mem_total总内存容量。
ansible_mem_free可用内存容量。
ansible_mem_used已使用内存容量。

✡️实例

1. 收集所有Facts信息
- name: 收集所有Facts信息hosts: alltasks:- name: 收集所有Facts信息setup:

该Playbook会连接到所有目标主机,并收集所有Facts信息。

2. 收集特定Facts信息
- name: 收集特定Facts信息hosts: alltasks:- name: 收集硬件信息setup:gather_subset: hardware- name: 收集网络信息setup:gather_subset: network- name: 收集Fact信息setup:gather_subset: fact- name: 收集配置信息setup:gather_subset: config- name: 不收集任何Facts信息setup:gather_subset: none

该Playbook会分别收集硬件信息、网络信息、Fact信息、配置信息,以及不收集任何Facts信息

3. Facts信息收集的参数
- name: 设置Facts信息收集的参数hosts: alltasks:- name: 设置Facts信息收集的超时时间为 120 秒setup:gather_timeout: 120- name: 将Facts信息存储在 /tmp/facts.d 目录中setup:fact_path: /tmp/facts.d- name: 覆盖 host_uuid Facts信息setup:gather_overrides:ansible_facts:host_uuid: "my-uuid"- name: 收集子目录中的Facts信息setup:gather_subdirs: yes- name: 指定Facts信息收集的配置文件setup:gather_profile: default- name: 收集CLI Facts信息setup:gather_cli_facts: yes

该Playbook会设置Facts信息收集的超时时间、存储路径、覆盖特定Facts信息、收集子目录信息、指定配置文件、以及收集CLI Facts信息。

😶‍🌫️实验操作

实验目的通过一台ansible服务器来查看服务器的信息

帮助手册

ansible-doc setup

1.扫描主机信息
[root@ansible ~]# ansible host1 -m setup  扫描host1的主机各种各样的详细信息太详细了
  • host 1:这是您要管理的目标计算机的主机名或IP地址。
  • -m setup:指定要运行的模块。在本例中,它是“setup”模块,负责收集有关目标主机的事实(信息)。

运行此命令时会发生什么?

1.Ansible尝试使用配置的方法(默认情况下通常是SSH)建立到目标主机“host1”的连接。

2.如果连接成功,Ansible会在目标主机上执行“setup”模块

  • 设置模块收集有关目标主机的各种信息,例如:
  • 操作系统详细信息(版本、名称等)
    • Hardware information (CPU cores, memory, etc.)
    • 安装的软件包
    • 网络配置(IP地址、接口等)
  • 这些信息被收集并发送回Ansible控制机。
  • 这些信息存储为Ansible Facts,可用于Ansible Playbook中的后续任务。
2.ip地址信息
[root@ansible ~]# ansible host1 -m setup -a 'filter=ansible_all_ipv4_addresses'

如何调用cpu信息呢大家去试试吧

相关文章:

Ansible自动化运维中的Setup收集模块应用详解

作者主页:点击! Ansible专栏:点击! 创作时间:2024年5月22日13点14分 💯趣站推荐💯 前些天发现了一个巨牛的🤖人工智能学习网站,通俗易懂,风趣幽默&#xf…...

再次学习History.scrollRestoration

再次学习History.scrollRestoration 之前在react.dev的源代码中了解到了这个HIstory的属性,当时写了一篇笔记来记录我对它的理解,现在看来还是一知半解。所以今天打算重新学习一下这个属性,主要从属性以及所属对象的介绍、使用方法&#xff0…...

python PyQt5 数字时钟程序

效果图: 概述 本文档将指导您如何使用Python的PyQt5库创建一个简单的时钟程序。该程序将显示当前时间,并具有以下特性: 始终在最前台显示。窗口可拖动。鼠标右键点击窗口可弹出退出菜单。时间标签具有红色渐变效果。窗口初始化时出现在屏幕…...

骨传导耳机哪个品牌值得入手?精选五大不容错过的王者品牌推荐!

尽管骨传导耳机作为新型蓝牙耳机问世不久,但凭借其独特的传音方式和舒适的佩戴体验,已经迅速在市场上崭露头角,赢得了广大音乐爱好者和运动达人的青睐。然而,随着骨传导耳机热度增高,市场上开始出现一些品质参差不齐的…...

Vue.js|项目安装

根据Vue脚手架创建出来的项目目录: 运行项目: 控制台中输入下面的命令: npm run serve 修改vue项目运行端口: 前往vue.config.js中添加下面的代码: devServer: {port: 7000} 接着前往控制台输入Ctrlc关闭项目&…...

多线程新手村4--定时器

定时器是日常开发中很常见的组件,定时器大家可能不知道是干什么的,但是定时炸弹肯定都听过,定个时间,过一段时间后bomb!!!爆炸 定时器的逻辑和这个一样,约定一个时间,这…...

如何衡量安全阀检测的价格与价值?一文揭晓答案

安全阀作为工业设备中的重要组件,其性能的稳定性和可靠性直接影响着整个系统的安全运行。因此,对安全阀进行定期检测和维护显得尤为重要。 那么,安全阀检测一个需要多少钱呢? 在这篇文章中,佰德将从检测费用构成、市…...

Sectigo证书介绍以及申请流程

Sectigo (原Comodo CA)是全球SSL证书市场占有率最高的CA公司,目前将近40%的SSL证书用户选择了Sectigo。由于其产品安全,价格低,受到大量站长的信任和欢迎。Sectigo旗下的SSL证书品牌包括Sectigo, Positive SSL, Sectigo Enterprise等。 品牌…...

网络安全-钓鱼篇-利用cs进行钓鱼

一、环境 自行搭建,kill,Windows10,cs 二、原理 如图所示 三、钓鱼演示 首先第一步:打开System Profiler-分析器功能 选择克隆www.baidu.com页面做钓鱼 之后我们通过包装域名,各种手段让攻击对象访问:h…...

机器学习-6-对随机梯度下降算法SGD的理解

参考一文带您了解随机梯度下降(Stochastic Gradient Descent):python代码示例 参考sklearn-SGDClassifier 1 梯度下降 在机器学习领域,梯度下降扮演着至关重要的角色。梯度下降是一种优化算法,通过迭代沿着由梯度定义的最陡下降方向,以最小化函数。类似于图中的场景,可以…...

windows 11 精简版下载

Optimum 11 24H2 家庭版和专业版版本在性能、响应能力和资源使用方面相同,因此请下载并安装适合您笔记本电脑的正确版本或在您的 PC 上获得终极 Windows 11 24H2 体验的许可证! • 如果您熟悉我们的 22H2 和 23H2 Optimum 11 版本,此版本将…...

rpm与yum扩展、命令

目录 系统安装软件方式 1、rpm方式 命令 yum方式 安装 更新和升级 查找与显示 删除程序 清除缓存 仅下载 系统安装软件方式 1、rpm方式 优点:无需网络安装软件 缺点:无法解决软件依赖 命令 rpm -ivh 安装 --nodeps忽略依赖关系 --force强…...

SpringBoot实现接口防抖的几种方案,杜绝重复提交

插: AI时代,程序员或多或少要了解些人工智能,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家(前言 – 人工智能教程 ) 坚持不懈,越努力越幸运,大家…...

了解VS安全编译选项GS

缓冲区溢出攻击的基本原理就是溢出时覆盖了函数返回地址,之后就会去执行攻击者自己的函数; 针对缓冲区溢出时覆盖函数返回地址这一特征,微软在编译程序时使用了安全编译选项-GS; 目前版本的Visual Studio中默认启用了这个编译选项…...

python 垃圾回收机制

简介 在Python中,垃圾回收是自动管理内存的一个重要方面。Python使用了一种称为引用计数的策略来跟踪对象的引用数目。当对象的引用计数降为零时,Python解释器就会自动释放该对象所占用的内存空间。 除了引用计数之外,Python还使用了其他一…...

深度学习设计模式之组合模式

文章目录 前言一、介绍二、详细分析1.核心组成2.实现步骤3.代码示例4.优缺点优点缺点 5.使用场景 总结 前言 组合模式是将对象组合成树形结构来表现"整体/部分"层次结构,可以更好的实现管理操作。 一、介绍 组合设计模式又叫部分整体模式,将…...

C++ 网络编程

一、Reactor 网络编程模型 reactor 是一个事件处理模型。网络处理:因为用户层并不知道 IO 什么时候就绪,所以将对 IO 的处理转化为对事件的处理。网络模型构成: 非阻塞 IO:操作 IO,如果 IO 未就绪,IO 函数会立刻返回。IO 多路复用:检测多路 IO 是否就绪。工作流程: 注册…...

服务案例|网络攻击事件的排查与修复

LinkSLA智能运维管家V6.0版支持通过SNMP Trap对设备进行监控告警,Trap是一种主动推送网络设备事件或告警消息的方式,与SNMP轮询(polling)不同,具有以下几点优势: 1. 实时监控与快速响应 SNMP Trap能够实时…...

如何使用宝塔面板搭建Tipask问答社区网站并发布公网远程访问

文章目录 前言1.Tipask网站搭建1.1 Tipask网站下载和安装1.2 Tipask网页测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道(云端设置)2.3 Cpolar稳定隧道(本地设置) 3. 公网访问测试4.结语 前…...

Git学习和使用指南简单篇

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...

HTTPS单双向认证流程详解与联想

HTTPS单向认证 HTTPS在单向认证传输的过程中会涉及到三个密钥: 服务端的公钥和私钥,用来进行非对称加密交换密钥 客户端生成的随机密钥,用来进行对称加密传输数据 认证过程 1.客户端向服务器发起HTTPS请求,连接到服务器的443端…...

防止浏览器缓存了静态的配置等文件(例如外部的config.js 等文件)

防止浏览器缓存了静态的配置文件 前言1、在script引入的时候添加随机数1.1、引入js文件1.2、引入css文件 2、通过html文件的<meta>设置防止缓存3、使用HTTP响应头&#xff1a; 前言 在实际开发中浏览器的缓存问题一直是一个很让人头疼的问题&#xff0c;尤其是我们打包时…...

【Umi】umi-max 中使用 Dva

前置介绍 Umi 是一个基于 React 的可插拔企业级前端应用框架&#xff0c;Umi 提供了一系列的插件和约定&#xff0c;使得开发者能够以约定大于配置的方式进行开发&#xff0c;同时还支持丰富的功能扩展和插件机制。 Dva 是一个基于 Redux、Redux-Saga 和 React-Router 的数据…...

Inno Setup 深入浅出-文件的显示

【1】在需要打包的文件中&#xff0c;新建一个文本文件&#xff0c;如License.txt 注意&#xff1a;中文的编码格式需要GB2312&#xff0c;否则显示乱码 【2】读取、显示文本 [Code] procedure Init_ShowLicense(); var tmpFont:TFont; begin editLicense : TMemo.C…...

数据链路层协议——以太网协议

目录 一、认识以太网 二、以太网帧格式 三、MTU 四、ARP协议 ARP协议 ARP协议格式 ARP缓存表 一、认识以太网 前面&#xff0c;我们讲到了网络层的IP协议&#xff0c;它通过目的IP&#xff0c;子网划分&#xff0c;路由表查找及其算法等方式让IP报文能够从一个主机到另一…...

一篇讲透数据结构之链式队列

目录 一.队列的定义 二.队列的分类 三.队列的功能 四.链式队列的声明 五.链式队列功能的实现 5.1 初始化队列 5.2 判断队列是否为空 5.3 获取队头元素 5.4 获取队尾元素 5.5获取队列长度 5.6 入队 5.7出队 5.8 打印队列元素 5.9 销毁队列 一.队列的定义 队列&…...

【408真题】2009-24

“接”是针对题目进行必要的分析&#xff0c;比较简略&#xff1b; “化”是对题目中所涉及到的知识点进行详细解释&#xff1b; “发”是对此题型的解题套路总结&#xff0c;并结合历年真题或者典型例题进行运用。 涉及到的知识全部来源于王道各科教材&#xff08;2025版&…...

6年IT找工作想法

由于我学历比较低&#xff0c;当时没好好学&#xff0c;后面参加了大数据培训&#xff0c;现在也已经有6年了。 我是计算机专业的&#xff0c;我的培训同学有些不是计算机的&#xff0c;但是是本科&#xff0c;双非一本的这种&#xff0c;在6年后和我的差距不是一点点了&#x…...

TOPSIS综合评价

TOPSIS法&#xff08;Technique for Order Preference by Similarity to an Ideal Solution&#xff09;是一种常用的综合评价方法&#xff0c;该方法根据有限个评价对象与理想化目标的接近程度进行排序&#xff0c;是在现有的对象中进行相对优劣的评价。 TOPSIS法的原理是通过…...

修改vuetify3的开关组件v-switch在inset模式下的大小

<v-switchv-model"model":label"Switch: ${model.toString()}"hide-detailsinset></v-switch>使用方式1&#xff1a;本页面使用 本页面中使用&#xff0c;必须要含有lang“scss” scoped&#xff0c;才会生效 <style lang"scss"…...