19
Elosztott rendszerek NGM_IN005_1 Megbízhatóság Megbízhatóság A rendszer, egy specifikus feladat elvégzésének képességére vonatkozó, jellemz!je élettartam átlagos meghibásodások száma egységnyi id! alatt a rendszer m"ködésének valószín"sége egy adott id!pontban átlagos helyes m"ködés id!tartama 2

Megb zhat s g - sze.huheckenas/okt/reliability.pdf · Elosztott rendszerek NGM_IN005_1 Megb zhat s g Megb zhat s g A rendszer, egy speciÞkus feladat elv gz s nek k pess g re vonatkoz

  • Upload
    dodieu

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Elosztott rendszerekNGM_IN005_1Megbízhatóság

Megbízhatóság

A rendszer, egy specifikus feladat elvégzésének képességére vonatkozó, jellemz!je

élettartamátlagos meghibásodások száma egységnyi id! alatta rendszer m"ködésének valószín"sége egy adott id!pontbanátlagos helyes m"ködés id!tartama

2

Hibák

Tévedés, tévesztés (fault)hibaforrás

Hiba (error)tévesztés manifesztálódása

Hibás m"ködés, kiesés (failure)hiba hatása

3

Permanent fault

Incorrect design

Unstable components

Unstable environment

Operator mistake

Permanent error

Intermittent error

Transient error

System failures

Kockázatok

Nem kívánatos események bekövetkezésének veszélye

el!fordulási gyakoriság

következmény költsége (súlyosság)

4

Tervezési célok

Elfogadási kritérium“ipari átlag”gazdaságossági megfontolásel!írás

5

1

10-1

10-2

10-3

1 10 100 1000 Number of failures

Failure frequency

Not acceptable

Acceptable

Uncertainty band

Hibaráta

Hibák várt száma egységnyi id! alattHibaráta függvény

hibaráta az id! függvényében

6

Failure rate

TimeUseful life period Wear-out phaseInfant phase

Hiba elhárítás

Hiba-elfedésa rendszer képessége a hibák tolerálására

hibadetektáláshibalokalizáláshiba lehatárolásahelyreállítás

C=P(fault recovery|fault existence)

7

Megbízhatóság és rendelkezésre állás

R(t)=P{0 failure in [0,t]|no failure at t=0}

8

!

R(t) =No(t)

No(t) + N f (t)

R(t) = e"#t

MTTF = e"#tdt

0

$

% =1

#

MTBF = MTTF + MTTR

több komponens" rendszerre

használati tartományban (! hiba ráta)

els! hiba fellépésének ideje

hiba-fellépések közötti id!

System start failure repaired failure

MTTF MTTR

MTBF

MTTF

Hiba típusok

Kihagyás

Id!zítési hiba

Válaszhiba

Összeomlás

9

Megbízhatósági technikák

Redundancia

Hibamegel!zési megoldások

Hibadetektálási megoldások

Hibat"rés

10

Redundancia

Tér-redundanciahardver többszörözésszoftver többszörözés

Id!-redundanciatöbbszörös végrehajtás

Információ redundanciahibadetektáló kódoláshibajavító kódolás

11

Redundancia (folyt.)

Statikus redundancia

független redundáns komponensek

Dinamikus redundancia

hibafellépés esetén elhárítás

12

Redundáns rendszer m"ködése

HibakorlátozásHibadetektálásHibamaszkolás (statikus redundancia)Újra próbálkozásDiagnosztizálásRekonfigurációVisszaállításÚjraindulás

13

Hibamegel!zés

Környezet szabályozása

Min!ségbiztosítási rendszer alkalmazása

Tervezés kisebb komplexitással

14

Hibadetektálás

Duplikálás (többszörözés)

Hibadetektáló kódolások

Önellen!zési funkció

Watchdog timerek

15

Hibat"r! architektúrák

Statikus redundanciaTöbbségi szavazás (NMR)Hibajavító kódolás

Dinamikus redundanciaRekonfigurálható duplikálásAdaptív szavazásGraceful degradationJavítás (rollback-restart, retry)Naplózás (journaling)

16

Szoftver hibat"rés

Hibák megjelenésebemenetkörnyezetfelhasználói elvárások

M"köd! szoftverek hibarátája “állandósult”fault/KLOC (“jó” szoftver 10-50, tesztelés után 1-5)

Hibák hatásaköltség, szolgáltatás

17

Szoftver hibat"rés (folyt.)

Hibat"rési technikák

N-verziós programozás

Javító blokkok

18

Megbízhatósági elemzés

Rendszer leírásRendszerhibák definiálásaOk analízis

statisztikai adatokFTAETA

Megbízhatósági értékelés

19

Megbízhatósági modellek

Kombinatórikus modellek (bináris modellek)Soros rendszerek

Párhuzamos rendszerek

20

!

Rseries(t) = P(C

1w(t)"C

2w(t)" ..."C

Nw(t))

Rseries(t) = R

1(t)R

2(t)...R

N(t) = R

i(t)

1

N

#

!

Rparallel (t) =1"Qparallel (t) =1" Qi(t)1

N

# =1" (1" Ri(t))1

N

# = Ri(t)1

N

!

Megbízhatósági modellek (folyt.)

Markov modellekrendszer többféle állapotbanállapotok közötti átmenetek (állapot diagramok)

21

0 1

!

"

00 01

10 11

!

!

!+"

!+"

"

egy komponens

két komponens, közös meghibásodással

!

P1(t) = e

"#t

!

P1(t) =

µ

" + µ+

"

" + µe#("+µ )t

Megbízhatósági modellek (folyt.)

Markov modellek (folyt.)Markov folyamat

Tranzíciók

22

!

Pi(t) = P(X(t) = i)

P(X(s) = j X(t) = i,X(u) = x(u),0 " u < t) = P(X(s) = j X(t) = i),s > t

!

qij = limh"0

P(X(t + h) = j X(t) = i)

h,i # j

q jj = $ q jk

k= 0,k# j

n

%

Pij (t) = P(X(s+ t) = j X(s) = i)

P'(t) =QP(t)

Megbízhatósági modellek (folyt.)

Markov modell példa (TMR)

23

3 2 1

111

110

011

101

100

010

001 000

3 2 13! 2!

1-3!1-2!

1

!

RTMR(t) = 3e

"2#t" 2e

"3#t

Megbízhatósági modellek (folyt.)

M-of-N rendszerek

N identikus modulból M kell a helyes m"ködéshez

TMR: 2-of-3 rendszer

24

!

RM "of "N (t) =N

i

#

$ % &

' ( R

N" i(t)(1" R(t))i

i= 0

N"M

)

Megbízhatósági modellek (folyt.)

Mennyire megbízható a TMR?

25

0

0.08

0.16

0.24

0.32

0.4

0.48

0.56

0.64

0.72

0.8

0.88

0.96

0.25

0.5

0.75

1

TMR

Single module

R

R1

Replikálás és megbízhatóság

Kritikus szoftverkomponensek, adatok többszörözéseReplika

fizikai másola - nem feltétlenül identikusakteljesítmény és hibat"rés javítása

proxyadat elérés biztosítása (rendelkezésre állás)megbízhatóság: 1-qn (páhuzamos r.)

szétkapcsolt m"ködés

26

Elosztott rendszerek hibái

halt-on-failure (fail-silent)hálózati kapcsolat meghibásodása

hálózat részekre szakadásaid!zítési hiba

Hibadetektálásvalamilyen szinkronitás feltételezése (timerek)

27

Elosztott replikációs rendszerek

Rendelkezésre állás javításareplikák elérhet!k maradnak

Hibat"réshibamaszkolásvisszaállításkonzisztencia biztosítása

Teljesítmény növeléspárhuzamos m"ködés, közeli adatok

28

Konzisztencia modellek

Szigorú konzisztencia

Lineáris

Kauzális konzisztencia

FIFO konzisztencia

29

! "

! "

!

!

Replikációs sémák

Rendszer modellaszinkron rendszerkliensek, front end, replika menedzserek (RM)kérések

read-only, updatefeldolgozás

front end - RM komm. (uni cast, multicast)RM koordináció (FIFO, kauzális, teljes sorrendiség)végrehajtás (lehet átmeneti)RM megállapodásválaszgenerálás

30

C

C

FE

FE

RMRM

RM

Csoport kommunikáció

RM csoport tagságok kezelése, multicast üzenettovábbítás

tagság változtatási interfész

hiba detektálás

értesítési szolgáltatások

csoport cím kiterjesztés

31

X

multicast

leave

join

fail

groupcomm.

Nézetszinkron csoportkommunikáció

rendszernézet (állapot) üzenetek továbbítása

sorrend tartás

megállapodás

integritás

validitás

a nézetek (view) konzisztens vágatok 32

p

q

r

p crashes

view(p,q,r) view(q,r)

X p

q

r

p crashes

view(p,q,r) view(q,r)

X

p

q

r

p crashes

view(p,q,r) view(q,r)

X p

q

r

p crashes

view(p,q,r) view(q,r)

X

Primary-backup

Passzív replikálás

kérések kiszlgálása - primary

linearizálás

állapot update a backup-okban

view synchronous group comm.

33

C

C

FE

FE

RMRM

RM

Primary

Backup

Backup

Aktív replikáció

Replika menedzserek állapotgépek

de nincs linearizálás

fault tolerancia

2f+1 RM, szavazás34

C

C

FE

FE

RM

RM

RM

Backup

Coordinator-cohort séma

Aktív replikációKoordinátor

kérések fogadása, válasz visszaküldése (kohorsz értesítése)

Kohorszreplikáláskétfázisú commit

35

Leader-follower séma

Aktív replikációAutonóm m"ködés (kérés feldolgozás), de a válaszokat a leader generáljaNem determinisztikus események fellépését a leader detektálja, döntésthoz, followereket informálja (konzisztens állapot meg!rzése)

processz preemptálás, abszolút id!zítés igénye

36

Replikáció átlátszósága

Mobilis, dinamikus replikák

csoport nézet továbbítása a klienseknek is

csoport multicast

csoport menedzsment, nézet kezelés

37