运维研发看这一篇就够了
得先了解运维的核心:无死角的监控+自动化1、搭建CICD平台https://www.jianshu.com/p/4237ed1277ce2、k8s3、openstack
·
运维的核心
无死角的监控+自动化
先安利一波:
1、kubernetes
2、搭建CICD平台
3、监控报警以及日志管理
- 部署/升级是否容易
- 监控数据是否准确
- 监控警报是否及时
- 是否主要监控Docker主机/容器
4、DEV和SRE的换位思考
【秦大的一篇分享】
一个什么什么好不好,看什么?一句话:少操心 不操心
我觉得生活中的90%都可以用到这点,融入在生活中,源于生活,提取在此
从运维角度看架构
从运维角度来提升可运维性,提升稳定性和容灾能力,这可是一个架构师必须掌握的技能,
写一些零零散散的业务逻辑真的不如好好提升架构能力
好的软件架构,一句话概括:就是不需要运维操心的,或者尽量少操心的
- 易于部署
- 更少的环境依赖:解决环境依赖的典型利器就是Docker Image,另一个解决依赖的手段是Buildpack机制(代码编译之后,和依赖一起打包)
- 自动化配置: 中心化配置 典型的配置就是关联关系配置 典型解法有两个,一个是名字服务注册中心 另一个就是加一个转发层,比如lvs或者nginx
- 易于扩容
- 无状态水平扩展
- 有状态则自动路由流量: 通常是造成有状态的根因,数据如有分片机制
- 自动注册进系统
- 易于监控
- 关键指标透出: 开一个/varz接口,访问这个接口,就会返回该模块的监控指标数据。 MQ服务的消息堆积量 支付成功率 对象存储的接口延迟 只有进程是否存活 端口是否在监听
- 日志规范全面: 制定统一的日志规范,便于统一的自动化工具处理
- 易于恢复
- 自动容灾: 请求失败,一定要做重试,server端的接口一定要做到幂等 退化处理,比如原本从redis读取数据,速度快,redis挂了可以退化到mysql读取
- 能够自保: 限流熔断 降级
- 外挂自愈: 某些故障有固化的处理脚本,并且公司有故障自愈平台,可以用监控告警触发这个脚本
从开发角度看架构
更多推荐
已为社区贡献2条内容
所有评论(0)