Você está na página 1de 19

Part T o: The Deplo ment

Pipeline
I a , e c e e d ac c de d c a
c a b e, e a a a .T e e e d a e
a e ed a a e e, e e e c de a a a ae eb
e be e eac d c . T e de e e e e ace e e
e a c ec a a ec a d e ce a ec De O e ec . T e
a ec d a e e e be ee d e e
de e e ea , e e e ed e aed e e
de e e ba c e, a a - a e e , a d ac e
c de d c eed a d a a e c e ed e ee
c a e a .
I C a e 4, e e a e c e ce a c ec e a d a e
a e a ec d a e e e a d, e ce, e e e
e e e e c c d a de e .
Re e e ac de e e e a da e a e
be e c e a d a ed a e eed be d e. We
d c ee e C a e 5.
O ce c de d c ead e ea ea be
ac a de e c de. Se e a d e e a - - de e
ae e e ,a e a e e a d e e a a de e ae e .
O ec de e ae e e e a e ce
be a e ac e a d , , a e e
c e c .F e e, a a ea de a a e e
e a c e c be ee c e a d e e ce e a e .
We d c e ea d e e C a e 6.
4. Overall Architecture

A distrib ted s stem is one in hich the fail re of a comp ter o didn t
e en kno e isted can render o o n comp ter n sable.
Le e La

I c a e e be ee e c a ca e De O
ac ce . T e e ac ce a e ca e ec b e ea
c e e e a d ec e a d be ed e e
e e e . De O ac e e a a a b e ac e c
c d a c a d e e c d a ,a d e ee
e a c ec e e e be de e ed ac a e c
c d a ec a . We be b d c e e De O
ac ce ece a a c ec a c a e.

4.1 Do DevOps Practices Require Architectural Change?


Y a a ea a e e e c e e a d c e
a c ec e. I e-a c ec e de a e
ad a a e De O , a e ae e I ? I
ec e ee a e De O ac ce a e de e de a c ec e,
e ea de e e be e e , a c ec a e ac
a be ece a .
Reca C a e 1 a e e a e e ca e e De O ac ce .
1. T ea O a -c a c e e e
e e e . Add e e e a e O a e e
e a c ec a d ca .I a c a, eO e e e
ae e be e a ea , ,a d a
c de a d .T e e e e e be e e
e e e d ca a e : b e e
d ca e a c ec e b , ca , da c
d ca .
2. Ma e De e e be ee a c de a d .B e ,
c a e a ce c a e a d d e e
a c ec a d ca .H e e, a e e
ca e , ce De bec e a a e e e e e c de
a d , e a c ec a d ca a e .
3. E ce de e ce ed b a , c d De a d O
e e.I e e a, e a ce bec e e ced, e
d d a a be e ed c a e e a ea
ced e a d, b , e c e e e c e
.O e e e a de e ce c d be e ced
e a a e eac e . Eac e , e
a ed, e e ed ee. T a , a ed a e ec
a e e e , eac c ca be c ec ed a e
cc ed. F e e, e e c de e d (e. .,
ea e dd e a e) a a e e ab e ed ee .
4. U e c de e .C de e e ac ce
a ead e a - eac a c ec a d ca .O e
e a d, a a a ca d ce c de e
ac ce a a c ec a c a e . See, e a e,
ca e d C a e 12. O e e a d, a a a a e
ad ed c de e ac ce e e be
a c e ce-ba ed a c ec e. See, e a e, ca e d
C a e 13. We e e e ea e ad a c e ce
a c ec e e e a de c a e
5. De e a c e c de e a e e ac ce a
a ca c de. T e e ac ce a ec e a ca c de
b a a ec e a c ec e e a c e c de.
4.2 Overall Architecture Structure
Be e de e de a e ea c e, e ca e
e ce a e .T e e mod le a d component a e e e
e aded a d ed d e e a d ee .F ,a
d e a c de c ee c a .Ac e a
e ec ab e .Ac e e ee d e b a e ,a da
b de eb a e c e . T e de e e ea
d ec de e d e .C e ae e e d e
de e ed b de e e ea , a d be ea a ea
de e ac e ,b d be c ea a e de e e a
c e a d ec ac a de e e ea .
A e de c bed C a e 1, de e e ea De O
ce e a e a a a d d a e ed e - ea
c d a . S a ea a eac ea a a ed c e e
ec e e de e . W e a ea de ac e ,
ca d c e ec e c a be e
c e c e ac . T c a b ca be e ed
e c - ea c d a , ca be e ed c
e de e a c ec e.
A a a ca d ce c de e a
a c ec a d ca .F e a e, e ca e d C a e 12
da e a a c ec e-a c. D a a ca ed c e e
e ed ace a c e d c , e e, e e
a c ec a :
De e ece e c c d a e
ea ed ce e e e ed ace a c e d c .
A d ee e e a e e ce be
a e d c ead d e e ea e be
de c d a e e be e ea .
R bac a de e ee e e a a
e e .
Microser ice architect re a a c ec a e a a e ee
e e e .T e ed ac ce b a a a a e
ad ed ed a De O ac ce . A ec e e e
a ca e de a e, e a a d e e a ba
ec a a e ad De O ac ce .
A c e ce a c ec e c a c ec e ce ee
eac e ce de a a a c a a d e a
c a e e de ed c e e ce . I
C a e 6, e a ee a a c e ce a c ec e, e
d ca , e eac ea e ab de e e ce
de e de e ea , a e e e a e ce
d c a e ,a d bac a e ea e
ea .
F e 4.1 de c be e a a e a c e ce
a c ec e. A e e ac a ec e - ac e ce. T
e ce, , e a c ec e e ce . We e e
e ser ice ee ac e a de a e ce a d
client ee ac e a e e a e ce. A ec e
ca be a c e e e ac a d a e ce a e.I a e c
a L edI , e e ce de a eac a c a 70 a e e
e e .
FIGURE 4.1 U e e ac a e e ce a , , e
e e e ce [N a : A c ec e]
Ha a a c ec e c ed a e ce a e e
a a ea . N e a e a ec a a c ec e a ca
be ec ed ba a a e e e e e e a e - ea
c d a be ed. We d c ee ca e e de dec
a ca be ade ba a a e a c ec e de ,
e e eed e - ea c d a e ec ee
dec . T e ee ca e e a e: e c d a de , a a e e
e ce , a d a a a c ec a e e e .
Coordination Model
I e ce e ac , e de e e ea e be e
e ce c d ae e a . T de a ec d a
de a ca be c ded e e a a c ec e a e: ac e
d c e a e ce a e e, a d e d d a e ce
c ca e.
F e 4.2 e a e e e e ac be ee a e ce a d
c e . T e e ce e e a e .T e e a c de a a e
e e ce a e a a e , e a e, a
e d ca a a URL a IP add e . A c e ca e e e e
a ab e e ce e e a d e e e ce
a .I e e de IP add e e , ac a a ca DNS
e e ca , beca e ca , e e e e e ea
I e e b ee e ea ca . Ne E e a
a e a e a c d e ce e a ac a a DNS e e . T e
e e e a a ca a e a a ab e e ce , a d ca e be ed
ac a ec c a e , e , e ce e e a ee e
(SLA ), e c., e e e ce a a a . We d c
e e e e e C a e 6.

FIGURE 4.2 A a ce a e ce e e e e e ,
ec e e e e e e add e e e ce a d e
e e ce. [N a : A c ec e]
T ee ca be e a ce a e ce, b a
ad ea a e a ce a d a da a a e. T e
e ca aea e a ce e e ed ba a ce e ad. T a
, e e ac a a ad ba a ce a e a a e .F a ,c de
e b a a a ce a e ce a a .I ca e, e
e d d ec e c e e a ed a ce. B e e
e ce e d ca e e e a ac e c ec e
ea e e ce, a a d a a a e ace. I e e ce
a e e e a e ec ed e d, e ed
e e .M e a ce e e ce ca e , a d e
a e e a ce d e e e e e ce. T e ab e- e ed
Ne E e a a e a e a e e ad ba a c . E e a
e e e e a e ce e d ca e e e e a .
T e c ed c ca be ee e c e a d e e ce
ca be a e ec ca c , e a e, HTTP, RPC,
SOAP, e c. T e e ce ca de a REST e ace .T e e e
c ca c d be e ea c ca
a e e ce . T e de a e e ace ded b e e ce
e ec - ea c d a .W e ed c ee a e A a
ae, e ee e e d d c d a . We a
ee a e c e e e e c c ca a e ce
e e ec ca c .

Management of Resources
T e e ce a a e e dec ca be ade ba a d
c a ed e a c ec e /de VM a d
a a a a de a d.

Provisioning and Deprovisioning VMs


Ne VM ca be c ea ed e e c e de a d a e. W e
e de a d b de , a ce d be de ed. I e a ce a e
a e e ( .e., e d ea a a be ee e e ), a e
a ce ca be aced e ce a a ed. S a ,
ae e a a ce, de bec e e a e a e :
A e a c -d e d ee e a ce ece e e e e a d
e d e e, e a ce ca be de ed. T e c -
d e d d e e e be e a a ce e d
a e e ece ed ( .e., e bac ). I de a a ce
d e ed ced de a d, e bac d be a a a e
ca e ac eed be c de ed ca e . A add a ad a a e
a a e e e ce a e a e ca be ed a a ce a
e ce, c ac a e ad a a e a ce .
T ead a ba dec a a aee e a a e ce
a ce. A d c ed C a e 2, a e a a ca a e ca
be a a ed e e a e, a a a ca a e ca
be a a ed b c a Z Kee e , a d c e ae d be
a a ed e de de a a .
De e c c e c e a d
de a e a ce a e ce a e a a ec .
T ee b e e ec c e .
1. A e ce e ca be e be (de) add a
a ce . A e ce ca e e e a d
e a ce e e e e . I ca c ae ee e c
e d a d (de) a a ce e e e d
c ed. A a ed b e e a , e
e e, ac a a ce e e ce, e a c a a ce (e. .,
e de e) e e ce ca a e e dec e
de a ce . T , e e ce a ed e a d
ca ac ee de a d.
2. A c e ac e e c e c a ca be e be
(de) a ce a e ce. F a ce, e c e , ba ed
e de a d , a be a a e a be a
de a d e e ce a e ceed a e e da d
e a ce e e ce.
3. A e e a c e e e a ce e ce
a ce (e. ., e CPU ad) a d (de) a a ce e
e ad eac e a e e d. A a a ca
de ca ab , c ab a e C dWa c
e .

Managing Demand
T e be a ce a d d a e ce a e d e ec
e de a d e e ce c e e e . We d c ed e e a
d ee e d a d de a ce , a d e e
e d a ed e e a ab de a d a a ed.
O e e d a a de a d e a ce. O e
dec be ade c de de e e e
(e. ., e e d e e a b a
a e de eac e ce a ce e e a b a ec a ed
c e ). T a , e de a d a eed be de ec ed, a
e a ce ca be ed. I a e e a e
a ce, a a e d ca ae e a de e
ed c e acc da e a e. We d c e de a
ab C a e 7.
A e b e ec e e SLA c e be
a ce . Eac a ce e e ce a a ee SLA
a ab e a d e a ce a be e e a ec ed
ae c .T ec e a e ce e a e e e
ca e d a d ece e a e e e ec ed a e c . T
ec e a e ea c a .F , e a e
e e e a ac e e e ce de e d e
e e e ed ec e , e e a ca cad e ec
e de a d c a . T ca cad ca e ce a
b e ec ca a d e ea a e SLA . A ec d
c a e SLA ec e a eac a ce e ce
a a e e ca a d e, b ec e a
e a a ab e a ce e ce. T , e
c e a a a ce c e e
e ce.

Mapping Among Architectural Elements


T e a e c d a dec a ca be ec ed e
a c ec e e a a a c ec a e e e . We d c
d ee e a a e a d a ca .B
e e a e dec a a e ade ba .
Work assignments. A e ea a e d e ,b
a e de e e ea e a e d e
e e a ea dea c d a a e de e e ea .
S ce c d a a e e, a ea e c e ac a e e
a e ea d e a d de e e ace a e
d e a d e de e ed b d e e ea
e e a e. I ac , e a de a d e b Da d
Pa a e 1970 a a a a e a ea . A
e ed, ea ab e a eac c e ( .e., c e ce)
e e b a e de e e ea . T a , e e
d e a, e ed, c eac e ae e a
e de e e ea . T d e ec de a e
de e e ea be e be ec e
b ea a a c d a ac e e ed
a e de e e ea , a d a a c d a
e de e e ea e ac c e .
G e e e c a e a c ec e e a e de c b ,
c - ea c d a e e e ae ed.
Allocation. Eac c e ( .e., c e ce) e a a
de e de de ab e .T a eac c e be
a ca ed a e( a ) ac e c a e , a
ec e be a ca ed a e( a ) ac e. T e
ede e ade e c e ce a ec a e
c e ce . We e e c ce C a e 6.

4.3 Qualit Discussion of Microservice Architecture


We a e de c bed a a c ec a e c e ce a c ec e a
ed ce e ece e - ea c d a b a ba
a c ec a c ce . T e e de e e a e
de e dab ( a e e e ce ) a d d ab ( a e ce ), b
e e a e add a ac ce a a ea d e eb
de e dab a d d ab e e ce .

Dependabilit
T ee ce de e dab be a e: e a a e-
ea c d a , c ec e e e ,a d e b a a
a ce a e ce ca a .
Small Amount of Inter-team Coordination
T e ed a e - ea c d a a ca e
de a d be ee e ea de e a c e a d e ea
de e a e ce e e e a c a e ace. I a c a ,
e ec ed a e ce e ec ed a e ce ca
a e .T e ea e e e a . F , a ea d ac ce de e e
a a d a e a e e e a e ce
ca a e c ec . C ec a e ea ab e e e de ec
e ea . P d a c c ec e ce e ab e a e
de e a e ca e a e . Sec d, e a a d e d- -e d
e a c e ce d be d e d c . I ca be
e e e ee e e e d e e e e a
e a a e be c e ce a d ea ce e a e ce . A
e ac ce ca ed C e D e C ac (CDC) ca be ed
a e ae e b e . T a , e e ca e e a c e ce a e
dec ded a d e e c - ed b a e cons mers a c e ce. A
c a e e CDC e ca e eed be a eed b b ec e
a d e de e e e c e ce. R e CDC e ca e , a a
e a e , e e e e a e d- -e d e
ca e . I CDC ac ced e ,c de ce e c e ce ca be
a e d- -e d e ca e .
CDC e e a a e d c d a a d a ca
e e a c e ce d be ade a d e e e e.
C e a d c e ce de e e c ec e a e a d e
e e . CDC de bec e a c e a ca
c a e c e ce, a a ed b e e ce e a a
ec d a a de e e e ea , a d,
c e e ,d e de a e e ec e ea .
Correctness of Environment
A e ce eae ed e e e e d e a a e
e - d c . Eac e e ed a d
a a ed c de a d a c ec c a aa ee .
E c de a d c a aa ee ae ec .I c e
c a a a ee a ea b e. D e a de ee ce a
c d-ba ed a c e, e e e ec e c ec c de a d
c a a ead a c ec e e .T , e a a
a e ce d e c e e e de e e
e e a e ec ed. I da e ec a aa ee
de ec , a a a b e, e ec ed c e ce d ee
e e . I e be a e e ce de e d e e
(e. ., ce a ac ae e ed d e b d
d c ), e e a a d de e e ee e a d
de e e e be a .A a e d
De O a a ea e c de a d a a e e e a
e e a a a e a ca c de, e e
c a d e .T a e a e a c e-a -c de a
de ed C a e 1 a d d c ed e de a C a e 5. T e e
a c e c de a a c a c a e e. We d c e
e C a e 7 a d 9.

Failure of an Instance
Fa e a a a b a ce . A a ce de ed a
ca ac e, e e d ec e e a a ,a d
a e da ace e , e a e a ca ac e c .T e
a da d e d c a c e de ec e a e a a ce
a e ce e e a e e . O ce a e a cc ed,
e c e ca e a e e a a a d, de e d e
ec a ed, a e ed a d e e a ce e e ce. I
e ca e e e , e e ce a ed a e a ed a d a
a e a e ea ac e e de ed a ca be a e ed.
F e 4.3 a e e ac e a e acce a a ed
e ce. T e c e a e a e e e e ce, a d e .T e
c e e ea e e e ,a d e a a .A , ec
e a e a a e ce e e e a . Ha a e
e a (a a ) e ab e a e a d e e ec e e
c e e e e e ce. A e e a a , e e,
d ce a e e a e e ce a ce a be
e ea . T e e a be a b a e e e ce ac a
de e e e ce, a e a .A e e a be a
e a e a e ac e ed a e . Se ce d be de ed
a e ca e a e e ce d ce a e .
Idempotent e e a e ce a ca be e ea ed ed e
a e a da a d ce e a e a e , e
e e a ed.

FIGURE 4.3 T e e ec a e a de e de e ce
[N a : UML Se e ce D a a ]
A e ed F e 4.3 a e e ce a a
a e a e ac .T a , ec e a a a e a e ac ca e e
e ce a .F e 4.3 d e a a e ee
a e a e ac .I ca e, e e ce e a e c e
e e c e a a e , e e e a c a
de e ce. We e e e c e e e de
C a e 7.
Modifiabilit
Ma a e ce d ab e c e d a e c a e ea
a d ed c e e e ec ec a e .I b ca e , a e d
a e e ce e d ab e e ca a e e e e a ec ed
a e c a e e e ac a ca e e e ec
a c a e.

Identif ing Likel Changes


S e e c a e a c e e de e e ce , a e a
e e ce be ded, a e:
The en ironments ithin hich a ser ice e ec tes. A d e e
e ee e , e a e a e,
acce a ce e a d, a d d c a .
The state of other ser ices ith hich o r ser ice interacts. I e
e ce a e e ce de e e , e e e ace a d
e a c e e ce a e e c a e ea e c .
S ce a e ae e e e a e ce, a a e
ac ce ea , a c a b e, a c ca
e e a e ce a e c a e.
The ersion of third-part soft are and libraries that are sed b o r
ser ice. T d- a a e a d b a e ca c a e a b a ,
e e a a a ed e e ce. I e ca e e
ea d, a e e a e e ed a e e a e ace d e
e e de e ce a .U e a e VM a e
d ee e e ec a a ec a e a a e
c a ed e VM b a a e e a e c a e.

Reducing Ripple Effects


O ce e c a e a e bee d c e ed, d e e ee e
c a e e ce. T ca d e b
d c d e e e e ca ea d aec a e
ee e , e e ce , d- a ae ba e.
T e e a de e ce e ac e ec a eab e e e
e e d ced d e ab e e ace .
A e ac e e ce , e a e, ed a ed b e
ec a d e. C a e e e e ce a e e ec ed e ed a
d e a d b e ed e e a de e ce.
Se a c c a e e e ce a , ac , e, b e ed a
d e ca ab b e e ac , e eb ed c e e ec .

4.4 Ama on s Rules for Teams


A e e ed C a e 1, A a a a e a ea d be
a e a ca be ed a; e ea ea ce
e ad ed a e a c e ce a c ec e. A c a ed e
ad a a e ab e e e ce :
A ea e ce e e e da a a d c a
e ce e ace .
Tea c ca e eac e e e e ace .
T ee be e e - e ce/ ea c ca
a ed: d ec , d ec ead a e ea da a e,
a ed- e de , bac d a e e.T e
c ca a ed a e ce e ace ca e e
e .
I d e a e a ec e [ e e ce ] e.
A e ce e ace , e ce , be de ed e
d be e e a ab e. T a a , e ea a a d
de be ab e e e e e ace de e e e de
d.
Eac ea d ce e be e ce . E e e ce a
e ca a ed e ce b c e ace. I a e ea e ea
e ce, d c e e e ace. T e d c e a e e ace
c de e e a c a e ab e e e a e ce
de e ea a e de e c a c e
add e . T e e c ce ca e e a ed e ea
d ee a a a .T e e a c a ab a
e ace ca be e e e / ad ba a ce a e de c bed ea e ,
a a e e a c a ac e e e ab e.
B a e e e ce e a e e a a a ab e, e e
e a e ce ba ee ca bec e a b e dec ,
a ec ca e. E e a e ce ca be dde be d a a ca
a e ace (API) b d a b a ,a d
e e e e d e ec ed e e ace.
A c e e ce ee e a A a a a e e e c ec
e ce . A eb a e e ae b e a e e e 150
e ce . Sca ab a a ed b eac e ce d d a a d
c ded SLA e a a a eed e e e e a
a c a ad. T e c ac c e a e e ce e a a
ce a de a d e e . T e SLA b d b ec e de a d e e ce
de. I e c e de a d e ceed e ad ed e SLA, e
e e e bec e e c e be , e e ce .

4.5 Microservice Adoption for E isting S stems


A c e ce e ec e a , de e de ea
De O , a a a e a e -c ca e a ae
a c ec ed a a . T e e a a eed dec de e e ae
e a c ec e c e ce a c ec e , a d c e a e.
We d c a e a C a e 10. S e e a
a c ec ad a c e ce a c ec e de ea e
e :
O ea a c ce a e c de ed d e e e
ec ca .
T e eac c e e e be de e ed d be a
c ec a , de e de e ce .
Eac e ce d be d b c e a d e e ed
e ce .
Tea e a e bee de ed a d a e de d.
Se ce a e e ed be e e ed a ca e / ad
ba a ce .
Se ce e e e e a e d ca .
Se ce de SLA e c e .
Se ce da be a e e a d be ea ed a a e .
I a e ce a a a a e, d be a a ed e e a
e e a e.
Se ce a e a e a e ca e a e ce e de e d a .
Se ce a e de e e c ec e ce e e
c e a d e e ce .
Ue e e a e ce , e e a a ,a d d- a
a e a d b a e a e ca ed ( .e., e e e a a e
a d e ec c a e e a e ce, e e a ,
e e a ae b a ).
H e e , ad a c e ce a c ec e d ce e
c a e e .W e a a ca c ed a a e be e -
c ec ed c e ce , e e ca be a e c a d e e a ce e.
A e ca a da a be ee e ce eed be ca e
de ed a e d add e ab e e ead. M ,
deb ,a dd b ed ac a eed be d ed
c e ce . A e ed ea e , e d- -e d e be e e e.
Ra e ca eb d a ca cac e ac
c e e da a.
M a c e a c ec e a c e ce a c ec e
ce e a da a a d e a c a e e. Y a
eed b d e d a . We d c ee
c a e e a d e e A a a ca e d C a e 13,
e e A a a de c be e a e e e a
c e ce a c ec e. A a c ec d a e a c ec
c de e e a a .

4.6 Summar
T e De O a c d a a a ea ca be
ac e ed b a c e ce a c ec a e e e ec d a
ec a , e e ce a a e e dec ,a d e a
a c ec a e e e a e a ec ed b e a c ec e a d e ce e e
a e - ea c d a .
A c ec ac ce de e e ca be added e
c e ce a c ec a e ac e e de e dab a d d ab ,
c a de a d a a ea e c a e.
Ad a c e ce a c ec a e d ce add a
c a e e , deb , e a ce a a e e , a d
e .M a a e a c ec e a c e ce
a c ec a e e e ca e a a dc e .
4.7 For Further Reading
F e a ab a e a c ec e, e ec e d e
b :
Doc menting Soft are Architect res, 2nd Edition [C e e 10]
Soft are Architect re in Practice, 3rd Edition [Ba 13]
Se ce de c , ca a , a d a a e e a e d c ed de a
e Handbook of Ser ice Description [Ba 12]. T b de c be
e ce a a e e e a b e, c e ce , b c e
d c ee a c e ce a e .
T e c e ce a c ec a e de c bed eb B ilding
Microser ices: Designing Fine-Grained S stems [Ne a 15].
Ma a a a e a ead ac c a e e c e ce
a c ec a de e e a d De O , a d a e a ab e
e e e ce .
Y ca ead e ab eA a e a e e e:
://a e a e .c /2012/01/12/ e- ec e - -a a - cce -
e a -a / a d :// . d e .c /b / a e/ a-d e- -
e-a a - a e /152
Ne ec a e e c e ce a c ec e
a ca e [T e 14].
T e Ne e e a E e a e e ce e a ad
ba a ce / e ca be da
:// b.c /Ne /e e a/ /E e a-a -a- a ce
C e D e C ac (CDC ) a e d c ed Ma F e
b C e -D e C ac : A Se ce E Pa e , [F e
06].

Você também pode gostar