作者:刘亚丹 2023-06-15 07:28:11
云计算
云原生 可观测能力是当前热门的方向,包括指标监控、追踪和日志记录。我们可以从用户视角出发,关注稳定性、性能和产品易用性。在市场上有很多成熟的产品可供选择,通过外部合作(购买)的方式快速具备可观测能力。
本次分享将从以下几个关键点展开论述:
时代:了解时代的趋势和大方向,才能事半功倍。雷军有个著名的理论——“飞猪理论”,即站在风口上,猪都能飞起来,这也表达了把握时代趋势的重要性。
加速:在把握时代趋势的基础上,选择关键技术要素,加速运维技术保障体系的建设。同时,需要考虑公司的现状特点,避免脱离现状构建“空中楼阁”。
技术:云原生时代的关键技术是我们深入探讨的重点。然而,技术不是我们的目标,解决业务问题、业务痛点并带来业务价值才是我们的目标。因此,我们应该开放连接,避免重复造轮子,借助云原生时代的IaaS、PaaS和SaaS能力,加速我们的能力成长。
趣丸科技成立于2014年,是一家集兴趣社交及电子竞技等业务于一体的创新型科技企业。公司积极布局多元化赛道,紧跟Z世代心智发展,最大化创造用户价值。作为国内领先的兴趣社交平台,TT语音是我们的拳头产品,累计注册用户已超1亿,并成为LPL、KPL、PEL等六大头部电竞职业赛事官方合作伙伴。
以下内容是基于我们公司的现状经验,不一定全部适用于其他公司和场景,如果有其他问题,欢迎大家一起交流。
提到趋势,有一个词让我印象深刻:VUCA。
VUCA这个词最早是在90年代冷战时期提出的,当时世界变得不确定和复杂。回顾我们过去三年的变化,我们也能深刻感受到VUCA的意义。
面对VUCA时代,需要找到应对措施。我们可以从两个角度来看待这个问题:一是“黑天鹅”,指的是发生概率较小的事件;二是“灰犀牛”,指的是发生概率较大的事件。
针对黑天鹅(小概率事件),我们总结出一个词:适应性。这个词源于达尔文在《物种起源》中的观点:能够生存下来的物种并非最强大的,而是最能适应环境的。面对不确定性和小概率事件,我们需要建立适应能力。适应能力的本质是快速迭代和自我改变。尽管改变是带有风险的,但我们需要基于对未来的最有可能假设,通过最小化版本进行验证,不断提升组织的适应性。
另外一个维度,灰犀牛(大概率事件),我们可以做一些长期的规划,主要关注三件事情:全球化、多云化、降本。
在技术战略选型方面,我想简单分享一下过去10年在运维领域中最重要的几个技术理念之间的关系和意义。
首先是ITIL(IT Infrastructure Library),它是过去IT服务管理(ITSM)的一种实践方法,其目的是通过流程来管理和控制IT服务的质量,关键在于设计适当的流程以及明确定义参与人员的角色。然而,ITIL 在实施过程中也存在一些问题,比如流程繁琐效率低,质量不一定能得到显著提升,出了质量故障往往只是让某些人背锅。
接下来是云原生(Cloud-Native),它的目标是构建和运行可弹性扩展的应用服务,关键要素包括弹性、可扩展性和高可用性。在技术方面,容器化、微服务化、服务网格、不可变基础设施和声明式API是云原生的关键技术要素。再深入一层,有云原生十二要素(https://12factor.net/zh_cn/)。
然后是DevOps,其目标是实现频繁且快速地交付软件。它强调多个团队共同合作,面向最终用户交付价值,关键技术要素是工具化和自动化。
最后是SRE(Site Reliability Engineering),其中以Google的SRE为代表。SRE是一种运用软件工程方法解决问题的方法,关注可用性、延迟、性能和容量等方面。对于SRE的软件工程能力,维基百科上有详细的解释,简单来说,就是要掌握编写代码来解决问题的能力。综上所述,我认为作为一个SRE,需要围绕着目标和手段,来理解和掌握这些技术理念,这样才能成为一个合格的SRE。
在技术架构方面,我从两个视角来看:
首先是应用的视角。应用的架构核心是实现应用的弹性伸缩,这可以通过以下三个方面来实现:无状态化、BaaS化(Backend as a Service)、强大的应用流量治理能力;
其次是基础设施的视角。基础架构的核心是实现资源的弹性,这可以通过以下两个方面来实现:资源的统一交付和调度、多云互联互通。
在构建技术架构时,有几个必须具备的技术能力:
通过以上的技术能力构建,可以实现一个具备弹性、可扩展性和高可用性的技术架构,从而提升系统的性能和用户体验。
在技术战略的实施中,组织架构和行为是必不可少的保障措施。下图是来自《高效能团队模式》一书的组织架构设计图,这张图在过去的两年里非常热门。图中的设计基于康威定律,进一步引申出认知负载理论,并推导出四种团队和三种交互模式。
对于从事软件工程的人来说,康威定律应该是一个熟悉的概念。它的核心观点是组织架构决定系统的架构,反过来说,如果想要拥有特定的系统架构,就需要设计相应的组织架构。组织架构决定了团队之间的交互模式,而跨团队的沟通本身是有成本的,这个成本可以称为认知负载。因此,在组织设计上,我们应该尽量降低沟通成本,减少团队之间的认知负载。
举个例子,在云原生时代,涉及到操作系统、虚拟化和容器化等技术的复杂性非常高。如果一个应用开发人员需要对每一层的技术细节都了如指掌,才能完成业务开发和软件交付,那么他的认知负载将会非常大。为此,我们在实际中看到,在组织上进行了分层,例如操作系统层、虚拟化层和容器层(如Kubernetes),以屏蔽底层复杂概念,极大地降低了认知负载。
基于这个底层逻辑,这本书提出了四种团队类型:业务流团队、平台型团队、复杂子系统团队和赋能型团队。同时,还提出了三种交互模式:协作(一起做)、服务(黑盒模式)和促进(教练赋能)。
通过理解和掌握这些组织架构设计的原则和模式,我们可以成为一个更合格的团队成员,并在实际工作中降低沟通成本,减少团队间的认知负载,从而提高工作效率和团队的协作能力。
最后,我想强调的是,文化不仅仅是挂在墙上的宣传语,它通过对哪些人进行奖励、提升和解雇来体现,真正的文化是通过这些行为来体现出来的。
1、全球一张网:我们在过去两年的实践中,面临了多个VPC之间的连接问题,配置静态路由非常繁琐且容易遗忘,导致部分网络不通,引发故障。为了解决这个问题,我们提出了"全球一张网"的概念,即任意节点间实现内网互联互通,并通过简便的配置方式实现高可用的互联网络。
2、统一资源交付、统一资源调度和应用交付能力:这三个能力从效能的角度来看,包括质量、效率和成本。我们通过标准化、系统化、自动化和智能化的手段实现了这些能力。
3、可观测能力:可观测能力是当前热门的方向,包括指标监控、追踪和日志记录。我们可以从用户视角出发,关注稳定性、性能和产品易用性。在市场上有很多成熟的产品可供选择,通过外部合作(购买)的方式快速具备可观测能力。
4、故障复盘能力:复盘能力是组织成长的关键。对技术团队而言,建立良性的复盘文化并非易事。以下是我们的两个经验,供参考:
通过团队的努力,我们期望成功时的样子是:
基于具体的业务实践场景,并结合VUCA时代的挑战和机遇,趣丸科技形成了"云原生+DevOps+SRE+ITIL"技术理念,明确了全球一张网、统一资源交付/统一资源调度/应用交付能力、可观测能力、故障复盘能力的具体实践路径,并结合OKR进行落地,构建出了一套云原生时代下的运维技术保障体系。
刘亚丹
趣丸科技 技术保障部负责人
标题名称:救火运维逆袭攻略:云原生+DevOps+SRE+ITIL
网站路径:http://www.mswzjz.cn/qtweb/news39/420339.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能