找回密码
 注册
关于网站域名变更的通知
查看: 701|回复: 1
打印 上一主题 下一主题

可靠性测试技术

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-8-31 14:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
一、Dependability & Security
! e2 I. c. e6 q6 e+ X! B# T0 o(1)Attribute——可用性(Availability)、依赖性(Reliability)、安全性(Safety)、机密性(Confidentiality)、整体性、可维护性0 W8 M, ~1 ?$ @
& S" y+ j* \+ u& D
(2)Threats——Faults、Error、Failures
8 s" c0 H9 s; i1 M8 f
: U% ~9 G) F  x: ^2 Y(3)Means! v# X  U: H. s* k: |2 F

9 f% \) |  t1 p, h" b/ v2 x! s① Fault Prevention+ a, ?) L! T  u7 k

- ]- y6 w. f; H② Fault Tolerance
( l* i  q: M: ]! E' Y5 c: ^! Z7 N9 r. e- k) ^
③ Fault Remove- r: _/ z# R+ ^& A! z

3 _- Q" Q& }* L! B④ Fault Forecasting
5 z2 ]9 x: f. p
& B& p* [( a* O7 o  ?二、状态改变+ b. a5 i8 f# a8 H
                        Activation              Propagation            Causation
1 x8 L% e3 x4 W
" d  k* g; Y3 S; x0 E5 r.......——Fault——————Errors——————Failures——————Fault.......
) U2 P6 J0 O, i4 c' b4 T( \" C# h% e9 n* {2 P$ |3 b. c, `
三、单点故障和多点故障
# X4 u1 f6 W# t1、单点故障(single point of failure)
' ?1 E! _8 j( ^' f" X(1)概念( C! O. R( }0 ~( M) h
从英文字面上可以看到是单个点发生的故障,通常应用于计算机系统及网络。实际指的是单个点发生故障的时候会波及到整个系统或者网络,从而导致整个系统或者网络的瘫痪。这也是在设计IT基础设施时应避免的。
% i. F4 u7 b  d9 M7 j5 ~# ?4 N( |  I3 h5 l6 k7 A
大脑对与人来说,就是一个单点,大脑损坏,人也完蛋;手是不是单点? 一只没了,另一只还能日常生活,从这个角度来说,不是单点。消除单点的最常见的做法:增加冗余。比如,人有两只手。其次,层次化。当然,分层的目的是便于隔离问题。电影 《2012》 中的这个问题,不知道谁是总架构师,看起来,隔离做得不太够 " n  ^* V" [; h9 b) }6 J' P- u

2 {( e8 l9 g- D7 t(2)消除单点故障方法
/ P9 n& y% C/ p; K$ y: {大体可以从以下几个方面来消除单点故障:& f' P( h8 W+ z% e
+ G" v3 b" P+ H- C" W+ R
一个网站,从基础的硬件层,到操作系统层,到数据库层,到应用程序层,再到网络层,都有可能产生单点故障。如果要有效地消除单点故障,最重要的一点是设计的时候要尽量避免引入单点,随着架构的变化,定期审查系统潜在的单点也是有必要的。+ ~+ ~0 c4 y6 C% l# F: n
" o9 }% H: ]: F) |0 Y$ n! l* J
① 增加硬盘,做镜像。让出错的概率降低
/ ?, y  R+ c' n, W# e
: \4 N; F" n. |$ V1 v! k( R② 网卡与网线的单点问题。系统里面最容易物理损坏的就是网线。网卡绑定(NIC bonding)一个很简单很通用的办法。配置多个网卡。/ `# G) w+ s0 m7 o# C5 ?* I0 p5 C

2 w( }& W) Z  K! X0 o③ SSH 服务器和Telnet 服务器共存。毕竟 SSH 和 Telnet 都不是百分之百靠谱的事。" r8 n$ I: |% u; C! T" s1 @7 [6 [
" ~5 |. X8 t) J0 A& _+ {) g2 v1 ]6 E
④ IDC 机房的单点。由于中国特色的“南北互通”,所以选择IDC机房的时候,一定要有冗余。. I) M, z6 c: a7 `
) l3 }" Z/ [: M
⑤ 靠谱的DNS解析。
: p) _6 L4 L* L+ W
6 K6 u# B5 M. Z# i(3)简单单点故障架构
- [/ `7 L/ A- F2 i% i- x( g4 l* ?" @$ Z0 X

& J6 }/ Y- G% y% K8 P若干台云服务器通过负载均衡对外提供服务,在另一台云服务器上安装了MySQL作为应用数据库,为了提高性能,在服务器和数据库之间搭一个Redis缓存服务器。在这样的架构中,缓存服务器和数据库都存在单点隐患,可以考虑主从备份的设计。缓存服务器可以利用Redis对主从的支持特性设计成Master-Slave部署,数据库是在ECS上安装MySQL,虽然也可以在另一台服务器上安装MySQL,配置主从,但是可靠性仍然依赖于云服务器,故建议改用RDS。RDS是内在支持主从的阿里云关系型数据库产品,用户无需操心数据同步、主备切换等细节,使用更为方便。优化后的架构如下图所示:
8 |+ t2 p- t7 V+ c- B+ B' O) X8 ~* q9 ]& ^# I$ J  l
+ [& M8 k, ~1 g0 E$ e* j% i- ]& G

; `# G. H2 `0 j4 {: j2、多点故障( ?7 A6 d7 W% n* V) U6 ?
多个单点故障同时发生或者依次发生。6 \9 W+ Y" v+ w
. m6 E9 n% x; c5 D# ]
* z# S9 U4 Q) s2 \# _+ I

* d! ]& l/ p2 \( p3 J1 g四、存储高可用& w- T( l3 V. m) p
存储高可用解决方案采用存储设备与管理设备冗余架构,任何设备出现设备故障。都不会影响整个存储系统的正常适用。故障切换完全自动完成,保证业务系统的连续性。& w8 w0 q: U( K) V& j1 E
3 p# v8 `. z) p/ x
  z4 b: a  m" |8 y8 ]9 p
# W8 O& B, n4 i- L  S$ W2 n! N
五、故障注入
8 c. d% O& E$ Q1 L1 A+ R0 M产品代码:故障处理代码——产品功能代码6 m& y' w: t* z& g

4 j3 T) C0 _2 L& ?Chaos Monkey* ]% L  L0 g8 l, Z4 |5 p

% p& Y. c4 ~* z3 k/ }Linux Fault-Injection
4 r, W' ^$ \# o* q6 V+ I3 G; F+ G3 s" @) T; r8 D! t2 x
将故障注入内置于产品是最有效的做法,使得产品具有可测性7 }( D) g5 k/ Z5 f9 y5 y

4 K6 k; U+ B- b2 t6 W2 N+ T) x- ^3 D) r9 s& b

& D2 U4 K% e' Q六、测试实战
; ~( O( Z9 F- D- G) C6 R; I未知故障、已知场景(压力、稳定性、流控测试)
! ?* P& }. W) G) l; |1 m/ |' ^已知故障、已知场景(故障注入)
6 S1 V, `  E! H! h已知故障、未知场景(故障注入)
1 }0 q: m: [5 Z8 i7 q8 A  |1 ?未知故障、未知场景(可靠性预计于建模)7 F/ o* m3 v; \

* ?/ r5 j" K3 n5 C  [. I
0 z+ V% T, x; t) h1、故障模式库——为可靠性测试提供测试输入,定义了测试范围
, }. @2 @. c2 }* s& e, z/ c
2 ]) o& [3 }$ B1 D" f2、可靠性测试评估基线. ?; n+ K, u4 a

$ n  ?  m4 j8 f  y3、可靠性测试指导书/ h/ v5 V  H& l  d* k8 M0 f# A

( L! l# o! V& O  I. n' S4、评估产品的可靠性能力
9 r/ i  x0 r4 O7 l: [7 I: p, Z
: A. ^9 x( Y; Q8 Q/ v5、长稳测试3 |7 z. C1 t% x

/ H* l0 P1 U" m+ c+ V3 |/ @* K) }; s0 B9 Z: L  L

  `) v. c# p+ f; B: V6 s# n七、“几个9”
4 |- d1 K, z% a产品的可靠性是指:产品在规定的条件下、在规定的时间内完成规定的功能的能力。
" @2 G0 a0 \0 `1 p- ~0 k- K7 l* Z' i
对电子产品而言,产品宣传经常用可用度 n 个 9 来描述产品可靠性水平。n 个 9 表示在系统1年时间的使用过程中,系统可以正常使用时间与总时间(1年)之比,通过下面的计算来感受下 n 个 9 在不同级别的可靠性差异。
; j3 S. ~3 j3 H2 O  @* G' D! e
7 E( W6 C- G# e! f. d2 c4个9:
! \& _& J& ~, t8 r( n4 \7 P/ J/ j& S1 S) E5 f8 Q  @
(1-99.99%)*365*24=0.876小时=52.6分钟,表示该系统在连续运行1年时间里最多可能的业务中断时间是52.6分钟。
: h6 x9 S, C9 S( L
# n& |% ^3 o" p' v  x5个9:2 W1 d+ _6 t/ P# Y$ q% ]6 j) _

' \2 Z4 y- }- r# U# ~1 ?5 L(1-99.999%)*365*24*60=5.26分钟,表示该系统在连续运行1年时间里最多可能的业务中断时间是5.26分钟。
8 D& d& S$ ~1 |0 ?! W
* M1 p. x, V0 g- {
& S. R+ P% n2 q

该用户从未签到

2#
发表于 2021-8-31 16:30 | 只看该作者
网卡与网线的单点问题。系统里面最容易物理损坏的就是网线。网卡绑定(NIC bonding)一个很简单很通用的办法。配置多个网卡。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 19:29 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表