标准化体系建设(上):如何建立应用标准化体系和模型?

这篇具有很好参考价值的文章主要介绍了标准化体系建设(上):如何建立应用标准化体系和模型?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

今天我专门来讲讲标准化这个工作。可以说这项工作是运维过程中最基础、最重要的,但也是最容易被忽视的一个环节。 我做过多次公开演讲,每次讲到这个环节,通常会有单独的一页PPT,就放四个字,字号加大加粗,重复三遍,这四个字就是“标准先行”,然后演讲过程中会大声说出“标准先行,标准

先行,标准先行”,重要的事情说三遍,目的就是想反复强调这件事情的重要程度,一定不要忽视。

标准化体系建设(上):如何建立应用标准化体系和模型?,# 运维体系管理,运维,数据库,云计算

我们运维工作的开展常常不知从何下手,或者上来就冲着工具和自动化去了,却始终不得章法,工具做了一堆,效率却并没有提升。其实绝大多数情况下,问题和原因就是标准化这个基础工作没做扎实。

首先,让我们来看看为什么标准化这个事情如此重要。

为什么要做标准化?

标准化的过程实际上就是对运维对象的识别和建模过程。形成统一的对象模型后,各方在统一的认识下展开有效协作,然后针对不同的运维对象,再抽取出它们所对应的运维场景,接下 来才是运维场景的自动化实现。

这有点像我们学的面向对象编程的思想,其实我们就是需要遵循这样一个思路,我们面对的就是一个个实体和逻辑运维对象。

在标准化的过程中,先识别出各个运维对象,然后我们日常做的所有运维工作,都应该是针对这些对象的运维。如果运维操作脱离了对象,那就没有任何意义。同样,没有理清楚对象,运维自然不得章法。

比如我们说扩容,那就要先确定这里到底是服务器的扩容,还是应用的扩容,还是其它对象的扩容。你会发现,对象不同,扩容这个场景所实施的动作是完全不一样的。

如果把服务器的扩容套用到应用的扩容上去,必然会导致流程错乱。同时对于对象理解上的不一致,也会徒增无谓的沟通成本,造成效率低下。自然地,这种情况下的运维自动化不但不能提升效率,还会越自动越混乱。

这就是为什么我每次都会连续强调三遍“标准先行”的原因。虽然这个事情比较枯燥和繁琐,但是于纷繁复杂中抽象出标准规范的东西,是我们后续一系列自动化和稳定性保障的基础。万丈 高楼平地起,所以请你一定不要忽略这个工作。

好,总结一下标准化的套路:

第一步,识别对象;

第二步,识别对象属性;

第三步,识别对象关系;

第四步,识别对象场景。

接下来我们就按照上面这个思路,一起来分析从基础设施层面和应用层面应该识别出哪些运维对象。

基础设施层面的标准化

基础设施层面的运维对象应该不难识别,因为都是一个个物理存在的实体,我们可以进行如下分析。

第一步,识别实体对象,主要有服务器、网络、IDC、机柜、存储、配件等。

第二步,识别对象的属性,比如服务器就会有SN序列号、IP地址、厂商、硬件配置(如CPU、内存、硬盘、网卡、PCIE、BIOS)、维保信息等;网络设备如交换机也会有厂 商、型号、带宽等信息。

第三步,识别对象之间的关联关系,比如服务器所在的机柜,虚拟机所在的宿主机、机柜所在IDC等简单关系;复杂一点就会有核心交换机、汇聚交换机、接入交换机以及机柜和 服务器之间的级联关系等,这些相对复杂一些,也就是我们常说的网络拓扑关系。

把以上信息梳理清楚,通过ER建模工具进行数据建模,再将以上的信息固化到DB中,一个资源层面的信息管理平台就基本成型了。

以服务器为例简单展示一下,我们的视角就是下面这样的:

标准化体系建设(上):如何建立应用标准化体系和模型?,# 运维体系管理,运维,数据库,云计算

但是,信息固化不是目的,也没有价值,只有信息动态流转起来才有价值。接下来我们需要做的事情,就是识别出针对运维对象所实施的日常运维操作有哪些,也就是识别出运维场景 是什么。

第四步,还是以服务器为例,我们针对服务器的日常操作有采购、入库、安装、配置、上线、下线、维修等等。另外,可能还会有可视化和查询的场景,如拓扑关系的可视化和动 态展示,交换机与服务器之间的级联关系、状态(正常or故障)的展示等,这样可以很直观地关注到资源节点的状态。

完成了这些工作,接下来才是对上述运维场景的自动化开发。所以你看,在真正执行去做工具和自动化平台之前,其实是需要先做好大量的基础准备工作的。我要再次强调这一点,一定不能忽视。

应用层面的标准化 下面我们再一起看一个逻辑上的对象,就是我们前面经常提到的运维的核心:应用。对这个逻辑对象的建模会相对复杂一些,不过我们依然可以按照上面的套路来。

第一步,识别对象。

我们前面讲过,这个识别过程是在做微服务架构设计或拆分的时候就确定下来的。所以严格地讲,它不应该是运维阶段才被识别出来的,而是在之前设计阶段就被识别和确认下来,然后延伸到运维这里才对。

第二步,识别对象属性。

一个应用是业务的抽象逻辑,所以会有业务和运维两个维度的属性。业务属性在业务架构时确定,这主要是需要业务架构师去识别的,但是它的运维属性就应该由运维来识别了。 下面我们一起来看一下,一个应用应该具备哪些基本的运维属性。 *应用的元数据属性,也就是简单直接地描述一个应用的信息,如应用名、应用Owner、所属业务、是否核心链路应用以及应用功能说明等,这里的关键是应用名; *应用代码属性,主要是编程语言及版本(决定了后续的构建方式),GitLab地址;
*应用部署模式,涉及到基础软件包,如语言包Java、C++、Go等;容器如Tomcat 、JBoss等;
*应用目录信息,如运维脚本目录、日志目录、应用包目录、临时目录等;
*应用运行脚本,如启停脚本、健康监测脚本;
*应用运行时的参数配置,如运行端口、Java的JVM参数GC方式、新生代、老生代、永生代的堆内存大小配置等。

从应用属性的视角,应该是下面这样一个视图(简单示例,不完整):

标准化体系建设(上):如何建立应用标准化体系和模型?,# 运维体系管理,运维,数据库,云计算

第三步,识别对象关系。

也就是应用与外部的关系,概括起来有三大类:

第一类是应用与基础设施的关系,包括应用与资源、应用与VIP、应用与DNS等等的关系;

第二类是平行层面的应用与应用之间的关系,这里再细分下去就是应用服务或API与其它应用服务和API的依赖关系。如果你有相关的经验,应该会联想到全链路这样的工具平台了,没 错,这样的平台就是用来处理应用间关系管理的。

第三类是应用与各类基础组件之间的关系,比如应用与缓存,应用与消息、应用与DB等等之间的关系。 第四步,识别应用的运维场景。

这个就会比较多了,比如应用创建、持续集成、持续发布、扩容、缩容、监控等;再复杂点的比如容量评估、压测、限流降级等。

好,这里我们先收一下,聚焦到标准化的层面,通过基础设施和应用层面标准化的示例,我想你应该可以掌握基本的建模思路了,这样的思路可以应用到其它的运维对象上 。

同时,通过上面这些内容,你应该可以比较清晰地看到,我们的每一个运维操作都是针对某个运维对象的,这一点在规划运维体系时非常重要。

而在这些对象中,应用又是重中之重,是微服务架构下的核心运维对象。

从应用标准化的过程中我们也可以看到,针对应用的识别和建模,明显复杂很多。所以,后面我还会从理论和实践的角度来继续强化和分析这个概念。

如果今天的内容对你有帮助,也请你分享给身边的朋友。

欢迎你留言与我一起讨论。文章来源地址https://www.toymoban.com/news/detail-720945.html

到了这里,关于标准化体系建设(上):如何建立应用标准化体系和模型?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据标准化在人工智能与大数据领域的应用

    数据标准化是指将数据集中的数据进行规范化处理,使其具有统一的格式和规则,从而使得数据更容易进行分析和处理。在人工智能和大数据领域,数据标准化的重要性不言而喻。随着数据的规模和复杂性不断增加,如何有效地处理和分析数据成为了一大挑战。数据标准化可

    2024年02月21日
    浏览(29)
  • 经典软件工程复兴?大模型驱动的软件工程实践标准化

    简单来说,本文探讨了大模型驱动的软件工程实践标准化,以及如何将需求和设计规范化为 DSL 格式。通过这种方式,可以让 AI 更自动化、高效地编写代码。 随着大语言模型在软件开发中的应用越来越广泛,传统的软件工程实践开始被重新关注和提及。在诸如于编写清晰的文

    2024年02月12日
    浏览(28)
  • MBSE项目的全新数据、信息与知识管理方法|数据模型标准化思路

    仅供学习使用 作者:M. El Alaoui, S. Rabah, V. Chapurlat, V. Richet , R. Plana 来源:https://doi.org/10.1016/j.ifacol.2022.10.135 文章详细介绍了DIK管理在关键基础设施领域的重要性,并介绍了提出的方法。本文的主要贡献是基于现有DIK管理策略和原则的方法,其概念部分关注如何探索现有的本体

    2024年02月12日
    浏览(28)
  • 如何使用 OCI Artifacts、ORAS 和 Docker Hub 标准化软件交付

    Docker Hub 是最著名的用于分发和共享容器映像的注册表。不过, Docker Hub 和其他符合 OCI 的注册表现在可以做的不仅仅是容器镜像。ORAS (OCI 注册表作为存储)项目将注册表转换为通用工件存储,能够发布与您的应用程序相关的任何资产。 在本文中,您将了解 ORAS 是什么、它

    2024年02月14日
    浏览(33)
  • 工控老曹说——TSN标准化如何赋能多领域以太网新发展

    网络通信已经成为现代社会中不可或缺的一部分。然而,在某些领域,例如工业自动化、机器人控制和视频监控等实时应用对通信的要求更高,需要实时传输大量数据并确保其可靠性和准确性。传统的网络技术在这些高要求的应用场景下表现不佳,往往难以满足实时应用的需

    2024年02月05日
    浏览(27)
  • 深度学习基础入门篇[七]:常用归一化算法、层次归一化算法、归一化和标准化区别于联系、应用案例场景分析。

    【深度学习入门到进阶】必看系列,含激活函数、优化策略、损失函数、模型调优、归一化算法、卷积模型、序列模型、预训练模型、对抗神经网络等 专栏详细介绍:【深度学习入门到进阶】必看系列,含激活函数、优化策略、损失函数、模型调优、归一化算法、卷积模型、

    2024年02月13日
    浏览(27)
  • python实现z-score标准化和0-1标准化

    目录 标准化处理 0-1标准化: z-score标准化: 1、用自带的函数来操作 实现z-score标准化 实现0-1标准化 2、自定义函数实现 实现z-score标准化 实现0-1标准化 对输出结果范围有要求,数据较为稳定的,不存在极端的最大最小值 数据存在异常值和较多的噪音,可以间接通过中心化避

    2024年02月11日
    浏览(28)
  • LA@二次型标准形@标准化问题介绍和合同对角化@二次型可标准化定理

    如果二次型只含有变量的平方项,则称之为 二次型的标准形 或 法式 ,即 f ( y 1 , ⋯   , y n ) f(y_1,cdots,y_n) f ( y 1 ​ , ⋯ , y n ​ ) = ∑ i = 1 n k i y i 2 sum_{i=1}^{n}k_iy_i^2 ∑ i = 1 n ​ k i ​ y i 2 ​ 标准形的矩阵式 f ( y 1 , ⋯   , y n ) = ∑ i n k i y i 2 = ( y 1 , y 2 , ⋯   , y n ) ( k 1 0 ⋯

    2024年02月09日
    浏览(41)
  • 不要再搞混标准化与归一化啦,数据标准化与数据归一化的区别!!

    数据的标准化是将数据按照一定的 数学规则进行转换 ,使得数据满足特定的标准,通常是使数据满足正态分布或标准差为1的标准。 标准化的常见方法包括 最小-最大标准化 和 Z-score标准化 。最小-最大标准化将数据映射到 [0,1 ]的范围内,最小-最大标准化将数据映射到0-1区间

    2024年01月21日
    浏览(38)
  • 数据标准化方法

    今天看到了“指数移动平均窗口标准化”,就研究了一下这是个啥东西,然后又顺便看了一下其他的数据标准化方法,这里顺便记录一下,方便以后查阅。 zscore标准化是一种 基于数据分布的标准化方法 。它的基本思想是 将数据转换为均值为0,标准差为1的分布 ,从而使得数

    2023年04月22日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包