Ansible 部署与服务器安全指南
一、Ansible 滚动部署与零停机保障
在开发一段时间后,我们有了新特性要部署到 2.0.1 版本。可以通过添加 --extra-vars "app_version=2.0.1" 运行 ansible-playbook 命令,但最佳实践是更新包含变量文件中的变量,因为版本控制会跟踪此更改,且便于自动化部署。
操作步骤如下:
1. 将 playbooks/vars.yml 中的 app_version 更改为 2.0.1。
2. 再次运行部署剧本:
ansible-playbook -i inventory playbooks/deploy.yml
然而,部署新版本后测试失败了。由于我们是异步部署到四台服务器,所有应用服务器都离线了。此时回滚很简单,将版本恢复到 2.0.0 并重新部署。但如果应用更新改变了数据库模式,情况会很糟糕。
Ansible 提供了两个特定设置来保障部署时基础设施的完整性:
1. serial :可以是整数(如 3)或百分比(如 30%),用于控制 Ansible 一次管理的主机数量。
2. max_fail_percentage :1 - 100 之间的整数,用于告诉 Ansible 在任务失败达到多少百分比的主机时中止剧本。
例如,打开部署剧本
超级会员免费看
订阅专栏 解锁全文
1400

被折叠的 条评论
为什么被折叠?



