当前位置:首页 > Ubuntu > 正文

Ubuntu Ansible安装与配置完整指南(手把手教你搭建自动化运维工具)

在现代 IT 运维中,自动化运维工具 已成为提升效率、减少人为错误的关键。Ansible 是一款开源的自动化工具,因其简单、无代理架构和强大的 YAML 配置语言而广受欢迎。本文将为初学者提供一份详细的 Ubuntu Ansible安装 与配置教程,让你轻松上手!

Ubuntu Ansible安装与配置完整指南(手把手教你搭建自动化运维工具) Ansible安装  Ansible配置教程 自动化运维工具 Linux服务器管理 第1张

一、准备工作

在开始安装之前,请确保你有一台运行 Ubuntu 系统(推荐 Ubuntu 20.04 或更高版本)的服务器或虚拟机,并具备 sudo 权限。

二、更新系统软件包

首先,打开终端并更新系统:

sudo apt updatesudo apt upgrade -y

三、安装 Ansible

Ubuntu 官方仓库已包含 Ansible,但版本可能较旧。为了获得最新稳定版,建议通过官方 PPA 安装。

1. 添加 Ansible 的官方 PPA:

sudo apt install software-properties-common -ysudo add-apt-repository --yes --update ppa:ansible/ansible

2. 安装 Ansible:

sudo apt install ansible -y

3. 验证安装是否成功:

ansible --version

如果看到类似以下输出,说明安装成功:

ansible [core 2.15.x]  config file = /etc/ansible/ansible.cfg  configured module search path = ['/home/user/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']  ...

四、基本配置 Ansible

Ansible 默认配置文件位于 /etc/ansible/ansible.cfg,主机清单(Inventory)文件默认为 /etc/ansible/hosts

1. 编辑主机清单文件

假设你要管理两台远程服务器(IP:192.168.1.10 和 192.168.1.11),编辑 hosts 文件:

sudo nano /etc/ansible/hosts

在文件末尾添加以下内容:

[webservers]192.168.1.10192.168.1.11

2. 配置 SSH 免密登录(关键步骤)

Ansible 通过 SSH 控制远程主机,因此需要配置 SSH 公钥认证。

生成 SSH 密钥(如果尚未生成):

ssh-keygen -t rsa -b 4096

将公钥复制到目标服务器(以 192.168.1.10 为例):

ssh-copy-id user@192.168.1.10ssh-copy-id user@192.168.1.11

替换 user 为你的实际用户名。

五、测试 Ansible 是否正常工作

使用 ping 模块测试连接:

ansible webservers -m ping

如果返回 SUCCESS,说明 Ansible 已成功连接到远程主机!

六、编写第一个 Playbook(可选进阶)

创建一个简单的 playbook 来在远程服务器上安装 Nginx:

nano nginx_install.yml

写入以下内容:

---- name: Install and start Nginx on webservers  hosts: webservers  become: yes  tasks:    - name: Install Nginx      apt:        name: nginx        state: present        update_cache: yes    - name: Start and enable Nginx service      systemd:        name: nginx        state: started        enabled: yes

运行该 playbook:

ansible-playbook nginx_install.yml

七、总结

通过本教程,你已经完成了 Ubuntu Ansible安装 与基础配置,并掌握了如何使用 Ansible 管理远程主机。作为一款强大的 自动化运维工具,Ansible 能显著简化 Linux服务器管理 流程。后续你可以深入学习 Roles、Vault、自定义模块等高级功能。

希望这份 Ansible配置教程 对你有所帮助!如有疑问,欢迎在评论区交流。