#如何将应用落地到CMDB中?#
应用运维的重要场景是应用软件的自动化发布,在数字化转型的大背景下,企业使用应用发布系统主要面临这几个问题:
随着业务线上化和业务量的快速增长,应用往往需要大规模集群的方式部署,加上对于业务连续性的要求,发布的工作量和复杂度成倍提升 。
敏捷 、DevOps的新理念的流行,应用更新迭代速度加快。
新技术的不断涌现,迫使企业需要主动拥抱探索新型IT技术,应用技术百花齐放(容器、微服务等 ),对应用运维提出了更高的要求。
一、标准化是构建应用发布系统的第一步
人工运维已经很难满足当前的发展趋势, 建设自动化运维成为了接下来运维工作的重点。
但是往往许多企业盲目引进大量的工具去完成自动化,最终却会发现工具用了一大堆,看起来好像降低了人手动的工作,可效率并没有提升,这种情况往往是因为没有把“标准化”这个基这个作先做好。
标准化的内容有很多,大到标准的发布方案、应用全生命周期的标准流程,小到发布脚本、参数的标准化、应用名称的规范等。
其中,本人认为最重要的也是最基础的,是需要对应用这个逻辑的抽象有一个共同的认知,通过识别拆解业务系统并且在CMDB中描述。
二、如何有效管理应用
1. 构建应用拓扑树
微服务的流行,分布式架构的日益成熟,导致我们需要管理的应用系统数量快速增长。
你是否有过与产品同事鸡同鸭讲,一会儿是服务,一会儿是组件的经历?
你是否经历过突然某天应用重启命令无权限的情况,因为基础架构运维的把webLogic的用户调整了?
如何有效管理这些应用及其使用的基础资源,统一命名、层级结构,是构建CMDB的目的。
这里提供的思路是基于应用部署的视图拆分,基于“应用系统-环境-集群-模块”的模型对应用系统进行描述。
应用系统:对外提供特定、完整业务服务的一组系统资源(软硬件资源)的有机组合,位于整个应用拓扑的顶层,例如:ERP系统、手机银行系统、英雄联盟系统。
环境:指的开发测试环境、预发布环境、生产环境、灾备环境等。
集群:大型应用系统一般会在多个地域机房部署相同的应用,如分布式架构下的北京集群、深圳集群;每一个集群可以独立提供完整业务服务。
模块:最小化的功能板块,有许多相似的叫法:应用、服务、组件、模块等等,比如在电商系统下的订单模块、评价模块等等。
一般在传统应用架构下有几个特点:
● 没有把模块划得很细。
● 应用往往有独享的数据库、消息队列等基础资源。
应用架构相对简单。几台weblogic加上Oracle数据库就可以组成一个应用系统,所以这里的模块由应用模块和技术模块共同组成,如:报表模块、Oracle模块。
而在互联网架构下,往往只聚焦应用模块和业务功能。
2. 构建面向应用运维的应用配置管理
CMDB主要还是以面向资源的管理,但仅以资源的视角看CMDB是不够的,对于应用运维而言,需要以应用的视角纵观全局。
至于如何打通应用与资源的关系,可以以模块为中心,构建面向应用运维的应用配置管理。
部署配置管理:对于应用发布而言,介质是绕不开也必须管理的对象,包括介质的下载地址、增量/全量类型、版本等属性。因此,需要思考介质是否适合放在CMDB中管理,可以从几个方面入手:
● 介质的消费场景是否通用?
● 介质的信息准确性是否有技术或者管理手段保证?
综上思考,我认为介质的信息不应该放在CMDB中,介质的版本信息理应由制品库维护,并且只有在发布的场景中需要消费介质的数据,所以建议在发布系统中维护介质的管理信息。
应用拓扑管理:即上一章节描述的应用拓扑模型,在CMDB中维护。
基础资源管理:这也是CMDB最基础最核心的管理内容,以资源的视角看到IT资源的全景。通过关联的方式与模块进行联动,由于应用最终部署的目标还是主机,因此首先需要维护好应用与主机的逻辑关系。
当维护好主机的关系后,就打通了业务与物理的关系,这该如何理解?
因为基础资源都是部署在主机上的,应用拓扑是业务信息,所以当模块与主机存在关系后,就意味着应用与基础资源的关系打通了。
综上内容,可以以模块为中心,左边延展发布介质的信息,右边通过主机看到模块使用的基础资源内容,结合上边的应用拓扑,实现整个以应用为中心视角的IT资源视图。
3. CMDB怎么在发布场景中起作用?
将发布这个场景动作拆分成三个大的要素:发布目标、发布介质、执行操作。
通过“发布介质”在“发布目标”上执行“执行操作”实现发布场景,并且在发布时需要按照以模块为中心的原则执行发布动作。
将应用系统这一个抽象的概念通过结构化的描述落地在CMDB中后,确保所有应用部门、运维都具备共同的语言与认知。
比如,明确发布的目标是:电商系统的生产环境下广东集群的订单模块时,那么就需要部署到订单模块下的A、B、C三台主机上,并且如果SQL发布的场景,可以通过模块与MySQL实例的关系清楚知道这一过程需要在MySQL01这个实例上执行SQL脚本。
又比如,在发布系统上,由于维护好了一个关系:模块-介质,所以哪怕在晚上12点脑子晕乎乎执行发布变更时,选择了订单模块时也只能选择与之关联的order_jar_v1.1.jar程序包,这样就不会发生“把隔壁购物车模块的包部署到订单模块的机器上”这种错误。
在列举另外两个发布场景:
高级发布场景:应用发布系统可以通过CMDB主机数据的消费,进行主机的编排,并行、串行、分批等,实现灰度、滚动发布等发布策略。运维人员可以通过编排模块之间的执行依赖,满足集群级别的灰度发布策略或者服务依赖场景的复杂场景。
联动监控/日志系统:验证发布的成功与否,除了业务上的验证之外,其实可以通过监控、日志系统进行发布前后的分析。那么如何联动发布系统、监控系统、日志系统呢?若部署了订单模块,又如何知道在日志系统中哪些日志是订单模块的?
答案是:CMDB ,通过共同的语言实现多系统的打通。
总结:应用发布系统建设的第一个基础重点是标准化,我们需要先将CMDB落地应用的概念,并且以应用为中心管理应用的介质、基础资源等信息,为后续的应用发布场景提供准确标准的数据。
想要了解更多关于应用自动化发布与CMDB相关内容,欢迎关注我们的同名公众号。
应用运维的重要场景是应用软件的自动化发布,在数字化转型的大背景下,企业使用应用发布系统主要面临这几个问题:
随着业务线上化和业务量的快速增长,应用往往需要大规模集群的方式部署,加上对于业务连续性的要求,发布的工作量和复杂度成倍提升 。
敏捷 、DevOps的新理念的流行,应用更新迭代速度加快。
新技术的不断涌现,迫使企业需要主动拥抱探索新型IT技术,应用技术百花齐放(容器、微服务等 ),对应用运维提出了更高的要求。
一、标准化是构建应用发布系统的第一步
人工运维已经很难满足当前的发展趋势, 建设自动化运维成为了接下来运维工作的重点。
但是往往许多企业盲目引进大量的工具去完成自动化,最终却会发现工具用了一大堆,看起来好像降低了人手动的工作,可效率并没有提升,这种情况往往是因为没有把“标准化”这个基这个作先做好。
标准化的内容有很多,大到标准的发布方案、应用全生命周期的标准流程,小到发布脚本、参数的标准化、应用名称的规范等。
其中,本人认为最重要的也是最基础的,是需要对应用这个逻辑的抽象有一个共同的认知,通过识别拆解业务系统并且在CMDB中描述。
二、如何有效管理应用
1. 构建应用拓扑树
微服务的流行,分布式架构的日益成熟,导致我们需要管理的应用系统数量快速增长。
你是否有过与产品同事鸡同鸭讲,一会儿是服务,一会儿是组件的经历?
你是否经历过突然某天应用重启命令无权限的情况,因为基础架构运维的把webLogic的用户调整了?
如何有效管理这些应用及其使用的基础资源,统一命名、层级结构,是构建CMDB的目的。
这里提供的思路是基于应用部署的视图拆分,基于“应用系统-环境-集群-模块”的模型对应用系统进行描述。
应用系统:对外提供特定、完整业务服务的一组系统资源(软硬件资源)的有机组合,位于整个应用拓扑的顶层,例如:ERP系统、手机银行系统、英雄联盟系统。
环境:指的开发测试环境、预发布环境、生产环境、灾备环境等。
集群:大型应用系统一般会在多个地域机房部署相同的应用,如分布式架构下的北京集群、深圳集群;每一个集群可以独立提供完整业务服务。
模块:最小化的功能板块,有许多相似的叫法:应用、服务、组件、模块等等,比如在电商系统下的订单模块、评价模块等等。
一般在传统应用架构下有几个特点:
● 没有把模块划得很细。
● 应用往往有独享的数据库、消息队列等基础资源。
应用架构相对简单。几台weblogic加上Oracle数据库就可以组成一个应用系统,所以这里的模块由应用模块和技术模块共同组成,如:报表模块、Oracle模块。
而在互联网架构下,往往只聚焦应用模块和业务功能。
2. 构建面向应用运维的应用配置管理
CMDB主要还是以面向资源的管理,但仅以资源的视角看CMDB是不够的,对于应用运维而言,需要以应用的视角纵观全局。
至于如何打通应用与资源的关系,可以以模块为中心,构建面向应用运维的应用配置管理。
部署配置管理:对于应用发布而言,介质是绕不开也必须管理的对象,包括介质的下载地址、增量/全量类型、版本等属性。因此,需要思考介质是否适合放在CMDB中管理,可以从几个方面入手:
● 介质的消费场景是否通用?
● 介质的信息准确性是否有技术或者管理手段保证?
综上思考,我认为介质的信息不应该放在CMDB中,介质的版本信息理应由制品库维护,并且只有在发布的场景中需要消费介质的数据,所以建议在发布系统中维护介质的管理信息。
应用拓扑管理:即上一章节描述的应用拓扑模型,在CMDB中维护。
基础资源管理:这也是CMDB最基础最核心的管理内容,以资源的视角看到IT资源的全景。通过关联的方式与模块进行联动,由于应用最终部署的目标还是主机,因此首先需要维护好应用与主机的逻辑关系。
当维护好主机的关系后,就打通了业务与物理的关系,这该如何理解?
因为基础资源都是部署在主机上的,应用拓扑是业务信息,所以当模块与主机存在关系后,就意味着应用与基础资源的关系打通了。
综上内容,可以以模块为中心,左边延展发布介质的信息,右边通过主机看到模块使用的基础资源内容,结合上边的应用拓扑,实现整个以应用为中心视角的IT资源视图。
3. CMDB怎么在发布场景中起作用?
将发布这个场景动作拆分成三个大的要素:发布目标、发布介质、执行操作。
通过“发布介质”在“发布目标”上执行“执行操作”实现发布场景,并且在发布时需要按照以模块为中心的原则执行发布动作。
将应用系统这一个抽象的概念通过结构化的描述落地在CMDB中后,确保所有应用部门、运维都具备共同的语言与认知。
比如,明确发布的目标是:电商系统的生产环境下广东集群的订单模块时,那么就需要部署到订单模块下的A、B、C三台主机上,并且如果SQL发布的场景,可以通过模块与MySQL实例的关系清楚知道这一过程需要在MySQL01这个实例上执行SQL脚本。
又比如,在发布系统上,由于维护好了一个关系:模块-介质,所以哪怕在晚上12点脑子晕乎乎执行发布变更时,选择了订单模块时也只能选择与之关联的order_jar_v1.1.jar程序包,这样就不会发生“把隔壁购物车模块的包部署到订单模块的机器上”这种错误。
在列举另外两个发布场景:
高级发布场景:应用发布系统可以通过CMDB主机数据的消费,进行主机的编排,并行、串行、分批等,实现灰度、滚动发布等发布策略。运维人员可以通过编排模块之间的执行依赖,满足集群级别的灰度发布策略或者服务依赖场景的复杂场景。
联动监控/日志系统:验证发布的成功与否,除了业务上的验证之外,其实可以通过监控、日志系统进行发布前后的分析。那么如何联动发布系统、监控系统、日志系统呢?若部署了订单模块,又如何知道在日志系统中哪些日志是订单模块的?
答案是:CMDB ,通过共同的语言实现多系统的打通。
总结:应用发布系统建设的第一个基础重点是标准化,我们需要先将CMDB落地应用的概念,并且以应用为中心管理应用的介质、基础资源等信息,为后续的应用发布场景提供准确标准的数据。
想要了解更多关于应用自动化发布与CMDB相关内容,欢迎关注我们的同名公众号。
【佳能发布EOS R3相机1.1.1版本升级固件】固件下载链接:https://t.cn/A6iW0EvD
新版固件主要做出以下更改:
添加使用智能手机适配器 AD-P1 的功能。
添加在利用 EOS Utility 或浏览器远程控制功能通过插入的两张存储卡进行遥控拍摄时,设置拍摄方法并选择录入哪张存储卡的功能。
添加通过先按下Quick Control然后按下按钮以取消[被摄体追踪]的功能。
在语言菜单选项中添加乌克兰语。
改善了FTP传输期间的操作稳定性。
修复了在操作 按钮的同时以伺服自动对焦设置拍摄时,相机可能无法使用这一现象。
新版固件主要做出以下更改:
添加使用智能手机适配器 AD-P1 的功能。
添加在利用 EOS Utility 或浏览器远程控制功能通过插入的两张存储卡进行遥控拍摄时,设置拍摄方法并选择录入哪张存储卡的功能。
添加通过先按下Quick Control然后按下按钮以取消[被摄体追踪]的功能。
在语言菜单选项中添加乌克兰语。
改善了FTP传输期间的操作稳定性。
修复了在操作 按钮的同时以伺服自动对焦设置拍摄时,相机可能无法使用这一现象。
愚人闲话
在一起闲待着,人们常说的一句话就是,手机上怎么说的,手机上说什么什么来着。手机里说的事情成了人们的重要信息,也是一种舆论导向。那么,对于手机里信息要加强监管力度,不要让那些不健康,假新闻,没意思的新闻扰乱人们的思想。
我对手机里的新闻和信息不感兴趣,有许多信息和新闻觉得不真实,是胡乱拼造在一起,没有意思。我在手机上下载了几家党报党刊,以及央视,总觉得看党报的文章还是靠谱。我这样的做法可能过时,现在的青年人对于党报看的少了,他们认为报纸上的文章有点古板,是一种说教,看不上劲,没意思。
一家党报,十几版文章,谁也不会全看。先浏览目录,找一些适合自己味道文章看,不喜欢的就不看了。总之,看一些健康的东西,对自身修养,说话做事有益处。 https://t.cn/RJAbRrL
在一起闲待着,人们常说的一句话就是,手机上怎么说的,手机上说什么什么来着。手机里说的事情成了人们的重要信息,也是一种舆论导向。那么,对于手机里信息要加强监管力度,不要让那些不健康,假新闻,没意思的新闻扰乱人们的思想。
我对手机里的新闻和信息不感兴趣,有许多信息和新闻觉得不真实,是胡乱拼造在一起,没有意思。我在手机上下载了几家党报党刊,以及央视,总觉得看党报的文章还是靠谱。我这样的做法可能过时,现在的青年人对于党报看的少了,他们认为报纸上的文章有点古板,是一种说教,看不上劲,没意思。
一家党报,十几版文章,谁也不会全看。先浏览目录,找一些适合自己味道文章看,不喜欢的就不看了。总之,看一些健康的东西,对自身修养,说话做事有益处。 https://t.cn/RJAbRrL
✋热门推荐