应用不停机发布的思考与初识 - 运维

标签: | 发表时间:2022-09-01 16:37 | 作者:
出处:https://dbaplus.cn

应用不停机发布是一项综合性能力,当明确好一种发布模式后,就需要逐步识别会涉及到哪些技术组件,以及明确技术组件在整个解决方案中所担任的职责边界,从而使它们能够相互协同工作。

 

如下列举了一些主要的技术组件:

 

  • 应用管理平台

 

主要负责控制整个应用发布流程,以及集成并调度不同的技术组件,协同完成应用不停机发布。

 

  • 负载均衡(4层)

 

主要负责服务请求的流量接入,可根据所识别的流量特征,负载分发到不同的负载均衡(7层)。

 

  • 负载均衡(7层)

 

主要负责服务请求的流量路由,可根据所识别的流量特征,路由分发到同一应用的不同实例。

 

  • 容器/虚拟机平台

 

主要负责容器/虚拟机资源管理,包括容器/虚拟机的创建、更新、销毁等。

 

  • 域名解析系统

 

主要负责域名地址管理,包括域名的注册、更新、解析等,以及提供用户访问应用或应用间访问等寻址能力。

 

  • 注册中心

 

主要负责服务资源管理,包括服务的注册、更新、注销等,以及提供服务请求方发现服务提供方的能力。

 

在明确技术组件后,还需要对技术组件进行合理的架构规划,以适配不同的网络架构要求。

 

本次主要将对负载均衡进行特别说明,一方面它是负责处理流量的核心技术组件,另一方面网络架构的不同,对它的部署架构影响可能也是最大的。

 

在传统的网络架构环境中,出于对网络安全或其他考虑因素,通常会划分出多个不同的网络区域,网络区域间的访问需要通过开设防火墙访问策略才可以进行互通。

 

但这种方式必然会对应用服务间直接进行点对点访问的方式造成影响,主要原因是虚拟机或容器环境中,应用的IP地址可能会发生变化,导致无法提前明确防火墙访问策略。

 

所以,一般都会考虑使用负载均衡(代理模式)来解决这个问题。

 

 

建议前期优先选择方案三,虽然链路较长会小幅影响性能,但此部署方案相对较为成熟,一方面可以避免流量负载不均的问题,另一方面对于应用的改造成本也会相对较低。

 

注:除网络区域隔离会遇到这种情况外,在某些网络架构中,不同的容器集群间也同样无法访问,所以也同样适用。

 

另外,除必要情况下,也应尽量减少跨网络区域或跨容器集群间的访问,例如:优先容器集群内路由访问,跨网络区域频繁交互的应用服务建议迁移至同一网络区域等。

 

负载均衡通常可以分为4层模式和7层模式,其中4层更关注流量负载,而7层更关注流量路由。

 

一般建议将负载均衡(4层)和负载均衡(7层)进行分层部署,以充分发挥它们的强项。

 

 

建议前期优先选择方案二,虽然无法实现多容器集群间的全局流量调度,但对于当前可观测性和排障能力还不够健全的组织,通过物理隔离降低运维难度也是一种不错的选择。

 

综上架构决策,最终的全局流量链路大致如下,默认情况下,数据中心间流量隔离,即:单数据中心流量收敛,但可根据实际情况进行选择性放行。

 

 

 

相关 [应用 思考 运维] 推荐:

应用不停机发布的思考与初识 - 运维

- -
应用不停机发布是一项综合性能力,当明确好一种发布模式后,就需要逐步识别会涉及到哪些技术组件,以及明确技术组件在整个解决方案中所担任的职责边界,从而使它们能够相互协同工作. 如下列举了一些主要的技术组件:. 主要负责控制整个应用发布流程,以及集成并调度不同的技术组件,协同完成应用不停机发布. 主要负责服务请求的流量接入,可根据所识别的流量特征,负载分发到不同的负载均衡(7层).

Java应用运维

- - BlueDavy之技术blog
对于互联网产品或长期运行的产品而言,运维工作非常重要,尤其是在产品复杂了以后,在这篇blog中就来说下Java应用的运维工作(ps:虽然看起来各种语言做的系统的运维工作都差不多,但细节上还是会有很多不同,so本文还是只讲Java的). 苦逼的码农按照需求开发好了一个全新的Java Web应用,该发布上线给用户用了,要把一个Java Web应用发布上线,首先需要搭建运行的环境,运行的环境需要有JDK、APPServer,在已经装好了os的机器上装上JDK和APPServer,开发好的Java Web应用可以用maven直接打成war或ear,将这个打好的包scp或其他方式到目标机器上,准备妥当,就差启动了.

AI在运维中的应用

- - IT瘾-geek
要:随着X86分布式技术应用,服务器数量越来越多,网络拓扑结构越来越复杂,运维越来越辛苦,风险越来越高. 智能化运维AIOPS将AI技术应用在运维场景,是DevOps的运维部分,是“开发运维一体化云中心”的重要基础设施之一,其最大的价值在于缩短故障恢复时间,提高IT服务连续性. 本文描述一个运维及在这个场景下对AI的需求,目标是尝试将AI引入运维过程,提高运维效率、缩短故障恢复时间.

安卓应用商店的思考

- - 互联网的那点事
混战、杂乱、参差不齐,这是对国内安卓第三方应用商店现状的惯用表述语. 在浮躁的纷争背后,缺少了太多对应用商店本身的思量. 应用商店本身应当回归理性,思考对用户的价值、对产业的价值、对公司的价值. 谨在此分享4部分思考:应用商店的产品方向、盈利模式、入口形态,以及可能的新机会. 从目前看,主要需求是:找到自己想要的内容.

关于应用商店的一些思考

- guangtao - 爱范儿 · Beats of Bits
在《互联网是否需要新的领导者》中,提出了这样一个问题,在移动互联网领域,苹果和 Google 形成了寡头垄断,其它竞争者很难进入,这意味着其它公司开设的商店很难挑战现有的格局,用户也被应用绑定在平台之中. 对此,有读者指出,大家其实不需要太多的应用. 如果用户真的只看重设备,不看重应用,为什么 Palm Pre/Veer 没有任何机会.

人工智能在金融领域应用的初步思考

- - 36氪
微信搜索“36氪”,获取更多高质量内容.点击进入36氪. 编者按:本文作者中国银行网络金融部杨涛,作者授权36氪发布. 在阿尔法狗战胜李世石后,人工智能在全球的热议程度达到一个新的高度. 得益于神经网络深度学习在算法上的突破,使得多个基础人工智能技术水平得到飞跃提升. 计算机视觉、机器学习、自然语言处理、机器人技术、语音识别等人工智能技术快速发展对整个社会带来的改变将远大于互联网.

阿里为全面践行DevOps,分拆整个应用运维团队

- - 运维派
在2016年12月的Velocity China2016,阿里巴巴平台架构部研究员林昊(花名毕玄)发表了题为《阿里应用运维体系演变》主题演讲,其中透露了一个大新闻:. 阿里为全面践行 DevOps 思想,并进行组织结构调整:将以前的应用运维团队全部打散,并合并到各BU的软件开发团队中去. 这一举措,听起来颇有大将风范.

终极思考

- wei - 牛博国际
我的海淀剧院演讲门票放出后,八小时卖了四百多张,同事们说,日. 我淡淡地说,别这样,也许正是因为便宜才这么好卖嘛. 一转身我马上就打电话给老婆,操. 早知道就他妈把票价定高一点啦,真倒霉......干. 很大程度上,这可以解释两件事:1.为什么已婚事业男性的健康状况会相对好一些. 2.为什么在社会上受到尊重和认可的事业男性在老婆的眼里都是傻逼.

ZooKeeper运维经验

- - Juven Xu
ZooKeeper 是分布式环境下非常重要的一个中间件,可以完成动态配置推送、分布式 Leader 选举、分布式锁等功能. 在运维 AliExpress ZooKeeper 服务的一年多来,积累如下经验:. 3台起,如果是虚拟机,必须分散在不同的宿主机上,以实现容灾的目的. 如果长远来看(如2-3年)需求会持续增长,可以直接部署5台.

hadoop运维笔记1

- - 企业架构 - ITeye博客
hadoop使用中的几个小细节(二). 1 某次正常运行mapreduce实例时,抛出错误. 经查明,问题原因是linux机器打开了过多的文件导致. 用命令ulimit -n可以发现linux默认的文件打开数目为1024,修改/ect/security/limit.conf,增加hadoop soft 65535.