张口就问DevOps怎么理解以及你们有什么DevOps规范,你认为有哪些DevOps规范。下面我们就来聊一下。
1、变更规范
- 上线变更:代码上线、回滚、扩缩容;
- 配置变更:系统配置、应用配置;
- 网络变更:网络割接、设备更换;
- 其它变更:流量调度、服务切换、服务下线…
- 原则:
a、制定变更审核流程;
b、制定变更相关方通知(群、邮件);
c、制定变更回滚策略;
d、遵循测试、灰度、全量上线的规则;
e、下线变更要将服务器依赖处理干净,比如说挂着vip、有域名解析。
2、容灾规范
- 服务灾备:多机器、多机房;
- 数据灾备:多备份、异地备份;
- 网络灾备:多线路、多设备;
- 原则:
a、自动切换 好于 手动切换;
b、无状态 好于 有状态;
c、热备 好于 冷备;
d、多机房 好于 单机房
3、容量规范
- 系统容量:木桶原理计算系统的全链路容量、用量、余量;
- 模块容量:模块的容量、用量、余量;
- 机房容量:分机房的容量、用量、余量;
- 单机容量:用于反向计算机房、模块容量;
- 原则:
a、制定模块单机容量指标(比如QPS、连接数、在线用户数等);
b、容量要考虑下行(读)、上行(写),考虑存储增量;
c、计算当前模块总容量,收集当前的用量,并对比容量计算余量;
d、系统总容量可以根据木桶原理,找到短板模块后,反向计算出来。
4、巡检规范
- 用户核心指标;
- 服务核心指标;
- 基础资源指标:服务器;
- 依赖资源指标:依赖db、依赖接口;
- 自动化巡检报告;
- 值班oncall安排;
- 原则:
a、DashBoard核心在于收敛、舍得;
b、自动化巡检的必要性在于异常侦测,预防故障。
5、告警规范
- 基础监控:CPU、内存、网络、IO;
- 应用监控:进程、端口;
- 业务监控:日志、业务埋点;
- 依赖监控:数据库、依赖接口…
- 原则:
a、核心监控收敛成告警,并对告警进行分级,备注告警影响;
b、核心监控形成可排查问题的DashBoard;
c、告警的价值在于实时发现故障。
6、预案规范
- 线路切换:移动、电信、联通线路切换;
- 机房切换:不同机房切换;
- 机器切换:机器故障时进行摘除;
- 服务降级:无法切换时,降低标准继续服务;
- 数据库切换:主从切换、读写切换;
- 网络切换:主备线路切换、链路切换;
- 原则:
a、域名切换 好于 更换IP;
b、自动摘除 好于 手动操作;
c、自动切换 好于 手动切换;
d、考虑好雪崩事宜。
7、故障管理规范
- 服务分级:确定各服务用户角度的影响;
- 故障定级:制定故障定级标准;
- 制定故障通知、处理规范;
- 制定故障复盘,改进措施按时保量完成的规范;
- 原则:
a、拥抱故障,同类故障不能重复发生。
8、权限安全规范
- 开发、运维、临时权限;
- 安全上符合安全审计标准。
9、文档、工具规范
- 统一共享知识文档;
- 统一共享各种脚本工具;
- 原则:
a、理想的情况是“一站式运维平台”,一个平台涵盖所有工具操作。
10、标准化规范:
- 主机名标准化;
- 日志存储标准化;
- 日志格式标准化;
- 域名使用标准化;
- 软件安装目录结构标准化;
- 服务及相关的组件使用命令标注化;
- 原则:
a、主机名尽量能看出更多信息,比如服务、模块、机房等;
b、日志是排查问题的重要信息,一定要标准化,方便手工排查,更是为了以后用工具处理打下基础。
11、资源管理规范
- 服务器
- vip
- 域名
- 证书
- 代码
- k8s
- 数据库
- 中间件
- 原则:
a、资源之间是有关系的,要建立有关系的资源管理。
------ 本页内容已结束,喜欢请分享并注明原文链接 ------