中间件云原生思考
如果无法正常显示,请先停止浏览器的去广告插件。
1. 中间件云原生思考
---我眼中云原生的未来
彭文杰(花名:姬望)
2.
3. 目录
1 中间件云原生历程
2 当前云原生存在的问题
3 我眼中的云原生的未来
4 畅想未来美好的一天
4. 个人简介
1 EDAS,无状态应用PaaS
2 Spring Cloud Alibaba
3 中间件应用PaaS
4 阿里云云产品PaaS
5. 目前管理的中间件
消息 微服务 流计算
任务调度 网关 其他
可观测
6. 阿里中间件运维演化历程
统一运维系统
独立运维系统
脚本化
手工
7. 统一运维平台技术演进
未来?
流程+K8s
流程+Docker
流程+脚本
8. 中间件云原生难点
无状态=养鸡场
中间件=动物园
9. 中间件云原生难点-案例
ZooKeeper
•
创建
• 生成myid
• 生成zk.cnf
• 扩容
• 生成myid
• 更新所有节点zk.cnf,重启,master最后
• 缩容
• 更新所有节点zk.cnf,重启,master最后
• 升级镜像
• 滚动升级,最后升级master
RocketMQ
•
•
•
•
•
创建
• 生成唯一brokername及配置文件
• 注册到NameServer
扩容
• 生成唯一brokername及配置文件
• 拷贝topic及订阅配置文件
• 注册到NameServer
缩容
• 禁止写入,保持可读
• 等待读写都为0之后,下线节点
升级镜像
• 滚动升级
下线
• 禁止写入,保持可读
• 等待读写都为0之后,下线节点
10. 中间件云原生难点-抽象
配置/数据
差异
节点间通信
行为差异
统一平台
屏蔽差异
状态差异
运维逻辑差异
(不同中间件)
11. 中间件云原生探索1
1. 缺乏扩展能力
2. 无法感知节点身份
3. 严格的顺序
•
•
Statefulset
脚本
12. 中间件云原生探索2
1. 缺乏统一标准
2. 无法统一精细化管理
3. 质量不可控
•
•
•
Operator
Statefulset
脚本
13. 中间件云原生探索3
•
•
•
•
•
•
App模型(OAM)
生命周期状态机
流程编排
Function
生成myid
生成zk.cnf
•
•
•
•
•
•
•
扩容
生成myid
更新所有节点zk.cnf,重启,master最后
缩容
更新所有节点zk.cnf,重启,master最后
升级镜像
滚动升级,最后升级master
14. 目录
1 中间件云原生历程
2 当前云原生存在的问题
3 我眼中的云原生的未来
4 畅想未来美好的一天
15. 大数据、AI应用如何统一
消息
任务调度
微服务
网关
可观测
业务应用
大数据
服务端 AI
服务端
大数据Job AI worker
大数据Job AI worker
统一PaaS
应用入驻
生命周期
日常运维
监控报警
16. 当前云原生问题
1 未考虑中间件、大数据、AI
2 缺乏开发运维架构一体化设计
3 海量组件,但缺乏面向用户的界面
17. 未考虑中间件、大数据、AI
业务应用
房子
地基
中间件
大数据
AI
弹性、AIOps尽头 还是中间件、大数据
18. Dev4Ops架构
东西向:研发架构
运维能力
业务依赖
指标采集 日志采集 报警中心
应用依赖
服务访问
应用B
生命周期
状态机
使用者
应用A
运维逻辑
BaaS依赖
运维依赖
!DevOps
而是Dev4Ops
注册中心
应用C
配置中心
事件中心
Redis
文件中心
RDS
微服务注册
19. 缺乏用户统一界面
20. 目录
1 中间件云原生历程
2 当前云原生存在的问题
3 我眼中的云原生的未来
4 畅想未来美好的一天
21. 云原生3问?
1. 应用包含哪些?
2. 应用开发者想要的是什么?
3. 当前云原生解决了这些问题吗?
22. 我的答案
业务应用
中间件应用
一次开发,随处运行,
大数据应用
AI应用
其他应用..
自动运维
23. 能吗?
24. 类比-解决问题的关键1
一键安装
25. 类比-解决问题的关键2
一键安装
26. 类比-解决问题的关键3
业务应用
中间件应用
一次开发,随处运行,
大数据应用
AI应用
其他应用..
自动运维
27. 需要,但是
k8s不就是云原生操作系统吗?
各种linux不就是操作系统吗?
28. 我们站在谁的视角?
业务应用
中间件应用
大数据应用
AI应用
其他应用..
29. k8s仅是其中核心部分
30. linux仅是某个节点运行的基础
31. 云原生未来-架构
平台
APaaS
应用交付平台
API 应用定义 应用规格定义 逻辑集群编排 建站编排 多K8s管理 扩展能力..
核心能力 编排引擎 运维逻辑引擎 状态机引擎 应用管理器 资源管理器 扩展管理器..
总线层
驱动层
CMDB
服务注册
账户映射
账户驱动
权限映射
云基础
设施
事件中心
云账户
权限
任务
文件
K8s
资源驱动
&调度
计算
网络..
分布式锁
服务暴露
流量层驱动
Runtime适
配
存储
其他..
资源管理
BaaS驱动
底层适配
DNS
负载均衡..
扩展绑定
其他扩展驱动
资源适配
DB
消息..
缓存
扩展适配
日志
报警..
监控
32. 云原生未来-层次
开发工具 开发架构 业务应用
测试工具 运维架构 中间件应用
架构
安全工具 大数据应用
监控工具 大数据底座
工具
操作系统
应用市场
报警工具 AI应用
日志工具 AI底座
多云驱动
其他周边工具
其他服务端应用
阿里云
AWS
Azure
33. 云原生未来-定义
云原生是以服务端分布式操作系统为核心的生态,包含操作系统,多
云驱动,研发运维架构,应用市场及市场内软件(如基础中间件、大
数据、AI运行时,以及相关开发、测试、诊断工具)等关键组成部分
帮助软件提供商实现服务端应用的一次开发,随处运行,自动运维
34. 云原生未来-生态
发
分
上传
开发者
本地开发环境/PaaS
中间件等
应用市场
件
软
备
必
装
安
工具
操作系统
私有化部署 使用者
多云SaaS平台 使用者
分
发
35. 目录
1 中间件云原生历程
2 当前云原生存在的问题
3 我眼中的云原生的未来
4 畅想未来美好的一天
36. 未来美好的一天
业务编码
测试用例
一键搭建
开发环境
架构选型
一键提测
配置监控
报警
全球分发
全自动验收
一键发版
应用市场
37.
38.