初识ansible服务及ansible主机清单配置

目录

1、什么是自动化批量管理

2、自动化工具ansible架构

3、ansible服务专用术语对照表

4、设置主机清单(inventory)

4.1实验环境准备

4.2配置主机清单

4.2.1分组基本格式

4.2.2指定用户名,密码。端口

4.2.3子组

4.3查看

4.3.1看受管主机信息

4.3.2查看指定的组

4.3.3查看与使用指定的子组

4.3.4查看所有主机的情况

4.3.5查看某一台机器

[5、补充 :ansible中的颜⾊](#5、补充 :ansible中的颜⾊)


1、什么是自动化批量管理

重复性的工作与内容:思考如何自动化完成

部署环境,批量查看信息,批量检查,自动化。

2、自动化工具ansible架构

Ansible服务本身并没有批量部署的功能,它仅仅是一个框架,真正具有批量部署能力的是其所运行的模块。Ansible内置了上千个模块,会在安装Ansible时一并安装,通过调用指定的模块,就能实现特定的功能。Ansible内置的模块非常丰富,几乎可以满足一切需求,使用起来也非常简单,一条命令甚至影响上千台主机。

3、ansible服务专用术语对照表

|---------------|------|----------------------------------------------------------------------------------|
| 术语 | 中文叫法 | 含义 |
| Control node | 控制节点 | 指的是安装了Ansible服务的主机,也被称为Ansible控制端,主要是用来发布运行任务、调用功能模块,对其他主机进行批量控制。 |
| Managed nodes | 受控节点 | 指的是被Ansible服务所管理的主机,也被称为受控主机或客户端,是模块命令的被执行对象。 |
| Inventory | 主机清单 | 指的是受控节点的列表,可以是IP地址、主机名称或者域名。 |
| Modules | 模块 | 指的是上文提到的特定功能代码,默认自带有上千款功能模块,在Ansible Galaxy有超多可供选择。 |
| Task | 任务 | 指的是Ansible客户端上面要被执行的操作。 |
| Playbook | 剧本 | 指的是通过YAML语言编写的可重复执行的任务列表,把常做的操作写入到剧本文件中,下次可以直接重复执行一遍。 |
| Roles | 角色 | 从Ansible 1.2版本开始引入的新特性,用于结构化的组织Playbook,通过调用角色实现一连串的功能。 |

由于受控节点不需要安装客户端,外加SSH协议是Linux系统的标配,因此可以直接通过SSH协议进行远程控制。在控制节点上,也不用每次都重复开启服务程序,使用ansible命令直接调用模块进行控制即可

4、设置主机清单(inventory)

初次使用ansible遇到情况记录:

修改了参数但是没有生效

原因:ansible服务的主配置存在优先级的顺序关系

|-----|--------------------------|
| 优先级 | 文件位置 |
| 高 | ./ansible.cfg |
| 中 | ~/.ansible.cfg |
| 低 | /etc/ansible/ansible.cfg |

4.1实验环境准备

|------------|--------------------------------------|
| ansible环境 | 主机名 功能用途 ip |
| ansible管理端 | ansible 192.168.81.131/24 |
| 被管理端 | node2 开发机dev 192.168.81.132/24 |
| 被管理端 | node3 测试机test 192.168.81.133/24 |
| 被管理端 | node4 产品机prod 192.168.81.134/24 |
| 被管理端 | node5 产品机prod 192.168.81.135/24 |
| 被管理端 | node6 负载均衡机balancer192.168.81.136/24 |

4.2配置主机清单

主机清单文件修改后会立即生效

4.2.1分组基本格式
4.2.2指定用户名,密码。端口

|-----------|-----------------------|
| 主机清单中指定信息 | |
| 连接的ssh端口 | ansible_ssh_port=22 |
| 连接的ssh用户 | ansible_ssh_user=账户名 |
| 连接的ssh密码 | ansible_ssh_pass="密码" |

注\] 为了实验方便,我的每台机器的账号密码都是root 1 ###### 4.2.3子组 实验将prod组和test组合并为A组 ![](https://file.jishuzhan.net/article/1779310775425306626/e87daaff3782795ec4fcda991e3727bc.webp) ##### 4.3查看 ###### 4.3.1看受管主机信息 一般使用"ansible-inventory --graph"命令以结构化的方式显示出受管主机的信息。 ![](https://file.jishuzhan.net/article/1779310775425306626/909d16aad94e7b6c118ad89a070571ae.webp) ###### 4.3.2查看指定的组 ansible 组名 -m command -a 'hostname' ![](https://file.jishuzhan.net/article/1779310775425306626/f91839ca5a379510aa3a3bd7be3bb996.webp) ###### 4.3.3查看与使用指定的子组 ansible 子组名 -m command -a 'hosname' ![](https://file.jishuzhan.net/article/1779310775425306626/58ddecff66971f4a488d6bf3aeace7ce.webp) ###### 4.3.4查看所有主机的情况 ansible all -m command -a 'hostname' ![](https://file.jishuzhan.net/article/1779310775425306626/8ff5d36d0fbd5c74452b1cd4383d155e.webp) ###### 4.3.5查看某一台机器 ansible 机器IP地址 -m command -a 'hostname' ![](https://file.jishuzhan.net/article/1779310775425306626/828d1b13d96b68e7cd6f5a90e2fc37bc.webp) #### 5、补充 :ansible中的颜⾊ 绿⾊表示正常 ⻩⾊表示执⾏正常,状态变化. 红⾊表示错误,输出错误信息 紫⾊表示警告,建议. #为美好的开源世界贡献一份力量

相关推荐
honey ball6 小时前
R & S的EMI接收机面板
linux·运维·网络
木下-俱欢颜7 小时前
搭建基于chrony+OpenSSL(NTS协议)多层级可信时间同步服务
运维·网络安全·udp·ssl
旧故新长7 小时前
访问 Docker 官方镜像源(包括代理)全部被“重置连接”或超时
运维·docker·容器
柳如烟@8 小时前
在Rocky Linux 9.5上部署MongoDB 8.0.9:从安装到认证的完整指南
linux·运维·mongodb
struggle20258 小时前
AgenticSeek开源的完全本地的 Manus AI。无需 API,享受一个自主代理,它可以思考、浏览 Web 和编码,只需支付电费。
人工智能·开源·自动化
搬码临时工8 小时前
电脑怎么远程访问服务器?4种常见的简单方法
运维·服务器·网络·异地访问
北漂老男孩8 小时前
ChromeDriver 技术生态与应用场景深度解析
java·爬虫·python·自动化
QQ2740287568 小时前
Kite AI 自动机器人部署教程
linux·运维·服务器·人工智能·机器人·web3
文牧之9 小时前
PostgreSQL 配置设置函数
运维·数据库·postgresql
K龙10 小时前
私有资产测绘&安全流水线Shovel
运维·安全·开发·其它