企业如何去一步一步走向云原生

185 阅读2分钟

「这是我参与11月更文挑战的第3天,活动详情查看:2021最后一次更文挑战

自从云计算兴起之后,企业不断上云实践。微服务、K8s、容器化的发展更是让软件完全适应云上生长。我们今天进来简单探究一下企业软件如何从单体应用发展为云原生应用。

想要去做好软件架构的升级,我们必须去培养自己的全局观。站在更高的纬度去思考问题,不光是处于开发者的角度,我们要站在企业管理者,各级架构师,业务专家等等的角度上去进行思考,对企业架构进行全方位的梳理,去迭代演进我们的企业架构。

企业架构不仅仅是技术的问题,它体现在业务划分,发布流程,组织架构等方方面,一下我们从四个方面来解读一下企业如何发展云原生。

  • 技术架构: 单体架构、垂直应用架构、分布式架构 、SOA面向服务架构、微服务架构、服务网格

  • 发布流程: 手工发布、脚本发布、平台化发布、CICD

    • 手工发布:最早期的一种形式,主要针对单体应用,部署在单台服务器上,手工去配置参数,搭建环境
    • 脚本发布:在容器化没有盛行的时期,借助服务器脚本能够方便我们去搭建更为复杂的程序
    • 平台化发布:构建测试发布平台,通过软件发布
    • CICD 全自动化发布,借助Jenkins、gitLab等工具,实现提交代码,自动发布程序。该阶段也得益于K8s、容器化的发展,构建镜像,通过镜像创建容器,容器能保证环境的独立,让我们的部署更加容易。
  • 数据架构: 简单统计分析、支持管理决策、数据驱动创新

    • 简单统计分析: 将数据形成报表,进行统计展示
    • 支持管理决策:对数据进行分析,使的程序智能化
    • 数据驱动创新:根据数据去发现创新点,
  • 组织架构: 研发运维独立、建立平台衔接研发运维、建立架构委员会融合研发运维

这些的发展都得益于云计算的发展。

我认为企业去搞云原生应用这个事情,需要根据自身发展,云原生更适合比较庞大的应用,随着应用的不断发展,服务拆分势在必行,服务拆分开,虽然会带来很大的优势,但是一些问题接踵而至,所以我们需要容器化,需要容器编排,需要CICD,需要管理服务的调用,软件的升级也需要一步一步来,遇到问题解决问题,才是发展的根本。