Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
去哪儿网应用运维自动化演进之路
自我介绍
姓名:郑松宽 (songkuan.zheng)
部门:OPS
简介:Portal和Watcher等运维平台开发
目录
1 为什么要做Portal
2 Portal的设计和目标
3 目前Portal能给我们带来什么
4 Portal未来展望
一、为什么要做Portal
应用 CI/CD 主机
存储
计算
中间件
监控
报警
日志
OPSDB
脚本 文档 工具 权限 DB
运维人员
openstack DNSDB
创建&销毁主机
信息查看
监控报警
作用 问题
找负责人困难
部门统计困难
业务线参与少
应用树
BU
Team1
App1
App2
Team2 App3
节点
主机 负责人 审批人
业务线参与管理主机
负责人定位迅速
部门主机统计方便
作用 问题
主机扩容仍由OPS负责
通过邮件沟通 报警通知给负责人
记录不易查询
账号添加仍由OPS负责
OPSDB 应用树 审批中心
开发人员
SRC 账号系统
系统入口太多
各系统数据未打通
数据未打通导致自动化困难
申请过机器后,还要申请账号
发布机器列表需要手动维护
应用指标收集机器列表需要手动维护
机器报警、维护、过保不确定找谁
应用资源账单难以完善,成本控制困
难 …
解决方案
Portal
二、Portal的设计和目标
团队
OPS CM TC
Portal的目标
一站式
自动化
智能化
数据互通是基础
How?
Appcode是什么
唯一标识一个抽象的应用(广义)
Web
服务
GPU云
实例
Mysql
实例
一组
交换机
...
为什么要抽象化
不用考虑服务和资源的具体细节
定义共同的属性(负责人、权限、账单等)
易于扩展,便于在多个系统共享
Appcode的作用
共同
语言
连接
系统
数据
互通
Appcode
监控
报警
日志收集
中间件
CI/CD
主机
存储
计算
数据存在于多个节点
数据更准确
良性生态
数据更有用
Portal的架构
Appcode
应用注册
应用配置
应用中间件
API MQ UI
监控
报警
故障管理
实时日志
主机
账号
GPU云
ES云
环境配置
测试
发布
代码仓库
三、目前Portal能给我们带来什么
便捷的Appcode新建、修改和删除
机器的申请和扩容
Before
SRC
手动填写应用树节点
需要切换到应用树
Now
Now
Now
主机信息查看
基本信息
使用率
账号
主机的回收
Before
Now
自动化的Qmonitor配置
外部服务的导航
应用的发布
简单的发布配置
直观的发布过程
丰富的API
信息修改的消息推送
RabbitMQ IC Event
四、Portal未来展望
账号 自动化
机器申请后自动添加账号
应用负责人更新后更新账号
应用级 监控 报警
应用机器更新后同步到Qmonitor
为应用同步某些性能监控(GC等)
通过应用负责人控制应用指标权限
应用 账单
主机账单
监控报警账单
Noah、ES和GPU等云服务账单
Q&A