云原生的定义
关于Cloud Native,在CNCF目前已经达成了共识,并输出了1.0版本的定义:
- 云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。
- 这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。
- 云原生计算基金会(CNCF)致力于培育和维护一个厂商中立的开源生态系统,来推广云原生技术。我们通过将最前沿的模式民主化,让这些创新为大众所用。
并且还有对应的 12-factors:
- 基准代码:一份基准代码,多份部署
- 依赖:显式声明依赖关系
- 配置:在环境中存储配置
- 后端服务:把后端服务当作附加资源
- 构建,发布,运行:严格分离构建和运行
- 进程:以一个或多个无状态进程运行应用
- 端口绑定:通过端口绑定提供服务
- 并发:通过进程模型进行扩展
- 易处理:快速启动和优雅终止可最大化健壮性
- 开发环境与线上环境等价:尽可能的保持开发,预发布,线上环境相同
- 日志:把日志当作事件流
- 管理进程:后台管理任务当作一次性进程运行
浙公网安备 33010602011771号