一线运维实战手记 · 云计算 · 数据库 · 故障排查
Open Source Tool

Ansible:无代理的自动化运维工具

Ansible 是 Red Hat 旗下的开源自动化运维工具,通过 SSH 直接管理目标主机,无需在客户端安装任何代理,用人类可读的 YAML 描述「最终状态」。

核心优点

  • 无代理架构:只要目标主机能 SSH,就能被管理,几乎零侵入。
  • 幂等性:重复执行同一 Playbook 结果一致,不会重复应用配置。
  • YAML 可读:配置即代码,天然适合版本管理与代码评审。
  • 模块丰富:系统、网络、云、容器等数千个现成模块。
  • 批量执行:一条命令对几百台主机并行执行任务。

快速上手

# 安装(Ubuntu/Debian)
apt install ansible

# ad-hoc 批量执行:检查所有主机存活
ansible all -i hosts.ini -m ping

# 批量执行 shell 命令
ansible all -i hosts.ini -m shell -a 'uptime'

Playbook 最小示例

---
- hosts: web
  become: yes
  tasks:
    - name: 安装 Nginx
      apt:
        name: nginx
        state: present
    - name: 启动并开机自启
      service:
        name: nginx
        state: started
        enabled: yes

适用场景

批量服务器初始化、配置标准化、应用发布、安全加固(如批量关闭密码登录)、混合云环境统一管理。

下载地址