AnyBackup
性能爆表
AnyShare
如何购买
我已是Anyshare 客户
AnyRobot
如何购买
购买 AnyRobot 订阅服务
我已是 AnyRobot 客户
一对一在线咨询
我是 AnyRobot 新客户
一对一在线咨询
AnyDATA

爱数博客

全部 AnyBackup AnyShare AnyRobot AnyDATA AnyFabric

云原生,你了解多少?

2020-09-21 2641 0

一、业界对于云原生的定义

总结下来,业界对于云原生涉及的范围大致会定义在 4 个方面:

  1. 方法论和设计原则
    • 12 factor +3
    • 微服务架构模式
    • 声明式 API
    • 不可变基础设施
  2. 技术和架构
    • 微服务架构
    • 服务网格
    • Serverless
    • 容器和容器编排
  3. 流程规范
    • DevOps
    • CI/CD
  4. 基础设施和工具
    • 云服务:如RDS、S3
    • 以容器技术为基础的云原生基础设施
    • Kubernetes、Docker、Helm
    • Etcd
    • OPA、Hydra
    • Prometheus
    • Istio

下面看看一些具有代表性的公司和组织对于「云原生」相关的定义。


Gartner

18 February 2020,《Hype Cycle for Cloud Computing, 2019》

如果某事物是为利用云特征而创建的,则它被认为是云原生的。

这些云特征是云计算最初定义的一部分,并且包括作为服务交付的功能,这些功能具有可伸缩性和弹性,通过使用进行计量,基于服务,在互联网技术中无处不在并共享。

术语“云原生”主要用作形容词。 例如,您可以拥有云原生架构,基础架构,应用程序或操作。

 

整理定义并明确目标是利用云原生的关键。普遍使用三种相互矛盾的定义:

  1. 第一含义是最常见的。 基本上,将云原生解释为原生使用云平台功能。 因此,例如它可以是平台即服务,可用性区域或无服务器。 因此,如果您使用的是 Amazon,那么您将使用 AWS 的本机功能,例如RDS,Lambda 和 Beanstalk。
  2. 第二个含义是关注特定技术,例如容器和Kubernetes。 这由名为 Cloud Native Computing Foundation(CNCF)的组织推动,该组织推广了这些技术。
  3. 第三种含义是本质上具有架构意义的含义。 其中一个来源是 GTP 的 LIFESPAR 缩写。 另一个示例是 12因子应用程序。 这种方法在那些非常了解架构方法的人中很流行,但绝不是该术语的最常见用法。


二、云原生技术解决的问题

云原生架构解决应用的核心技术问题是:可移植性、可扩展性、可靠性和可维护性(易用性)。

云原生让云计算标准化、降低大规模自动化运维门槛:

  • 通过「容器」技术标准化应用分发和应用交付,解耦应用与底层运行环境
  • 通过「Kubernetes」标准化资源调度和资源编排,屏蔽底层架构差异
  • 通过「微服务架构」标准化应用架构抽象,解耦业务与技术
  • 通过「服务网格」标准化服务通信和服务治理

 
  • 为了解决单体架构应对业务的「复杂度问题」,使用微服务架构,标准化应用架构抽象、解耦业务与技术。
  • 为了解决微服务间「通讯管理和异常处理问题」,使用服务治理框架 + 日志、监控、链路跟踪。
  • 为了解决微服务架构下大量应用「部署问题」,使用容器,标准化应用分发与交付、解耦微服务与底层运行环境。
  • 为了解决容器的「编排和调度问题」,使用 Kubernetes,标准化资源调度与编排、屏蔽底层架构差异。
  • 为了解决微服务框架的「侵入性问题」,使用 Service Mesh,标准化服务通信与治理。
  • 为了让 Service Mesh 有「更好的底层支撑」,将 Service Mesh 运行在 k8s 上。
  • 为了解决应用「持续交付问题」,引入了 Devops。


三、云原生的价值

面向产品和研发:

  1. 降低开发复杂度:架构能力由基础设施提供,包括可移植性、可扩展性、可靠性、安全性、可维护性等,基础能力开箱即用,研发团队在研发过程中能够更专注于业务
  2. 降低研发依赖:通过微服务架构降低微服务间开发依赖;通过微服务治理的基础设施降低微服务开发与部署 (运维) 间依赖
  3. 提升问题处理效率:容器化部署保证环境一致,标准化应用的分发与交付,能够在一定程度规避环境问题对于排错的影响;链路跟踪、指标监控、日志分析等技术提升系统可观测性,使得更容易全面分析和定位系统问题

 

面向客户  (云服务的价值):

  1. 降低拥有成本,更快地实现价值:客户能够按需采购,以及快速地、平滑地进行业务能力扩展
  2. 降低风险:服务无故障、用户业务不中断,客户无需担心和关注服务的可靠性以及考虑相关的故障应对
  3. 易维护:客户/用户无需关注服务的维护,可以专注在服务使用和业务价值实现

四、AnyShare Family 7 云原生架构

AnyShare Family 7 云原生业务架构
 

1. 所有的服务将对于其他服务的访问信息,通过配置文件,配置化;部署阶段由部署子系统根据环境进行配置

2. 基于原有的主机 Nginx 来实现对外的连通性

3. 基于容器的服务基于 Proton 负载均衡来实现容器之间的连通性

4. 通过 Nginx 来代理 Proton 负载均衡服务暴露的地址与基于主机的应用服务暴露的地址

   1)基于主机的应用服务之间基于 Nginx 来实现连通性

   2)基于主机的应用服务与基于容器的应用服务之间基于 Nginx 来实现连通性


服务模块化架构

       • 每个模块独立部署
       • 部署控制台负责通过整个Proton Runtime 云原生架构来进行资源分配
       • Proton Runtime 云原生可以指定资源对每个模块进行部署
       • Proton Runtime 云原生提供高可靠的高可用服务。
       • 应用层通过Proton容器服务扩展软件层。
• 扩展方式: 容器根据配置创建对应硬件资源的服务,能提高硬件资源最大利用率。
• 基础应用层,每个数据存储的服务对硬件的利用率不同,对应资源池不足,只需要扩展对应的资源池。

请就本文对您的益处进行评级:

标签

产品技术

相关文章

热门标签

版本发布 在线教学

拨打400

免费销售咨询热线

400 8216055

7*24 小时免费售后服务热线

400 880 1569

购买咨询

购买咨询

售后服务

售后服务

返回顶部

为了给您提供更优质的服务,请您先完善以下信息:
确认提交

扫码关注

爱数技术支持中心公众号