系统可用性指标有哪些方面的内容_行为指标有哪些方面

系统可用性指标有哪些方面的内容_行为指标有哪些方面本文讨论 2 个主题:什么是高可用系统?如何建设?高可用什么是高可用系统符合下述 2 个特征就是高可用系统单位时间内,系统不可用的时间短例如:一年内,系统不可用的时间不超过5分钟若发生系统不可用,能在短时间

本文讨论 2 个主题:什么是高可用系统?如何建设?

系统可用性指标有哪些方面的内容_行为指标有哪些方面

高可用

什么是高可用系统

符合下述 2 个特征就是高可用系统

  • 单位时间内,系统不可用的时间短
    • 例如:一年内,系统不可用的时间不超过5分钟
  • 若发生系统不可用,能在短时间内恢复可用
    • 例如:若在10年内总的不可用时间不超过50分钟,但其中某一次不可用时间就达到40分钟,也不算是一个高可用系统

我们常说 4 个 9,5 个 9,就是衡量系统可用性的指标,分别表示可用性为 99.99%,99.999%,以 4 个 9 为例,意味着一年里不可用的时间不得大于 52 分钟

衡量高可用系统的 2 个指标

  • 可靠性
    • 平均无故障工作时间 MTTF
  • 可维护性
    • 平均故障修复时间 MTTR

要提高可用性,就要想法提高这 2 个指标

如何建设高可用系统

  • 从软硬件环境角度
    • 系统稳定,故障率低
    • 冗余部署,及时切换
  • 从运营维护角度
    • 按计划停、开机
    • 预见故障,早作准备
    • 故障突发时,及时发现,定位故障原因,迅速修复

从软件环境角度

  • 使用主流和成熟的技术,新技术选型慎重
  • 软件过程受控,软件质量高
  • 软件系统具有良好的扩展性,采用模块化的架构设计,支持热部署,配置更新不停机
  • 采用分布式架构,可集群部署,平滑的集群扩张

技术选型

  • 当前处于技术爆炸的年代,各种新技术层出不穷
  • 技术选型不能太激进,建设一个稳定的系统是最重要的

软件过程

  • 目标
    • 开发高质量的软件
    • 培训高素质的人员
  • 确立软件过程,制定相关的规范、流程
  • 分析、设计、开发、测试、培训和部署
  • 里程碑和检查点
  • 关键过程域(KPA)
    • 项目计划
    • 需求管理
    • 设计评审
    • 配置管理
    • 变更管理
    • 代码走读,同行评审
    • 技能培训和软件过程流程培训

扩展性和模块化

  • 软件架构要考虑扩展性
  • 模块化带来平滑的扩展
    • 扩展时不需要重新启动系统
  • 采用微服务架构是一种解决方案

分布式架构

  • 负载均衡
  • 通过冗余,提高可用性

分布式架构实践

  • 状态信息集中存储
    • 例如,web 应用程序中的 session,保存到缓存服务器中
  • 锁定当前资源
    • 单机部署时,不存在资源争用,在分布式环境里,要采用对资源加锁的方法避免争用
  • 分布式文件系统
    • 分布式文件系统,例如FastDFS,对大量小文件的处理能提供稳定性和更好的性能
  • 分布式数据库和 Nosql 数据库
    • Nosql 数据库更适合在互联网环境下处理海量数据,一般都原生支持分布式集群部署
  • 消息队列和异步处理

从硬件的角度

  • 服务器可靠,避免硬件故障
  • 服务器所处环境可靠,避免自然灾害
  • 网络通畅,带宽充足
  • 容灾主要靠冗余,做到异地容灾

服务器可用性

  • 有冗余设备
    • 冗余电源
    • 冗余网卡
  • 磁盘 raid
    • 提供数据安全性
    • 抵抗硬盘故障

机房环境

  • 机房质量
  • 工作人员素质
  • 服务响应时间

网络线路

  • 带宽
    • 带宽充足
  • BGP 机房
    • 电信联通移动无障碍

从软硬件结合的角度

系统可用性指标有哪些方面的内容_行为指标有哪些方面

以冗余抗风险

  • 集群部署
  • 服务器双工/多工方式
  • 备份的网络线路
  • 多个资源提供商(CDN,短信通道,支付通道),分散风险

状态侦测和自动切换

  • 如果故障发生时能自动切换到备用系统,则可靠性大大提高
  • 自动切换的前提是状态侦测

冗余部署

  • 冗余部署是提高可靠性的有效手段
  • 重要的系统必须有冗余部署
  • 采用主备机的方式
    • 正常情况下主机提供服务,一旦主机故障,能迅速切换为备机提供服务
    • 通过keepalive侦测主机故障并自动切换ip
  • 采用集群部署的方式
    • 集群里的单个服务器故障,不影响整个集群
    • 应用程序支持分布式架构
    • 集群规模收缩和扩张都不需要重启

从运营维护的角度

按计划停机

  • 软硬件升级
    • 在软、硬件系统升级前,制定计划
    • 列出可能的风险,并预备风险处理方案
    • 严格按计划执行升级
  • 维护性停机,定期进行
    • 通过在业务低峰期有计划地停机重启,避免在业务高峰期突发故障
    • 确定哪些系统要按计划维护性停机,及停机的周期
  • 更新配置
    • 设计系统,避免更新配置需要停机
    • 配置服务器统一配置管理,配置更新自动广播

预见故障,早作准备

故障是可以预测的

  • 根据历史数据
    • 业务高峰期易发生故障
    • 新业务上线易发生故障
    • 系统升级易发生故障
  • 根据环境变化
    • 对外部环境要敏感,第三方资源的异常也会影响可用性
    • 与第三方保持良好的沟通,提前获取异动信息

故障突发处理

  • 建立突发故障处理流程
  • 组建突发故障处理小组
  • 沟通渠道
    • 发生故障时,确保对内对外沟通无障碍
  • 故障分级制度
    • 不同级别的故障的界定
    • 不同级别故障的处理授权
    • 故障级别的升迁
    • 故障处理的沟通机制

迅速发现故障

  • 早一分钟发现,早一分钟处理,早一分钟修复
  • 自动化监控工具,能及时发现大多数故障
    • 自行开发监控工具
    • 采购专业的监控工具
    • 使用免费的监控工具
  • 运营维护人员能更准确地判断是否发生故障
    • 运维人员的经验
    • 运维人员的责任感

迅速定位故障

  • 软件系统故障
  • 硬件环境故障
  • 外部环境故障

只有定位故障才能找到故障原因

  • 凭经验定位故障
  • 分析日志定位故障
  • 使用 Profiler 工具
  • 采用自动测试工具,执行测试用例定位故障

迅速修复故障

  • 启用备用系统
  • 回滚到上一个版本
  • 修复在线 bug

运维知识库

  • 从运维知识库查询类似故障修复步骤

故障处理预案

  • 为可能发生的故障准备处理脚本
  • 有条件的话,可以通过人为制造故障来检验队伍

故障总结和复盘

  • 故障修复后,一定要认真总结和复盘,既能防止以后再出现同类故障,也有利于建立起运维知识库
系统可用性指标有哪些方面的内容_行为指标有哪些方面

一团乱码

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/16837.html

(0)
上一篇 2024年 9月 17日
下一篇 2024年 9月 17日

相关推荐

关注微信