openEuler 下 Ansible 基础命令详解与实操演示2


一、每条命令详细解释(小白都能懂)


1. ansible all --list-hosts

作用:列出 all 组里所有被管理主机

  • all = 主机清单里 [all] 这个分组
  • --list-hosts = 只显示主机列表,不执行任何操作

输出效果:


2. ansible mygroup --list-hosts

作用:列出 mygroup 组里所有主机

  • 如果你清单里没有 [mygroup],就会报错:找不到主机

3. ansible test02 -m ping

作用:测试 test02 主机是否能被 Ansible 管理

  • -m ping = 使用 ping 模块
  • 不是网络 ping,是 SSH 连通性测试
  • 返回 pong 就代表成功

成功输出:

plaintext

复制代码
SUCCESS => { "ping": "pong" }

4. ansible test02 -m ping -a "data=hahahaha"

作用

  • 使用 Ansible 的 ping 模块 测试与 test02 节点的连通性
  • -a "data=hahahaha":给 ping 模块传递自定义返回内容
  • 执行成功后,会把你写的 hahahaha 原封不动返回给你

5. ansible --help

作用:查看 ansible 命令帮助

  • 显示所有参数说明
  • 新手必用

6. ansible test02 -m user -a "name=zhangsan"

作用:在 test02 上创建用户 zhangsan

  • -m user = 使用用户管理模块
  • -a "name=zhangsan" = 指定用户名为 zhangsan
  • 具备幂等性(重复执行不会报错)

7. 幂等性(最重要概念)

一句话解释: 无论执行多少次,结果都一样,不会重复创建、重复修改。

例子:

  • 第一次执行:创建用户 zhangsan ✅
  • 第二次执行:发现用户已存在,不做任何操作 ✅
  • 不会报错、不会重复创建

这就是 Ansible 最核心特性:幂等性


8. ansible test02 -m command -a "ls" -v

作用:在 test02 主机上执行 Linux 命令 ls

运行

ansible test02 -m command -a "ls" -v

  • ansible test02:对目标主机 test02 执行操作
  • -m command:调用 command 模块,在远程执行 Shell 命令
  • -a "ls":要执行的命令是 ls(列出当前目录文件)
  • -v:verbose 模式,显示更详细的执行过程

输出就是 test02 上的文件列表


二、8 条命令超级精简总结

复制代码
1. ansible all --list-hosts        查看 all 组所有主机
2. ansible mygroup --list-hosts    查看 mygroup 组所有主机
3. ansible test02 -m ping          测试 test02 连通性
4. ansible test02 -m ping -a "data=xxx" 自定义返回内容
5. ansible --help                  查看帮助
6. ansible test02 -m user -a "name=zhangsan" 创建用户
7. 幂等性:重复执行结果不变,不重复创建
8. ansible test02 -m command -a "ls" 远程执行 ls 命令
相关推荐
拾贰_C2 小时前
【Ubuntu | install | 安装软件】 Ubuntu软件安装多种方式以及卸载
linux·运维·ubuntu
One_Blanks2 小时前
WIndows ShellCode开发 第四章 动态API调用
windows·网络安全·渗透测试
梦想的旅途22 小时前
效率革命:实现外部群聊信息的自动化同步方案
运维·自动化
idolao2 小时前
RStudio 2025 + R 4.5.0 安装与配置教程 Windows版:解压+双软件安装+自定义路径+R语言关联指南
windows
·醉挽清风·2 小时前
学习笔记—Linux—信号阻塞&信号捕捉
linux·笔记·学习
杨云龙UP2 小时前
Linux生产环境下Oracle RMAN 备份、核查、清理与验证常用命令整理_20260330
linux·运维·服务器·数据库·oracle
网硕互联的小客服3 小时前
CentOS系统如何卸载桌面并以shell 字符界面启动?
运维·服务器·网络·安全
A.A呐3 小时前
【Linux第二十二章】https
linux·https
Leo655353 小时前
动态透视报表 + 查询接口 + Excel导出
开发语言·windows·python