Ansible学习笔记

2024/7/28 Ansible

Ansible是一个基于Python开发的自动化运维工具,可以用来配置系统、部署软件和编排其他系统任务。Ansible架构相对比较简单,仅需通过SSH连接客户机执行任务即可。

Ansible官网:https://www.ansible.com/ (opens new window)

# Ansible的安装方式

以下是在基于Red Hat的系统(如CentOS和Fedora)中使用yum安装Ansible的步骤:

# 先安装epel-release,安装Ansible的机器和被Ansible管理的机器都需要安装epel-release
yum -y install epel-release
yum -y install ansible
1
2
3

查看Ansible的版本

ansible --version
1

更多安装方式:https://docs.ansible.com/ansible/latest/installation_guide/index.html (opens new window)

# Ansible的目录结构

配置文件目录 :/etc/ansible/    执行文件目录 :/usr/bin/    Lib库依赖目录:/usr/lib/pythonX.X/site-packages/ansible/    Help文档目录 :/usr/share/doc/ansible-X.X.X/    Man文档目录 :/usr/share/man/man1/

# Ansible的配置文件

Ansible的配置文件是:/etc/ansible/ansible.cfg,以下是常见的配置项:

# 这个参数表示资源清单(主机清单)inventory文件的位置
inventory = /etc/ansible/hosts
# 指向存放Ansible模块的目录,支持多个目录方式,只要用冒号(:)隔开就可以
library = /usr/share/ansible
# 并发连接数,默认为5
forks = 5      
# 设置默认执行命令的用户
sudo_user = root
# 指定连接被管节点的管理端口,默认为22端口,建议修改,能够更加安全
remote_port = 22
# 设置是否检查SSH主机的密钥,值为True/False。关闭后第一次连接不会提示配置实例
host_key_checking = False
# 设置SSH连接的超时时间,单位为秒
timeout = 60
# 指定一个存储ansible日志的文件(默认不记录日志)
log_path = /var/log/ansible.log
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# Ansible的常用模块

# Ansible的ad-hoc模式(临时命令)

# Ansible的playbook模式(剧本模式)

# Ansible的role模式(角色模式)