Ansible统一管理多台Linux服务器的核心是免密SSH连接、inventory分组定义、模块驱动和playbook编排;无需被控端安装客户端,只需SSH可达且Python版本≥2.6即可批量执行命令、部署配置与服务管理。

用 Ansible 统一管理多台 Linux 服务器,核心在于“免密连接 + 清单定义 + 模块驱动 + playbook 编排”。不需要在被控端装客户端,只要 SSH 通、Python 有(2.6+),就能批量执行命令、部署配置、启停服务。
在一台机器(比如你的运维跳板机或本地工作站)上安装 Ansible:
Ansible 默认读取 /etc/ansible/hosts 作为主清单文件,你也可以自定义路径(如 ansible -i ./my_hosts ...)。
Ansible 通过 SSH 操作目标主机,必须提前打通免密登录。不是“禁用密码”,而是让控制机可无交互登录每台被控机:
若目标机用非标准端口或非 root 用户,可在 inventory 中指定:web01 ansible_host=192.168.1.10 ansible_port=2222 ansible_user=deploy
把服务器按角色或环境分类,是统一管理的基础。例如创建 ./inventory:
[web] web01 ansible_host=192.168.1.10 web02 ansible_host=192.168.1.11 <p>[db] db01 ansible_host=192.168.1.20</p><p>[all:vars] ansible_python_interpreter=/usr/bin/python3
这样就可以对整组操作:ansible web -i ./inventory -m ping 测试 Web 组连通性;ansible db -a "df -h" 查看所有 DB 服务器磁盘使用情况。
ad-hoc 命令适合临时检查或简单操作;复杂流程(如“更新 Nginx 配置 → 重载服务 → 验证端口”)建议写成 playbook:
---
- hosts: web
become: true
tasks:
- name: Copy nginx config
copy:
src: ./files/nginx.conf
dest: /etc/nginx/nginx.conf
owner: root
group: root
mode: '0644'
<pre class="brush:php;toolbar:false;"><code>- name: Reload nginx
service:
name: nginx
state: reloaded</code>Playbook 支持变量、条件判断、循环、错误处理等,是真正落地批量运维的关键载体。
以上就是Linux多服务器如何统一管理_ansible基础实战【指导】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号