服务器其他   发布时间:2022-05-15  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了从无到有:熊猫直播 Rancho 发布系统构建之路大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

《从无到有:熊猫直播 Rancho 发布系统构建之路》要点:
本文介绍了从无到有:熊猫直播 Rancho 发布系统构建之路,希望对您有用。如果有疑问,可以联系我们。

本文由高效运维社区热心群友投稿整理发布,高效运维社区致力于陪伴您的职业生涯,与您一起愉快的成长.

从无到有:熊猫直播 Rancho 发布系统构建之路

作者介绍:

前言:

随着熊猫直播的业务发展越来越快,业务需求的迭代和版本更新需求越来越多,对开发和运维面临以下4个痛点:

由此,团队内部决定在现有的发布过程上实现开发统一的发布系统平台,实现熊猫直播的运维发布流程化、标准化、自动化为一体的统一发布要求,下面围绕整个 Rancho 发布系统做总结梳理,总共分为9个方面:

Rancho 发布系统流程概述架构图:

从无到有:熊猫直播 Rancho 发布系统构建之路

Rancho 发布系统流程完整架构图:

从无到有:熊猫直播 Rancho 发布系统构建之路

一、实现的最终目的

随着熊猫直播业务的迅猛发展,项目、产品的需求规模和版本迭代频次是无法预估的.传统的运维支持方式已渐渐无法满足这种工程应用现状.但是如果把发布权利交付到开发人员手里控制,运维安全是比较大的隐患.当2者都无法平衡的时候,利用高效的标准化,自动化体系将2个无法逾越的问题优化结合起来,我们结合了上述问题,实现了内部的发布系统,对于发布系统,实现了2个核心目标,如下:

总结:让研发自助运维.

二、用户登陆(发布系统的第一道安全墙)

对于发布系统的登陆,我们结合了内部开发的一套 SSO 系统+Rancho 系统并加了一层白名单策略,有以下3个方面虑:

三、 用户权限(发布系统的第二道安全墙)

用户权限,我们分为2类角色:

四、项目权限(发布系统的第三道安全墙)

项目权限设计,我们当时也花很多时间去讨论,最终拟定方案,项目不首先对应用户,而是在用户和项目中间建立一个桥梁,我们命名为项目组.

原因:当多个用户同时去拥有一个项目权限的时候,这个时候要全部用户都要增加到这个项目体系中去.

如果这样做的问题是:增加繁琐,当项目删除改用户权限/或者用户不再拥有该项目权限,还要精确的删除,否则删除错了,后果很严重,逻辑同时还要对用户和项目,做双层处理操作.

解决方案:

用户—-项目组——项目

方案优点:

项目组图例:

从无到有:熊猫直播 Rancho 发布系统构建之路

五、代码发布前台

前台用于开发人员进行发布所操作的页面,其中功能包含:

当用户进来某个项目的时候,Rancho 发布系统会同时异步获取该项目所有的环境/主机列表,对用户而言无需任何操作处理.

①. 发布页面

支持机器单选,多选,全选,临时主机添加等:

从无到有:熊猫直播 Rancho 发布系统构建之路

②. 发布tag种类

发布 tag 种类选择如下:

③. tag 版本选择页面

如下:

从无到有:熊猫直播 Rancho 发布系统构建之路

④. tag 比对图

用户选择的 tag 和主干,和最后一次发布 tag 比对如下:

从无到有:熊猫直播 Rancho 发布系统构建之路

⑤. 发布环境/机器列表选择:

对于发布环境我们有自己的一套命名扩展规则,有3种类型:

比如某个项目命名情况:

独立情况/整合情况,如下说明:

每个发布环境对应发布的机器,其中一个项目页面如下展示:

从无到有:熊猫直播 Rancho 发布系统构建之路

⑥. 前台首页图

用户登陆进来看到的所拥有项目的页面,功能有发布,查看,发布历史,需说明(只有管理员才有展示启用/禁用权限)

从无到有:熊猫直播 Rancho 发布系统构建之路

⑦. 前台发布确认清单

发布前让发布用户再次确认上线的项目,tag,发布环境,是否重启,机器(现有的和临时添加的主机):

从无到有:熊猫直播 Rancho 发布系统构建之路

⑧. 发布清单提交请求

避免脏数据的方法:

六、代码发布后台

①. 后台操作新项目流程页面

新建字段说明:

至此,运维管理员需要做的事情已经完成,剩下的点击提交,剩下的事情交给 Rancho 去处理了.

②. 后台新建页面

从无到有:熊猫直播 Rancho 发布系统构建之路

③. Rancho底层基本处理流程

@H_404_398@

④. 项目失败手动触发 Rancho 处理恢复流程

从无到有:熊猫直播 Rancho 发布系统构建之路

七、发布过程/结果

前期的工作:后台新建项目完成,到发布提交申请,最后查看发布过程/结果的验证.

①. 发布过程的处理流程概述和原理图例展示:

描述,发布过程有3种场景负载均衡四/七层策略和无负载均衡策略/项目服务是否重启.针对以上3种场景,分别作了不同的处理规则:

从无到有:熊猫直播 Rancho 发布系统构建之路

②. 项目发布锁图例展现

发布锁作用:防止同项目同发布环境多任务一起发布,会有覆盖,冲突.

从无到有:熊猫直播 Rancho 发布系统构建之路

③. 项目发布历史统计图例展现

状态:正在发布,触发失败,发布成功

从无到有:熊猫直播 Rancho 发布系统构建之路

④. 项目发布手工终止图例展现

从无到有:熊猫直播 Rancho 发布系统构建之路

⑤. 发布结果成功图例展现

从无到有:熊猫直播 Rancho 发布系统构建之路

⑥. 发布结果失败/终止图例展现

失败单台,未执行的机器程序自动干预停止发布实例子

从无到有:熊猫直播 Rancho 发布系统构建之路

⑦. 发布过程中,手工可以终止发布功能,说明

从无到有:熊猫直播 Rancho 发布系统构建之路

⑧. 项目回滚策略

当某个项目发布失败或者异常,想回滚到上个正常版本,可以以对应的 tag 号来进行重新发布.

⑨. 发布结果日志截图展现

(自动按天生成日志,并且按天做发布日志全量汇总)

从无到有:熊猫直播 Rancho 发布系统构建之路

八、完善的Wiki文档建立

Rancho 发布系统在熊猫直播循序渐进的优化功能/需求,bug修复等,wiki文档的规范化也要随之建立起来,以下是wiki文档建立的图例:

从无到有:熊猫直播 Rancho 发布系统构建之路

九、小结

Rancho 发布系统已经在线上运行了将近5个月的时间,目前 Rancho 系统功能包含了:

目前熊猫直播 Rancho 发布系统解决的痛点:

目前发布次数/项目总数统计: 2017年2月16日上线到目前,累计发布工单12000次,最多单次工单发布主机100台+,成功96%,失败3%,终止1%,接入发布项目将近100+.

Rancho 发布系统未来优化的路还有很多,优化方向分为以下3点:

文章来自微信公众号:高效运维

大佬总结

以上是大佬教程为你收集整理的从无到有:熊猫直播 Rancho 发布系统构建之路全部内容,希望文章能够帮你解决从无到有:熊猫直播 Rancho 发布系统构建之路所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: