云原生应用十二要素
基准代码 快速交付:合理划分边界,良好的生命周期管理
依赖 提升开发效率 标准化,排除意外风险
构建发布运行 软件发布管理通过流水线实现CI/CD自动化
配置 软件发布管理:配置转换环境变量
日志 实施系统指标--日志管理系统
易处理 自动弹性伸缩 将缓慢的进程转变为后端服务
后端服务 弹性、敏捷 试用断路器,松散绑定
开发环境与线上环境等价 可靠性 凭借云平台,获得等价性
管理进程 可靠性 转变为后端服务,并暴露为后端REST接口
端口绑定 运营效率: 应用服务只需要知道uri地址与对应端口
进程 云兼容性: 将状态管理交给后端服务
并发 自动弹性伸缩 转为云平台设计,适用pass的功能
云原生应用是独立的小规模松散耦合器
基于云原生的相关技术,运行在云上,充分发挥云的优势
云原生应用的适用场景:
迭代交付IT产品或服务
互联网企业
ISV提供商
智能设备提供商
云服务商
信息服务提供商
云原生应用和传统应用的区别
云原生可预测,云原生应用·符合旨在通过可预测行为最大限度提高弹性的框架或“合同”
操作系统抽象化
资源调度有弹性
团队借助DevOps更容易达成协作
敏捷开发
微服务各自独立,高内聚,低耦合
自动化运维能力
快速恢复
弹性,分布式 高可用 自动化 自服务
自动水平伸缩
业务逻辑与数据解耦
业务逻辑与会话解耦
去中心。自均衡,最终一致性,跨可用区的部署与调度
高可用:
基于不可靠的,可抛弃的资源设备高可用,反脆弱系统,应用任意服务实例失效,系统自发现,隔离并自动恢复,云基础设施
自动化:自动化部署,升级和扩缩容,支持自动化监控,告警,故障的定界定位和故障自愈
自服务:服务可被其他应用或者开发者自主发现,自助按需获取,自动使用并计量,自助服务管理
云原生整体架构的局限性;
单体架构的问题不在于不可拆分上,在于无法隔离和自治,应用规模越大,局限性越明显
微服务独立性和敏捷性更好,架构持续演进更容易,更适合云原生应用
云原生架构模式:
微服务架构
独立性和敏捷性更好
serverless架构
无服务架构由开发者实现的服务端逻辑运行在无状态的计算容器中,由事件触发,完全被第三方管理,是在传统容器技术和服务网格上发展而来,侧重使用者
serverless与微服务的关系:微服务向serverless演进,并长期共存
主要变化:
更快的弹性
更快的发布
更简化的运维
更细力度的资源调度
事件驱动的架构
云原生解决方案:
加速企业构建云原生应用
云原生基础设施:
容器引擎,容器网络,容器存储Everest
极致轻量,快速并发
硬件直通,动态队列,WARM pool
nas卷直挂,独立VF,POSIX卸载
基于云原生基础设施的多云管理解决方案:
多云容器平台MCP
应用服务网络ASM
多集群,多区域,多云统一应用管理能力,灵活弹性与容灾能力
云原生基础设施的边云协同解决方案
中心云,边缘云
极轻极简,边云协同,异构算力,云原生边缘架构
华为云DevSecOps
需求涉及安全
开发安全
测试安全
运维安全
GDPR CCPA
CSE微服务引擎,配置管理,服务治理,安全可靠,注册发现
加速微服务应用开发和高可用运维
全栈立体运维,构建360度运维能力