ansible实现发布、回滚功能
ansible的两篇博客,本来是打算合二为一的,发现只用一篇写,嗯,好鬼长。。。。 一向秉承简单为美的我于是忍痛割爱,一分为二了
ansible实现升级发布、回滚功能
1、应用场景
在实际生产环境中,每天都会更改很多次配置文件,要批量地重启服务 , how ???
机器少可以手动改,再reload一下

5、定义核心任务
vim tasks/main.yml

6、定义总的入口文件 ——》 主机,用户,roles
(2)生效条件:主配置文件打开
include vhosts/*.conf;
(3)执行 ——》 已准备好升级发布
ansible-playbook update.yml ——》 在 nginx_conf 下执行该命令
(4)测试1 ——》 纯启动
(5)测试2 ——》 测restart
(b)ansible-playbook update.yml
(c)web3: cat /usr/local/nginx/conf/vhosts/1.conf

#######################################
(iii)完成回滚功能
web1 做备份
1、cd /etc/ansible/nginx_config/roles
2、rsync -av new/ old/
3、rsync -av new/files/ old/files/
目的:更改 new/files 文件前,先拷贝到 old/files
回滚的时候,就是把 old/files/ 里面的配置再发布一次
旧的还原过来,再重新加载或重启服务
4、进入 nginx_config 目录下
(1)cp update.yml backup.yml
(2)vim backup.yml

5、测试
(1)编辑 roles/new/files/vhosts/1.conf
再加多一行

(2)发布
ansible-playbook update.yml

说明:修改完后nginx重启了
但发现线上服务没有生效,或者出现异常
需要把之前old/files下的配置文件覆盖一下,实现回滚
(3)做回滚前,先验明下(刚刚发布时做的)

(4)回滚来了
ansible-playbook backup.yml
(5)web3现在看只有未发布前的2行,而不是3行了
cat /usr/local/nginx/conf/vhosts/1.conf

ansible实现发布、回滚功能的更多相关文章
- DataPipeline的增量数据支持回滚功能
DataPipeline的增量数据支持回滚功能 第一步:数据任务有增量数据时,回滚按钮激活,允许用户使用该功能进行数据回滚. 第二步:点击回滚按钮,允许用户选择回滚时间或者回滚位置进行数据回滚.选择按 ...
- Jenkins+Ansible+Gitlab自动发布/回滚Spring项目
一.实现方法流程图 流程图如下:代码托管在本地GitLab上(为了复现整套流水线,我直接使用了GitHub,懒得再搭建GitLab),开发完成后提交代码到代码仓库,[自动]触发Jenkins进行持续集 ...
- php数据访问:pdo用法、事物回滚功能和放sql注入功能
PDO: 一.含义: 数据访问抽象层 二.作用 通过PDO能够访问其它的数据库 三. 用法: 1.造对象 ① $pdo ...
- 数据库运维平台~inception回滚功能
一 简介:inception的另一个激动人心的功能,很强大.二 功能简介: inception会针对已经执行sql语句进行1 记录 2 生成回滚语句三 备份: 1 启用远程备份机制(强烈建议一台单 ...
- Jenkins发布回滚方案
Jenkins回滚可以通过每次发布从主干打tag,然后发布的时候发tag,比如tag, v1, v2,v3 如果我发布了v3,想要回滚回v2,直接在Jenkins中选择v2的tag地址重新构建就可以回 ...
- jenkinsfile or pipline 实现微服务自动发布回滚流程
1 #!/usr/bin/env groovy Jenkinsfile node { //服务名称 def service_name = "**" //包名 def service ...
- Jenkins 搭建企业实战案例 (发布与回滚)
让我们的代码部署变得easy,不再难,Jenkins是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.Jenkins非常易于安装和配置,简单易用 ...
- 【Java EE 学习 19】【使用过滤器实现全站压缩】【使用ThreadLocal模式解决跨DAO事务回滚问题】
一.使用过滤器实现全站压缩 1.目标:对网站的所有JSP页面进行页面压缩,减少用户流量的使用.但是对图片和视频不进行压缩,因为图片和视频的压缩率很小,而且处理所需要的服务器资源很大. 2.实现原理: ...
- Oracle并行事务回滚相关参数及视图
/******相关参数****/fast_start_parallel_rollback1.取值有3种:false,low,high2.各值含义:false ---禁用并行回滚功能 ...
随机推荐
- jQuery获取input复选框的值
var ipResolveValue =[]; //定义一个空数组$("input[name='ipResolve']:checked").each(function(){ / ...
- 【转】@javax.ws.rs Webservice注解
用于webservice. 1.路径 @javax.ws.rs.Path 标识要请求的资源类或资源方法的uri路径. 例,@Path("animal"),表示下一层路径是anima ...
- JavaWeb 之事务
什么是事务? 事务就是逻辑上的一组操作,组成事务的各个执行单元,操作要么全部成功,要么全部失败. 以转账为例: 张三给李四转账,张三扣1000,李四加1000; 加钱和扣钱两个操作组成了一个事务. 1 ...
- php中定时计划任务的实现原理
根据php手册简单介绍一些相关的知识: 1.连接处理: 在 PHP 内部,系统维护着连接状态,其状态有三种可能的情况: 0 - NORMAL(正常) 1 - ABORTED(异常退出) 2 - TIM ...
- JS获取短信验证码60秒
<script language="javascript"> function get_mobile_code(){ $.post("{{ ...
- Ubuntu部署jmeter
一:ubuntu部署jdk 1:先下载jdk-8u74-linux-x64.tar.gz,上传到服务器,这里上传文件用到了ubuntu 下的 lrzsz. ubuntu下直接执行 sudo apt-g ...
- app开发公司排名哪家强?看App Annie给出的答案
app开发公司排名哪家强?这个答案不好定义,我们从第三方权威平台数据来看吧.App Annie在<全球移动应用市场2016年回顾>报告中从全球每月活跃用户数.全球下载量.全球收入等几个维度 ...
- Ajax:js自执行函数、jsonp、cros
一.js自执行函数 #(function(){alert(1);})(); (function(){ alert(1); } )(); 二.javascript同源策略 1. 什么是同源策略 理解跨域 ...
- 42和为S的两个数字
题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 输出描述: 对应每个测试案例,输出两个数,小的先输出. 设置 ...
- loadrunder之脚本篇——定义全局变量
如果参数是全局的,在脚本中的任何一个Action中都可以使用,变量一般是局部的,如果跨Action调用会出现未声明的错误. 打开Script视图中左侧Action列表中的globals.h文件,可定义 ...