Linux自动化运维工具ansible详解

本文详细介绍了Ansible这一自动化运维工具,包括其基于SSH的工作原理、主机清单、剧本、模块和插件的组成。通过实例展示了如何使用Ansible进行远程主机的操作,如创建目录、复制文件、执行命令、管理服务等,以及常用模块如copy、fetch、command、shell、file、cron、yum和服务模块的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

认识ansible

ansible是一个自动化运维工具的名称,集合了众多运维工具的优点(puppet、fabric、slatstack),实现批量系统配置,程序的部署,批量运行命令等。
基于ssh协议,只要管理员通过ssh登录到一台远程主机上能做的操作,ansible都可以做到

优点:配置非常简单,用起来很方便
缺点:细腻度不够

ansible基于python开发,依赖于:paramiko、PyYaml 和 jinja 三个关键组件

ansible的组成

1、host inventory
主机清单:定义客户机,可以对客户机进行分类,如db类、web类等等

2、playbook
剧本:让主机按照我给定的剧本去完成一些事情

3、module
模块:实现一个个功能的程序

4、pluging
插件:实现一些额外的小功能

ansible的相关文件

主配置文件: /etc/ansible/ansible.cfg
此文件主要定义了roles_path的路径,主机清单路径,连接清单中的主机方式等等

配置文件: /etc/ansible/hosts
这个配置文件就是默认的主机清单配置文件,可以通过ansible.cfg 重新定义

可执行文件
ansible
主执行程序,一般用于命令行下执行

ansible-playbook
执行playbook中的任务

ansible-doc
获取各模块的帮助信息

ansible的使用

HOST-PATTERN 匹配主机模式,如all表示所有主机
-m 即MOD_NAME 指定模块名,如ping
-a 即MOD_ARGS 指定模块执行的参数
-f 即FORKS 指定生成几个子进行程执行
-C 表示不执行,模拟跑
-u 即Username 指定某主机的用户名
-c 即CONNection 指定连接方式(default smart)

配置
准备三台机器:
主控机 server:192.168.2.150
客户机1 client01:192.168.2.143
客户机2 client02:192.168.2.154

准备工作:做好免密通道,主控机可以免密登录到两台远程主机
怎么建立免密通道看这里👉:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值