yabo2021最新版|靠谱的赌博十大网站





互联网新兵的云原生改造

日期:2023-06-16

摘要

案例背景:yabo2021最新版客户——某中型互联网公司处于快速发展阶段,重度依赖公有云服务,随着业务压力增大,许多产品线引入微服务,给运维带来更高的要求。

yabo2021最新版建议:先通过改善一个产品线的 DevOps 过程,形成最佳实践,建立一个 DevOps 平台,积累专属于该公司的经验,最终逐步推广到整个公司。

实践成果:整个 DevOps 平台经过了可用性和性能的挑战,截止到项目结束,整个公司的研发过程已经实现了云原生的转型。生产集群支撑了 2000+ 个 Pod ,每天 500 次以上的构建。

 

案例详情

yabo2021最新版客户——某中型互联网公司正处在快速发展阶段,短短几年时间,研发团队从几十人发展到了超过 500 人,单一研发部门也变成了 5 个产品线。该公司重度依赖公有云服务,大多数运维工程师技能有限,仅仅了解阿里云的一些操作。部分工程师开始尝试使用阿里云 Kubernetes ,但并没有足够的经验,非常依赖阿里云提供的界面。随着业务压力的增大,许多产品线已经引入了微服务,这也给运维带来了更高的要求。

针对这个局面,yabo2021最新版云原生团队的认为,没有强大的部门墙是该公司的一个优势,可以先通过改善一个产品线的 DevOps 过程,形成最佳实践,建立一个 DevOps 平台,积累专属于该公司的经验,最终逐步推广到整个公司。

选择试点 DevOps 团队

首先,要选择一个进行改造的产品线团队。

 L 产品线团队已经引入了微服务架构,应用拆分成了几十个微服务,但应用部署还采用手动复制粘贴的方法。尽管为了避免进一步的复杂性,所有微服务部署在同一个主机上,但每次发布,配合修改配置,都要花费一个多小时,还经常出错,排查这类问题又要花费大量的时间。

而且,因为研发团队根据不同的需求来源制定迭代计划,经常会出现连续几天都有应用上线的情况,让应用发布过程更加苦不堪言。L 产品线团队的负责人也十分认同需要改善开发和运维的上线体验。于是我们的改造工作决定先从 L 产品线团队展开。

改变发布管理

L 产品线团队之前的软件发布过程是这样的:

可以看到团队会根据不同的需求来源创建项目,然后每个项目按照自己的节奏发布。每次上线,都需要反复经历合并代码、回归测试和应用部署等工作。

在开源世界,以及许多成熟企业的研发过程中,已经采用了定期和按特性发布的模式,即将需求拆分成一个个可独立交付的用户故事,然后定期发布。

yabo2021最新版建议将上述过程改造为:

这样,我们将同一时期的不同需求的项目纳入同一个发布计划,避免了过多的重复操作,可以降低相关方的工作量。

Note

这个模式的顺利实施,也需要用敏捷的方法管理需求。为此,yabo2021最新版团队引入了 Scrum 课程,强调了敏捷方法对于整个过程的意义。

改造研发流程

L 产品线团队之前的研发流程,存在着较多的问题。例如,软件并没有版本,这就造成了上线回退非常麻烦,为此我们结合 12 factor 和现状,设计了一套标准的 DevOps 流程:

这个流程需要结合持续集成和 Kubernetes 的功能,最重要的,也确实让开发者的工作更简单了。例如,构建工作融入到了开发者的日常工作中,根据预先设计,当开发推送的 Git 特定分支或打 Tag 时,就会触发构建或集成环境的更新。其次,因为有一个标准的 Chart 发布工作,可以让测试与生产环境的差异更加明晰,可以减少环境差异导致的问题。

Note

这个过程涉及到了敏捷方法、12 factor、DevOps 等多方面的知识,yabo2021最新版团队也进行了相关的知识传递工作。

打造 DevOps 平台

DevOps 平台的搭建过程更加直接,但是为了保证可维护性和扩展性,也做了许多细节设计。例如,Jenkins 采用多 Agent 模式,采用 MultiBranch Pipeline,代码中存放 Jenkinsfile 和 Dockerfile 等方法,基本上省掉了 Agent 的维护。

Harbor 存放的是所有的镜像,所以必须要实现备份和恢复。Helm Chart 存放的是我们的发布信息,所以我们也需要一个高可用的 Git 服务。

Kubernetes 是一个标准化的平台,但是各个云厂商也做了许多自己的界面。因为需要对接阿里云、华为云、 AWS 以及许多合作伙伴的私有化部署的 Kubernetes ,所以对于 Kubernetes 的使用,尽可能采用标准的方式,这避免了厂商的绑定。

应用改造

微服务模式下,模块在可观测性上有了更高的要求,需要开发探针和 Metrics 接口。还有一些应用,没有实现配置文件与程序分离,也需要做相应的改造。

Note

云原生时代与传统运维的稳定性有着不同的内涵,需要理解新的理念,并结合 Kubernetes 的功能。另一方面,为了更好地持续交付,也需要改造应用配置的方式。为了让开发对改造有更深刻的认识,yabo2021最新版团队组织了《稳定性的模式与反模式》、《12-factor》 、《Kubernetes 基础》和《Kubernetes 最佳实践》等课程。

CI/CD 实施

尽管 L 产品线的服务分为几个不同的类型,但实际上并不是特别的标准,所以选择在模块源代码种存放 Jenkinsfile 和 Dockerfile ,各个模块的负责人可以根据具体项目进行调整。yabo2021最新版团队编写了几类模块的标准 Jenkinsfile 和 Dockerfile,并制定了标准的 Jenkins Job 模板 ,研发团队可以根据自己的情况采用。

Helm Chart 编写

这个项目虽然是微服务架构,但是部署时,往往存在一定的关联性,所以yabo2021最新版团队将整个应用封装成一个 Helm Chart,可以实现应用的一键部署。另外,也有许多细节的设计。比较简单的诸如将一些全局配置做成变量,复杂的包括当某个配置发生变化,直接触发相关应用重启的设计。yabo2021最新版团队也将 Helm Chart 的调用整合到了 Jenkins ,这样研发团队可以在界面上选择特定的 chart 版本,进行部署,当然也能实现回退。

可观测性仪表盘

针对应用的架构,开发相应的仪表盘,便于应用运维人员及时发现问题。

L 产品线改造总结

开发者的工作更轻松了,这是实现 DevOps 改造必须要做到的。新的流程没有给开发者增加任何额外的任务,可以专注于开发工作。每一次发布更稳了,因为严格的区分了构建、发布和运行三个过程,我们可以清楚的知道每次发布的内容,可以轻松的切换到各个版本。

另外,这个过程也彻底避免了对厂商的依赖。L 产品线团队的产品,后来分别部署到了华为云、AWS 和几个客户的私有 Kubernetes ,基本上实现了一个命令部署,大大提升了客户的满意度。

全公司推广

yabo2021最新版通过 L 产品线的 DevOps 实践,总结出了一套适用于该互联网公司的行之有效的流程和平台,所以下一步就是将这些积累推广到整个公司。在这个过程中,又经历许多复杂的技术栈,其中包括 Java, .NET Core, Python, Golang, .NET Framework 等,整个 DevOps 平台经过了可用性和性能的挑战,截止到项目结束,生产集群支撑了 2000+ 个 Pod ,每天 500 次以上的构建。

最近yabo2021最新版科技还有一些新动态,让我们快速回顾一下。

yabo2021最新版科技荣获华为商业新锐奖

yabo2021最新版与华为的合作持续多年,深入华为政企业务,保持业绩高速增长。自双方合作以来,战略定位协同,战略资源共享,在时代新局下共育新机,实现了价值创新和整合共赢。

表扬信+1,yabo2021最新版实力再获认可!

yabo2021最新版科技在国网湖南信通公司新一代能源互联网营销系统的重点保障工作中,认真负责、耐心细致、高质量协助完成了保障工作。国网湖南信通公司对yabo2021最新版科技及杨杰工程师的饱满工作状态和专业能力表示高度认可与感谢。

中山农商行来yabo2021最新版广州分公司参观考察

近日,中山农商行客户来到yabo2021最新版广州分公司进行参观考察,yabo2021最新版广州分公司的同事们向客户详细介绍了公司整体情况以及针对客户项目是如何高效有序开展的。中山农商行客户对yabo2021最新版科技与此次参观均表示高度认可,并表达了对未来能与yabo2021最新版继续合作,助推事业提质增效的期待!


锻造凝炼IT服务 助推用户事业发展
地址:北京市西城区百万庄大街11号粮科大厦3层
电话:(010)58523737
传真:(010)58523739