python用于系统运维管理和灰度发布部署

原创 2016年05月30日 11:20:29

有个基本想法:

nginx+tomcat,用于中小规模web应用生产环境的灰度发布。

nginx作负载均衡,标记为LB,若干个tomcat作应用服务,标记为App1, App2, App3, ... AppN。

发布过程:

1. 从LB中摘除App1,App1的应用服务停止,部署新应用,启动App1应用。,重新再LB中挂载App1

2. 从LB中摘除App2,App1的应用服务停止,部署新应用,启动App2应用。,重新再LB中挂载App2

3. ...

4. 从LB中摘除AppN,AppN的应用服务停止,部署新应用,启动AppN应用。,重新再LB中挂载AppN


整个发布过程中,由于每次只停机一台App,其他服务器正常服务,所以整体系统可用性不变,用户体验会保持不变,而且研发和运维团队也可以在白天任何时间进行上线发布。


可用python开发一个上述功能的专用发布平台。基本要点如下:

1. 采用web方式,可用flask框架。

2. 在web页面上进行所有的操作,包括Appl的摘除、挂载,应用包的上传, App服务的启动、停止、状态查看等。这方面python有良好的库可供应用,包括fabric, cuisine等。

3. 发布历史的记录,操作记录,历史版本应用包的保存。这部分可作为额外附加功能。

4. 顺带可以监控nginx, tomcat底层服务器的各种状态。

相关文章推荐

基于python实现jenkins自动发布代码平台

基于python实现jenkins自动发布代码平台 2015-04-29 15:51:27 标签:jenkins 自动发布代码平台 python 原创作品,允许转载,转载时请务必以超...

灰度发布系统的实现

灰度发布系统的实现 灰度发布,已经不是一个很新的概念了.一个产品,如果需要快速迭代开发上线,又要保证质量,保证刚上线的系统,一旦出现问题那么可以很快的控制影响面,就需要设计一套灰度发布系...

聊聊灰度发布

2011年底,浙江公司分管支撑的杨剑宇副总在支撑内部召集了一次头脑风暴,要求部门里各位主管和骨干轮流发言,不讲成绩,只讲问题和思路,一圈人一个一个轮流讲过来:     l  负责开发的主管说...
  • Aresiii
  • Aresiii
  • 2015年10月14日 15:02
  • 24109

卓豪助力中央人民广播电台部署IT运维管理方案

用户概况 中央人民广播电台(China National Radio,简称CNR)是中华人民共和国国家广播电台,是中国最重要、最具权威性和最具影响力的综合传媒机构之一。是目前中国唯一覆盖全国的广播电...

揭秘IT运维管理系统的十大无奈之处

随着互联网的发展,企业的业务绩效与IT管理之间的联系越来越紧密,业务对IT运维管理系统的依赖性变得越来越大,传统的IT运维管理服务提供商也已经在重视IT管理的自动化,通过自动化的方式来服务传统的客户。...

几个开源的运维管理系统介绍

国内开源运维管理平台 OWS OWS是Open Web SA的简称,意指开放的web运维管理系统。 OWS是由Open Web SA开发团队,针对目前服务器运维、监控和报警提出的一个开源、易用的...

IT运维管理系统软件标准性定位

IT运维管理系统软件随着IT系统的实施逐渐成为企业必备的信息化工具,解决好IT运维,实施高效网络管理,将显著提升企业IT系统运行效率,将转变IT服务部门的职能作用,从成本中心向价值中心转换,那如何选择...

Linux系统运维管理之Linux简介

1、操作系统介绍 内核负责控制硬件资源分配,而如果只有内核,则只能让计算机硬件运行,而不能有任何功能,因此需要系统调用提供给开发者使用,从而开发应用程序; 内核能够控制硬件,比如:让CPU可以运算...
  • lkq7888
  • lkq7888
  • 2016年09月11日 10:45
  • 331

一种基于ITIL的银行IT运维管理系统设计方法

http://www.itxinwen.com/view/new/html/2009-04/2009-04-14-441331.html   结合ITIL管理和服务基本概念, 介绍了一种新的商业银...

网首IT运维管理系统介绍.ppt

  • 2013年04月25日 23:01
  • 7.5MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python用于系统运维管理和灰度发布部署
举报原因:
原因补充:

(最多只允许输入30个字)