高可用系列文章之一 - 概述

简介: 高可用系列文章之一 - 概述

一 概述

可用性是系统运行质量的重要指标.

随着数字化和智能化的进程, 系统的可用性愈发重要。例如,制造业流水线需要高可用性的 MES 系统来保证流水线的正常运转。

本文为 高可用 相关的技术文档, 从以下几个方面对 高可用 在制造业的应用和实施进行详细描述。

1.1 可用性 (Availability) 定义

GB/T3187-97 对可用性的定义:

在要求的外部资源得到保证的前提下,产品在规定的条件下和规定的时刻或时间区间内处于可执行规定功能状态的能力。它是产品可靠性、维修性和维修保障性的综合反映。

可用性计算公式:

Availability = MTBF / (MTBF + MTTR)

关于 Availability 这个计算公式, 通常大家习惯用 N 个 9 来表征系统可用性,如 99.9%(3-nines availability),99.999%(5-nines availability)。

📓 一句话概括:

  • 可用性 ─ 每次访问都能收到非错响应

宕机时间(DownTime):

定义: 机器出现故障的停机时间。这里之所以会提 Downtime,是因为使用每年的宕机时间来衡量系统可用性,更符合直觉,更容易理解.

可用性 (Availability) 和宕机时间 (Downtime) 的对应关系:

可用性 宕机时间
90% 36.5 天 / 年
99% 3.65 天 / 年
99.9% 8.76 小时 / 年
99.99% 52 分钟 / 年
99.999% 5 分钟 / 年
99.9999% 31 秒 / 年

1.2 高可用 (High Availablility) 定义

高可用性定义:

高可用性 (HA) 是系统的一个特性,它的目标是确保一个商定的运行性能水平 (通常是正常运行时间) 高于正常时间。

如果用户不能访问系统,从用户的角度来看,系统是不可用的。通常,停机时间指的是系统不可用的时间。

1.3 高可用性实现方式

有两种支持高可用性的模式: 故障转移(fail-over)和冗余(redundant)。在通常的高可用方案中, 这 2 种是结合起来使用.

故障转移:

🔖 定义:

在计算和网络等相关技术中,故障转移是指在先前活动的应用程序、服务器、系统、硬件组件或网络发生故障或异常终止时,切换到冗余或备用计算机服务器、系统、硬件组件或网络。

故障转移又具有多种实现方式, 其中常用的一种为:

主用到备用切换(Active-passive)

关于主用到备用的故障切换流程是,主用服务器发送周期信号给待机中的备用服务器。如果周期信号中断,备用服务器切换成工作服务器的 IP 地址并恢复服务。

宕机时间取决于备用服务器处于「热」待机状态还是需要从「冷」待机状态进行启动。只有主用服务器处理流量。

主用到备用的故障切换也被称为主从切换。

🔖 知识点:

Web 服务器高可用方案中, NGINX 的高可用方案 - NGINX + Keepalived 高可用 就是典型的主从切换.

且备用 NGINX 服务器出于「热」待机状态.

1.4 目标

本文的目标是:

制造业 的系统高可用方案标准提供实用参考. 以满足其:

  1. 对已有的系统进行 高可用 改造;
  2. 对新系统进行 高可用 架构要求;

二 适用范围及要求

2.1 适用范围

  1. 对可用性指标有强制要求的系统;
  2. 重要系统(如: MES 系统);
  3. 技术架构符合 下文技术方案 描述的系统;

参考文件

相关文章
|
存储 Prometheus 监控
高可用prometheus集群方案选型分享
高可用prometheus集群方案选型分享
6280 2
高可用prometheus集群方案选型分享
|
Oracle 关系型数据库 MySQL
OceanBase实践入门:高可用原理和容灾方案
OceanBase的多副本(奇数)设计,以及使用Paxos协议同步事务日志,是OceanBase高可用能做到自动切换(RTO约20s)和不丢数据(RPO=0)的关键。OceanBase在这个设计上还衍生出很多特性:如负载均衡和异地多活等。
5597 0
|
1月前
|
缓存 监控 大数据
构建高可用AnalyticDB集群:最佳实践
【10月更文挑战第25天】在大数据时代,数据仓库和分析平台的高可用性变得尤为重要。作为阿里巴巴推出的一款完全托管的PB级实时数据仓库服务,AnalyticDB(ADB)凭借其高性能、易扩展和高可用的特点,成为众多企业的首选。本文将从我个人的角度出发,分享如何构建和维护高可用性的AnalyticDB集群,确保系统在各种情况下都能稳定运行。
39 0
|
3月前
|
SQL 存储 网络协议
分布式的概述
分布式的概述
|
5月前
|
Kubernetes 应用服务中间件 nginx
搭建高可用k8s
搭建高可用k8s
91 6
|
Kubernetes Cloud Native 应用服务中间件
【云原生】搭建k8s高可用集群—更新于2023.04(下)
【云原生】搭建k8s高可用集群—更新于2023.04(下)
339 0
|
Kubernetes 负载均衡 Cloud Native
【云原生】搭建k8s高可用集群—更新于2023.04(上)
【云原生】搭建k8s高可用集群—更新于2023.04(上)
371 0
|
Kubernetes Shell 容器
搭建k8s高可用集群错误汇总—2023.03
搭建k8s高可用集群错误汇总—2023.03
332 0
|
存储 SQL 运维
Mysql集群方案概述
1: 主从 方案 MysqlReplication 2: 主从可重选举方案 MysqlFabirc 3: 多主多从方案 Mysql Cluster
437 1
|
存储 NoSQL Java