去哪儿网应用运维自动化演进之 路 · 2018. 12. 11. · 申请过机器后,还...
TRANSCRIPT
-
去哪儿网应用运维自动化演进之路
-
自我介绍
姓名:郑松宽 (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