Ansible 如何使用 Playbook 批量部署应用?

Ansible Playbook是Ansible中用于自动化任务执行的配置文件,采用YAML格式编写。通过Playbook,运维人员可以定义多个任务(Tasks),让Ansible按照指定的顺序执行,从而实现应用的批量部署。下面带来使用 Playbook 批量部署应用的方法。


步骤一:准备Ansible环境

在开始使用Ansible Playbook部署应用之前,需要先安装和配置Ansible。

安装Ansible在Linux系统(如CentOS或Ubuntu)上执行以下命令安装Ansible:

sudo apt update&&sudo apt install ansible#Ubuntu/Debian

sudo yum install epel-release-y&&sudo yum install ansible-y#CentOS/RHEL

配置受控节点

确保目标服务器(受控端)已安装SSH并允许Ansible主机免密登录。

在控制端生成SSH密钥并分发到目标机器:

ssh-keygen-t rsa

ssh-copy-id user remote_host

配置/etc/ansible/hosts文件,添加受控节点信息,例如:

web_servers

192.168.1.10

192.168.1.11
步骤二:编写Ansible Playbook

Playbook由多个部分组成,主要包括hosts(目标主机)、tasks(任务)等。

创建Playbook文件在Ansible主机上新建一个YAML格式的Playbook文件,如deploy_app.yml。

编写Playbook内容下面是一个示例Playbook,批量在目标服务器上安装Nginx并启动:

-name:批量部署Nginx

hosts:web_servers

become:yes

tasks:

-name:安装Nginx

apt:

name:nginx

state:present

when:ansible_os_family=="Debian"

-name:安装Nginx(CentOS)

yum:

name:nginx

state:present

when:ansible_os_family=="RedHat"

-name:启动Nginx

service:

name:nginx

state:started

enabled:yes
步骤三:执行Ansible Playbook

在编写好Playbook后,可以使用以下命令执行:

ansible-playbook deploy_app.yml

执行成功后,Nginx将被批量部署并启动。
步骤四:验证部署结果

通过以下命令检查Nginx是否成功运行:

systemctl status nginx

在浏览器(如谷歌浏览器官网)中输入目标服务器的IP地址,检查Nginx欢迎页面是否正常显示。

相关推荐
风清再凯2 天前
自动化工具ansible,以及playbook剧本
运维·自动化·ansible
IT乌鸦坐飞机2 天前
ansible部署数据库服务随机启动并创建用户和设置用户有完全权限
数据库·ansible·centos7
遇见火星15 天前
如何使用Ansible一键部署MinIO集群?
ansible
粥周粥15 天前
ANSIBLE
ansible
码农101号15 天前
Linux中ansible模块补充和playbook讲解
linux·运维·ansible
码农101号15 天前
Linux的Ansible软件基础使用讲解和ssh远程连接
ansible
烟雨书信16 天前
ANSIBLE运维自动化管理端部署
运维·自动化·ansible
碎碎-li16 天前
ANSIBLE(运维自动化)
运维·自动化·ansible
@donshu@19 天前
Linux运维-ansible-python开发-获取inventroy信息
linux·运维·ansible
Kendra91922 天前
Ansible
ansible