Rejuvenes imento de Software
Raquel Vigolvino Lopes
Tese de Doutorado submetida à Coordenação dos Cursos de
Pós-Gradução em EngenhariaElétri adaUniversidade Federalde
Cam-pina Grande omopartedos requisitosne essários paraobtenção do
grau de Doutor em Ciên ias noDomíniodaEngenharia Elétri a.
Áreade Con entração: Pro essamentoda Informação
Fran is oVilarBrasileiro, Dr.
Orientador
Walfredo Cirne, Dr.
Orientador
Campina Grande, Paraíba, Brasil
FICHA CATALOGRÁFICA ELABORADA PELA BIBLIOTECA CENTRAL DA UFCG
L864C
2007 Lopes, Raquel Vigolvino
Combinando provisão d i n â m i c a de recursos e rejuvenescimento de
software /Raquel Vilgovino Lopes. — Campina Grande: 2007.
194f. : i l
Tese (Doutorado em Engenharia Elétrica) - Universidade Federal de
Campina Grande, Centro Engenharia Elétrica e Informática.
Referências.
Orientadores: Dr. Francisco Vilar Brasileiro e Dr. Walfredo Cirne
1. Sistemas de G e r ê n c i a - C o o r d e n a ç ã o . 2. Provisão D i n â m i c a . 3.
Rejuvenescimento de Processos. I . T í t u l o .
C D U 004.75(043)
UFCG
• BIBLIOTECA • CAMPUS !
COMBINANDO PROVISÃO DINÂMICA DE RECURSOS E R E J U V E N E S C I M E N T O
D E SOFTWARE
R A Q U E L VIGOLVINO L O P E S
Tese Aprovada em 26.11.2007
FR A NC ISCO V I L A R B R A S I L E I R O , Ph.D., U F C G
Orientador
W A L F R E D O DA COSTA CIRNE F I L H O , Ph.D., U F C G
Orientador(Ausência Justificada)
UFPE
C A R L O S AND
V I R G I L I O AUGUSTO FERNANDES A L M E I D A , Dr., U F M G
Componente da Banca (Ausência Justificada)
PÉRICLES R E Z E N D E BARROS, Ph.D., U F C G
Componente da Banca
DALTOISTTATOO S E R E Y G U E R H E R O \ D . S c , U F C G
Componente da B Í
CAMPINA GRANDE - PB
NOVEMBRO - 2007
AgradeçoprimeiramenteaDeus. Passeipormuitos momentosdifí eisaolongodessesanos
eseiquefoiElequemmesustentou... Efoipora reditarNelequesemprebusqueiaprender,
me melhoraresuperarassituaçõesmaisdifí eisquepasseiemminhavida. Aquem muito
foi dado, muito será obrado. Espero poder retribuir de alguma forma tudo que me foi
on edido.
Agradeço de forma muito espe ial aos meus pais, que investiram em minha edu ação
desdeomeunas imentoemeensinaramdesdemuito edoqueo onhe imentoeaedu ação
sãoamaiorherançaqueelesmedeixam. A hoquenun apodereiretribuirtudoquezeram
por mim... Além deste investimento, eles são meus melhores amigos, a quem imito e de
quem me orgulhode ser lha.
Apesar delenão entendernada ainda,agradeço aomeu lho,Guilherme. Narealidade,
elenão fa ilitou meu trabalhoem nada,muito pelo ontrário. Tantas noites maldormidas
ao lado dele até atrapalharamum pou o. Mas eleé meu grande in entivo para me tornar
uma pessoa melhor e nos momentos mais difí eis ele de alguma forma inexpli ável
me in entivavaa perseverar.
Agradeçoaosmeusorientadores,Fubi aeWalfredo,pelapa iên iaquetiveram omigo,
porme deixarem muito à vontade para pesquisar notema de meu interesse, pelos
ensina-mentos, pelas onversas epelaamizadequea abousurgindonaturalmenteao longodesses
anos.
Agradeçoaosmeus irmãosde sangue,CamilaeFelipe,aquemmuitoamo,porestarem
omigo, mesmoque apenas em pensamento. E agradeço também aos meus muitos amigos
a todos eles irmãos por opção. Gostaria de falar de ada um deles aqui, mas serei
obrigadaa es olher apenas alguns.
AgradeçoatodosquefazemoLaboratóriodeSistemasDistribuidos(LSD),semex eção.
Muitos já terminaram seus trabalhos e já partiram,mas am guardadosem meu oração
todos osmomentosquevivemosjuntos. Osorinho,Ana,Esther,Andrey,NelsoneGustavo,
muito obrigada porestarem por perto.
Outros ainda estão por aqui e puderam a ompanhar bem de perto minha aminhada
ompleta de doutorado, dando seu ombro amigo em muitos momentos e em outros me
ajudandote ni amente,dandosugestõesdemelhoriaparameutrabalhoemein entivando.
Lívia,Ayla,Lauro,Nazareno, Mila,Bárbara,Dudu, Iury,Rodrigoetantos outros(émuita
suporte. Zane,Thiago,Matheus,Randolph,quenãoestãomaisaqui,masquemeajudaram
enormemente nas ongurações dos meus experimentos. E também a Moisés, Roberto e
Karla. Vo ês todos ontribuíramenormementepara que meu trabalhofosserealizado om
su esso. Muito obrigada!
Continuando noLSD, quero agrade er aoOurGridnas pessoas de WilliameWalfredo,
responsáveis, respe tivamente, pelodesenvolvimentoeidéia domesmo. Semo OurGrideu
provavelmenteainda estaria rodando simulações até hoje. Obrigada!
Agradeço, ainda no LSD, a Cleide, que manteve minha mesa sempre limpinha, sem
arrumar minha bagunça organizada, sua fé é um exemplo para mim. Agradeço a Keka,
sempreprontaanosajudar omumade laração,umofí io,epreparando omtanto arinho
nossas viagens.
Agradeço também, de oração, a Ja ques e a Peter, que não puderam me orientar
no doutorado, mas que ertamente, ontribuíram enormente para a minha formação. As
onversas om Ja ques sobre modelagem, validação, et . foram de grande importân ia no
desenvolvimento daminha tese.
Ah! AgradeçoenormementeaVaneide,CristinaeSilvana, que uidamtão bemde
Gui-lherme naminhaausên ia. E minhaausên ia foi bem grande... Sem vo ês (e mainhapara
oordenar tudo!) eu não teria tido a tranquilidade ne essária para realizar meu trabalho.
Muito obrigada!
Finalmente, agradeço a algumas amigas de sempre: Erikinha, Ju, Milene, Ta iana
e Thi iane, que mesmo de longe me deram força, in entivo... A reditaram em minha
apa idade, quando eu mesma heguei aduvidar. Muito obrigadameninas!
Há muito mais a quem agrade er... A todos aqueles que, embora não nomeados, me
brindaram om seus inestimáveis apoios em distintos momentos e por suas presenças, o
meu re onhe ido e arinhoso muito obrigada!
Sistemas de provisão dinâmi a de re ursos geren iam automati amente a apa idade da
apli ação de forma que ela se adeque a sua demanda orrente. Estes sistemas são
impor-tantes em setratando de apli açõesquere ebem uma argade trabalhoquevariaaolongo
do tempo. Sistemas de rejuvenes imento objetivam dete tar e re uperar apli açõesde
fa-lhas de software atravésdoreiní iodos omponentes emfalha. Tradi ionalmente,sistemas
de provisãodinâmi ade re ursos esistemas de rejuvenes imentode software são
onstruí-dos e estudados de forma isolada e independente. Argumenta-se que existe uma ampla
lasse de apli ações, omo por exemplo, apli ações Web, que pre isam ser ontroladas
si-multaneamente tanto no aspe to de provisão dinâmi a de re ursos quanto no aspe to de
rejuvenes imento de software. No entanto, não são onhe idos estudos que explorem os
efeitos da oexistên ia de tais sistemas atuando sobre a mesma apli ação. Nesta tese são
apresentados diversos enários nos quais sistemas de provisão dinâmi a de re ursos e de
rejuvenes imento independentes não atuam e ientemente ao ontrolar uma mesma
apli- ação. Nestes enários, tais sistemas, sem o onhe imento um do outro, tomam de isões
que levam a apli açãoa ofere er uma pior qualidade de serviço. Além disso, as falhas em
omponentes ausam mais danos à qualidade de serviço da apli ação do que ausariam
se o orressem em uma infra-estrutura super-provida de re ursos estati amente.
Té ni- as simples de oordenação das atividades destes sistemas foram propostas e estudadas e
per ebeu-sequeépossíveleinteressante oordenaraaçãodossistemasdeprovisãodinâmi a
Dynami provisioning systems hange appli ation apa ity in order to use anappropriate
number of resour es to a ommodate urrent load. These systems benet appli ations
with time-varying workloads. Rejuvenation systems dete t/fore ast software failures and
restartoneormore omponentsoftheappli ationinordertobringthemtoahealthystate.
Traditionally, these systems have been developed unaware of one another. We argue that
many appli ationsneed tobe ontrolled by both systems simultaneously. This is the ase,
for instan e, ofWeb-based appli ations. However, weare not aware of resear hworks that
study the ee ts of the oexisten e of these systems, a tuating over the same appli ation.
We identied s enarios in whi h these systems annot e iently a tuate over the same
appli ationwhentheyarenot aware ofea hother. Componentfailures ausemoredamage
totheappli ationqualityofservi eintheses enariosthantheywould auseiftheyo ured
inastati over-provisionedinfrastru ture. Ourresultsshowthatwhenbothsystems oexist
independently of ea h other, appli ation quality of servi e degrades in omparison with
the quality of servi e provided when ea h system is a ting alone. Simple oordination
te hniques between dynami provisioning and rejuvenation a tions were proposed. By
1 Introdução 1
1.1 Motivação e relevân ia . . . 1
1.2 Objetivos . . . 5 1.2.1 Objetivos gerais . . . 5 1.2.2 Objetivos espe í os . . . 6 1.3 Metodologia . . . 6 1.3.1 Composições domodelo . . . 8 1.3.2 Métri as de interesse . . . 9
1.4 Seleçãode té ni as de avaliação . . . 10
1.5 Contribuições . . . 12
1.6 Organizaçãodo do umento . . . 12
2 Revisão da literatura rela ionada 14 2.1 A alo ação dinâmi ade re ursos . . . 14
2.1.1 Atividadesque ompõem a alo ação dinâmi ade re ursos. . . 16
2.1.2 Sistemas de provisãodinâmi ade re ursos . . . 17
2.2 Dete ção e Re uperação de Faltas de Software . . . 25
2.2.1 Classi ação edenição de faltasde software intermitentes . . . 25
2.2.2 Rejuvenes imento omo prevenção e re uperação de faltas intermi-tentes de software . . . 26
2.2.3 Abordagemanalíti a . . . 27
2.2.4 Abordagembaseada em medições . . . 30
2.2.5 Mi ro-reiní ios . . . 32
2.3 Interaçãoentre sistemas de ontrole . . . 32
2.3.1 Rela ionamento entre provisão dinâmi a de re ursos e rejuvenes i-mentode software . . . 35
3 Modelo analíti o 41
3.1 Modelo analíti o baseado em rede de las aberta . . . 41
3.2 Quando o rejuvenes imento pode afetar aqualidade de serviço da apli ação 44 3.2.1 Exemplo de instan iação do modelo . . . 46
3.2.2 Analisandoo rejuvenes imento oordenado . . . 48
3.3 Con lusõespar iais . . . 49
4 Modelo de simulação 50 4.1 Modelo de simulação . . . 50
4.1.1 A apli ação . . . 50
4.1.2 O sistemade geraçãode arga . . . 52
4.2 Osistema de injeção de erros . . . 53
4.2.1 Função de degradação . . . 54
4.3 Osistema de provisão dinâmi a . . . 55
4.3.1 O sistemaperfeito de provisãodinâmi a . . . 55
4.3.2 Algoritmo de provisãodinâmi a . . . 56
4.4 Osistema de rejuvenes imento . . . 57
4.4.1 Algoritmo de rejuvenes imento . . . 57
4.5 Con lusõespar iais . . . 58
5 Resultados da ação simultânea de sistemas de provisão dinâmi a e de rejuvenes imento não oordenados 60 5.1 Experimentos que onsideramo DPS perfeito . . . 60
5.1.1 Sobre a formade avaliaçãodos resultados . . . 60
5.1.2 Intervalos de onança . . . 63
5.1.3 Instân ias domodelo . . . 63
5.1.4 Resultados obtidospara experimentos que onsideraramoDPS per-feito (PDPS) . . . 66
5.2 Experimentos que não onsideram oDPS perfeito . . . 72
5.2.1 Instân ias domodelo . . . 72
5.2.2 Sobre a formade avaliaçãodos resultados . . . 75
5.2.3 Resultados obtidos para Cenário I: argas up e down de menor in-tensidade . . . 77
tensidade . . . 82
5.2.5 Inuên ia donúmero médio de nós ativos. . . 85
5.3 Con lusõespar iais . . . 87
6 Coordenação de atividades de provisão dinâmi a e rejuvenes imento 89
6.1 Té ni as de oordenação . . . 89
6.2 Sobre aforma de avaliaçãodos resultados. . . 92
6.3 Resultados obtidos para enáriosem que o DPS perfeito foi usado . . . 93
6.4 Resultados obtidos para CenárioI: argas up e down de menorintensidade 96
6.5 Resultados obtidos para CenárioII: argas up e down de maior intensidade 101
6.6 Inuên iado número de nós ativos . . . 104
6.7 Con lusõespar iais . . . 106
7 Con lusões e Trabalhos futuros 108
7.1 Resultados e ontribuições . . . 108
7.2 Atividadesfuturas . . . 112
Bibliograa 114
A Projeto de experimentos 125
A.0.1 Terminologia . . . 126
A.0.2 Projetode experimentos para a omposiçãoAWoF+DPS . . . 129
A.0.3 Projetodeexperimentoda omposiçãoAWF+DPS+RS onsiderando
argas de menor intensidade . . . 138
A.0.4 Projetode experimentos da omposiçãoAWF+PDPS*RS . . . 143
A.1 Con lusõespar iais . . . 145
B Intervalos de onança de experimentos de simulação apresentados no
Capítulo 6 147
B.1 Intervalos de onança da disponibilidade e tempo de resposta de
experi-mentos que usaramo PDPS . . . 147
B.2 Intervalos de onança da disponibilidade e tempo de resposta de
experi-mentos que usaramo PDPS2 . . . 149
B.3 Intervalos de onança da disponibilidade, tempo de resposta, número de
nós ativose número de requisiçõesrejeitadas . . . 149
B.4 Intervalosde onançadadisponibilidadeetempoderespostadurante
o or-rên ia de falhase rejuvenes imentos . . . 158
B.4.1 Cenário II . . . 158
C Intervalos de onança de experimentos de simulação da omposição AWF+DPS*RS apresentados no Capítulo 7 162 C.1 Intervalos de onança da disponibilidade e tempo de resposta de experi-mentos que usaramo PDPS . . . 162
C.2 Intervalos de onança da disponibilidade e tempo de resposta de experi-mentos que usaramo PDPS2 . . . 163
C.3 Intervalos de onança da disponibilidade, tempo de resposta, número de nós ativose número de requisiçõesrejeitadas . . . 164
C.3.1 Cenário I . . . 164
C.3.2 Cenário II . . . 166
C.4 Intervalosde onançadadisponibilidadeetempoderespostadurante o or-rên ia de falhase rejuvenes imentos . . . 168
C.5 CenárioI. . . 168
C.6 CenárioII . . . 168
D Veri ação e validação do modelo de simulação 171 D.1 Veri ação domodelo de simulação . . . 172
D.1.1 Análise de valores limites. . . 172
D.1.2 Teste dolimite superior davazão . . . 173
D.1.3 Testes de limites superior e inferior dotempo de resposta . . . 174
D.1.4 Teste de limites superior einferior da utilização . . . 175
D.1.5 Testes dos limitessuperior e inferior dadisponibilidade . . . 175
D.2 Experimentos de medição para validaçãodo modelo . . . 176
D.2.1 Ambiente experimental de medição . . . 177
D.2.2 Faltas de software inseridas . . . 180
D.2.3 Mediçõesrealizadas . . . 181
D.2.4 Monitores eatuadores do experimento de medição . . . 181
D.2.5 Conguração epro edimentos experimentais . . . 182
D.3 Instan iaçõesdo modelo de simulação . . . 184
D.4 Resultados dos experimentos de medição . . . 185
DPS*RS . . . 187
D.4.3 Resultados de simulaçãopara novas ongurações . . . 192
DPS: Dynami ProvisioningSystem.
RS: RejuvenationSystem.
QoS: Quality of Servi e.
AWoF: Appli ationWithoutFaults.
AWF: Appli ationWith Faults.
AWoF
+
DPS: Composição que modela um e-servi e sem faltas de software que tem sua apa idade geren iada por um sistemade provisãodinâmi a.AWF
+
RS: Composição que modela um e-servi e om faltas de software geren iado por um sistemade rejuvenes imento.AWF
+
DPS+
RS:Composiçãoquemodelaume-servi e omfaltasde softwaregeren iado por um sistema de provisão dinâmi a de re ursos e por um sistema de rejuvenes imentoindependentes.
AWF
+
DPS⋆
RS:Composiçãoquemodelaum e-servi e om faltasde software geren iado por um sistema de provisão dinâmi a de re ursos e por um sistema de rejuvenes imentoque olaboramentre si.
A
e
: Disponibilidade daapli ação
e
. Re
: Tempo médio de resposta da apli ação
e
. PDPS: Perfe t Dynami Provisioning System.l avail
PDPS
: Perda em termosde disponibilidade ausada porter aapli açãosemfaltasde
soft-ware geren iada por um PDPS, se omparada à disponibilidade máxima que a apli ação
pode ofere er.
l avail
RS
: Perda em termosde disponibilidade ausada porter a apli ação om faltas de
soft-ware geren iada por um RS, superprovida de re ursos, se omparada à disponibilidade
máxima que a apli ação pode ofere er. Representa a perda de disponibilidade devido à
o orrên ia de falhase rejuvenes imentos.
l avail
PDPS+RS
: Perda em termos de disponibilidade ausada pela atuação do PDPS e pela
l rej
DPS
: Quantidadede requisiçõesrejeitadaspor ontadaatuaçãodoDPSaogeren iaruma
apli ação sem faltasde software. Representa a perda de requisições devido à provisão
di-nâmi a de re ursos.
l rej
RS
: Quantidade de requisições rejeitadas por onta da atuação do RS ao geren iar uma
apli ação om faltasde software, superprovidade re ursos. Representa aperda de
requisi-ções devido à o orrên ia de falhas erejuvenes imentos.
l rej
DPS+RS
: Quantidade de requisições rejeitadas por onta da atuação do DPS e da
o or-rên ia das falhase rejuvenes imentos quando DPS eRS atuamsimultaneamente de forma
independente.
l t
DPS
: Perda em termos de tempo de resposta ausada por ter a apli ação sem faltas de
software geren iada porum DPS, se omparada ao tempo mínimo de resposta que a
apli- ação poderia ofere er aso tivesse apa idade innita (demandamédia de serviço).
l t
RS
: Perda em termos de tempo de resposta ausada por ter a apli ação om faltas de
software geren iadaporum RS,superprovidade re ursos, se omparadaaotempomínimo
de resposta queesta mesmaapli ação, omamesma apa idadepoderiaofere er asofosse
livre de faltas de software. Representa a perda em termos de tempo de resposta devido à
o orrên ia de falhase rejuvenes imentos.
l t
DPS+RS
: Perda em termos de tempo de resposta ausada pela atuação do DPS e pela
o orrên ia das falhas e rejuvenes imentos quando DPS e RS atuam simultaneamente de
formaindependente.
g t
DPS*RS
: Ganho em termos de disponibilidade medidoquando as açõesdo DPS e doRS
estão oordenadas.
g t
DPS*RS
: Ganho em termos de tempo de resposta medido quando as ações do DPS e do
2.1 Sumáriode ara terísti asde alguns DPSs . . . 23
2.1 Sumáriode ara terísti asde alguns DPSs . . . 24
5.1 Parâmetros variáveis usados nos experimentos de simulações . . . 64
5.2 Número médiode nós ativosna omposição AWF+RS . . . 66
5.3 Perdas médias de requisiçõese tempode resposta . . . 67
5.4 Utilizaçãomédia dos nós ativos duranteexperimentos om arga up . . . . 68
5.5 Utilizaçãomédia dos nós ativos duranteexperimentos om arga down . . 69
5.6 Utilizaçãomédia dos nós ativos duranteexperimentos om arga up . . . . 69
5.7 Utilizaçãomédia dos nós ativos duranteexperimentos om arga down . . 70
5.8 Perdas médias de requisiçõese tempode resposta . . . 71
5.9 Parâmetros variáveis usados nos experimentos de simulações . . . 73
5.10 Outros parâmetrosusados nos experimentos de simulaçõesI e II . . . 74
5.11 Número estáti ode nós ativos em omposiçõesAWF+RS doCenário I . . 74
5.12 Número estáti ode nós ativos em omposiçõesAWF+RS doCenário II . . 75
5.13 Valores usadosnos testes de limite máximo davazão . . . 78
5.14 Valores usadosnos testes de limite máximo davazão . . . 83
5.15 Perdas de disponibilidadepor arga apli adanos enários I e II . . . 86
5.16 Perdas de disponibilidade por arga apli ada nos enários I e II durante o orrên ia de falhase rejuveens imento . . . 87
6.1 Ganhos médiosde disponibilidade . . . 94
6.2 Ganhos médiosde disponibilidade . . . 96
6.3 Per entual de o orrên ias doquorum mínimo. . . 100
6.4 Per entual de o orrên ias doquorum mínimo. . . 103
6.5 Ganhos de disponibilidade por arga apli adanos Cenários I e II . . . 105
6.6 Ganhos de disponibilidade por arga apli ada nos enários I e II durante o orrên ia de falhase rejuveens imento . . . 106
A.2 Per entuais de variaçãode
y
devido aos fatores. . . 130A.3 Fatores apli adosnos experimentos AWoF+DPS . . . 132
A.4 Alguns per entuais de variaçãode
y
devido aos fatores e interações . . . . 132A.5 Fatores apli adosnos experimentos AWF+RS . . . 135
A.6 Número estáti ode nós ativos . . . 135
A.7 Alguns per entuais de variaçãode
y
devido aos fatores . . . 136A.8 Fatores apli adosnos experimentos AWF+RS . . . 137
A.9 Número estáti ode nós ativos . . . 137
A.10Alguns per entuais de variaçãode
y
devido aos fatores e interações . . . . 138A.11Fatores apli adosnos experimentos AWF+DPS+RS . . . 139
A.12Alguns per entuais de variaçãode
y
devido aos fatores . . . 139A.13Fatores apli adosnos experimentos AWF+DPS+RS para arga grande . . 141
A.14Alguns per entuais de variaçãode
y
devido aos fatores . . . 142A.15Fatores apli adosnos experimentos AWF+PDPS*RS para arga grande . . 143
A.16Resultado do projeto experimental para a omposiçãoAWF+PDPS*RS . . 144
B.1 Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 147
B.2 Intervalos de onança da disponibilidade e tempode resposta para a om-posição AWoF+PDPS . . . 147
B.3 Intervalos de onança da disponibilidade e do tempo de resposta para a omposiçãoAWF+RS . . . 148
B.4 Intervalos de onança da disponibilidade e do tempo de resposta para a omposiçãoAWF+PDPS+RS . . . 148
B.5 Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 149
B.6 Intervalos de onança da disponibilidade e tempode resposta para a om-posição AWoF+PDPS2 . . . 149
B.7 Intervalos de onança da disponibilidade e do tempo de resposta para a omposiçãoAWF+PDPS2+RS . . . 150
B.8 Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 150
B.9 Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãonoCenário I para a omposição AWoF+DPS . . 151
de nós ativos daapli açãonoCenário I para a omposição AWF+RS . . . 152
B.11Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário I para a omposição AWF+DPS+RS 153
B.12Níveis de onança e erros onsiderados para a geração dos intervalos de
onança. . . 154
B.13Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário II para a omposição AWoF+DPS . 155
B.14Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário II para a omposição AWF+RS . . . 156
B.15Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário II para a omposição AWF+DPS+RS 157
B.16Níveis de onança e erros onsiderados para a geração dos intervalos de
onança. . . 158
B.17Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário I para a omposição AWoF+DPS . . 158
B.18Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário I para a omposição AWF+RS . . . 159
B.19Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário I para a omposição AWF+DPS+RS 159
B.20Níveis de onança e erros onsiderados para a geração dos intervalos de
onança. . . 160
B.21Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário I para a omposição AWoF+DPS . . 160
B.22Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário I para a omposição AWF+RS . . . 160
B.23Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãonoCenário II para a omposição AWF+DPS+RS 161
C.1 Níveis de onança e erros onsiderados para a geração dos intervalos de
onança. . . 162
C.2 Intervalos de onança da disponibilidade e do tempo de resposta para a
omposiçãoAWF+PDPS*RS . . . 163
C.3 Níveis de onança e erros onsiderados para a geração dos intervalos de
omposiçãoAWF+PDPS2*RS . . . 164
C.5 Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 164
C.6 Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãonoCenário I para a omposição AWF+DPS*RS 165 C.7 Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 166
C.8 Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãonoCenário II para a omposição AWF+DPS*RS 167 C.9 Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 168
C.10Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãonoCenário I para a omposição AWF+DPS*RS 169 C.11Níveis de onança e erros onsiderados para a geração dos intervalos de onança. . . 169
C.12Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãonoCenário II para a omposição AWF+DPS*RS 170 D.1 Valores usadosnos testes 1,2 e3 de limite máximo davazão . . . 173
D.2 Valores usadosnos testes 4,5 e6 de limite máximo davazão . . . 174
D.3 Valores usadosnos testes de limite máximo dotempode resposta . . . 174
D.4 Valores usadosnos testes de limite mínimodadisponibilidade . . . 176
D.5 Valores omputadosno dé imoprimeirominuto de simulação . . . 176
D.6 Conguraçõesde hardware das máquinastipoI usadasnos experimentos de medição . . . 179
D.7 Congurações de hardware das máquinas tipo II usadas nos experimentos de medição . . . 180
D.8 Resultados dos experimentos realizados para identi ar a função de um mi-lissegundo . . . 181
D.9 Parâmetros ongurados para os experimentos de simulação . . . 184
D.10Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãopara a argaup . . . 185
D.11Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero de nós ativos daapli açãopara a argadown . . . 186
de nós ativos daapli açãona omposição AWF+RS aoapli ar a arga up . 187
D.13Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nós ativos daapli açãona omposição AWF+RS aoapli ar a arga down 187
D.14Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
denósativosdaapli açãona omposiçãoAWF+DPS+RS aoapli ara arga
up . . . 188
D.15Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
denósativosdaapli açãona omposiçãoAWF+DPS+RS aoapli ara arga
down . . . 188
D.16Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nósativosdaapli açãona omposiçãoAWF+DPS*RS aoapli ara arga
up . . . 188
D.17Intervalosde onançadadisponibilidade,dotempoderespostaedonúmero
de nósativosdaapli açãona omposiçãoAWF+DPS*RS aoapli ara arga
down . . . 189
D.18Tendên ias de disponibilidade dos modelosde simulaçãoe de mediçãoonde
a argaup foi apli ada . . . 189
D.19Tendên ias de disponibilidade dos modelosde simulaçãoe de mediçãoonde
a argadown foi apli ada . . . 189
D.20Parâmetros ongurados para os experimentos de simulação . . . 192
D.21Quantidade de requisiçõesenviadapara o nóem falha antes do
1.1 Visãode altonível domodelo baseado em omponentes . . . 7
2.1 Componentes do sistemaglobal de alo açãodinâmi ade re ursos . . . 17
2.2 Laço de ontrole de realimentaçãoformado porsistemasde provisãodinâmi a 18 3.1 Modelo de um e-servi e usandouma rede de las . . . 42
3.2 Quantidade de nós ativos aolongo dotempoquando
r
f ail
>
0
. . . 434.1 Omodelo daapli ação . . . 51
5.1 Carga de trabalhodown . . . 64
5.2 Carga de trabalhoup . . . 64
5.3 Disponibilidadeda apli ação onsiderandodiferentes omposições . . . 66
5.4 Tempo de resposta daapli ação onsiderando diferentes omposições . . . 66
5.5 Perda em termosde disponibilidade(
l
avail
P DP S+RS
− l
RS
avail
) . . . 685.6 Disponibilidade da apli ação onsiderandodiferentes omposições . . . 70
5.7 Tempo de resposta daapli ação onsiderando diferentes omposições . . . 70
5.8 Perda em termosde disponibilidade(
l
avail
P DP S+RS
− l
avail
RS
) . . . 715.9 Carga de trabalhodown doCenário I . . . 72
5.10 Carga de trabalhoup doCenárioI . . . 72
5.11 Carga de trabalhodown doCenário II . . . 72
5.12 Carga de trabalhoup doCenárioII . . . 72
5.13 Disponibilidade omputada noCenário I . . . 78
5.14 Tempo médiode resposta omputadono CenárioI . . . 78
5.15 Perda total de disponibilidadequando não há oordenação . . . 79
5.16 Perda de requisições napresença de falhase rejuvenes imentos . . . 79
5.17 Perda total do tempo de resposta quando não há oordenação . . . 81
5.18 Disponibilidade omputada noCenário II . . . 83
5.21 Perda de requisições napresença de falhase rejuvenes imentos . . . 84
5.22 Número médiode nós ativosnoCenário I. . . 86
5.23 Número médiode nós ativosnoCenário II . . . 86
6.1 Disponibilidadeda apli ação onsiderandodiferentes omposições . . . 94
6.2 Tempo de resposta daapli ação onsiderando diferentes omposições . . . 94
6.3 Ganho em termos de disponibilidade . . . 94
6.4 Ganho em termos de tempode resposta . . . 94
6.5 Disponibilidade da apli ação onsiderandodiferentes omposições . . . 95
6.6 Tempo de resposta daapli ação onsiderando diferentes omposições . . . 95
6.7 Ganho em termos de disponibilidade . . . 96
6.8 Ganho em termos de tempode resposta . . . 96
6.9 Disponibilidade omputada noCenário I . . . 97
6.10 Tempo médiode resposta omputadono CenárioI . . . 97
6.11 Ganho de disponibilidade aoapli ar a oordenação no CenárioI . . . 98
6.12 Requisiçõesa eitas aoapli ar a oordenação no CenárioI . . . 98
6.13 Quantidade de requisições a eitas devido à oordenação durante o orrên ia de falhas erejuvenes imentos . . . 99
6.14 Quantidade de requisições a eitas devido à oordenação após a o orrên ia de falhas erejuvenes imentos . . . 99
6.15 Melhora do tempo de resposta devido à oordenação durante o orrên ia de falhase rejuvenes imentos . . . 101
6.16 Melhora do tempo de resposta devido à oordenação durante a o orrên ia de falhas erejuvenes imentos . . . 101
6.17 Disponibilidade omputada noCenário II . . . 102
6.18 Tempo médiode resposta omputadono CenárioII . . . 102
6.19 Ganho de disponibilidade aoapli ar a oordenação no CenárioII. . . 103
6.20 Requisiçõesa eitas aoapli ar a oordenação no CenárioII . . . 103
6.21 Quantidade de requisições a eitas devido à oordenação durante o orrên ia de falhas erejuvenes imentos . . . 104
6.22 Quantidade de requisições a eitas devido à oordenação após a o orrên ia de falhas erejuvenes imentos . . . 104
6.23 Melhora do tempo de resposta devido à oordenação durante o orrên ia de falhase rejuvenes imentos . . . 105
de falhas erejuvenes imentos . . . 105
A.1 Exemplo de interaçãoe não interaçãoentre fatores. . . 127
A.2 Carga de trabalhomenos variávele intensa, om um pi o ompleto (down) 130
A.3 Carga de trabalhomais variável eintensa, om dois pi os ompletos (up) . 130
A.4 Testes grá os para realização daANOVA . . . 131
A.5 Carga de trabalhomenos variávele intensa, om um pi o ompleto (down) 131
A.6 Carga de trabalhomais variável eintensa, om dois pi os ompletos (up) . 131
A.7 Testes grá os para realização daANOVA . . . 133
A.8 Testes grá os para realização daANOVA . . . 140
A.9 Testes grá os para realização daANOVA . . . 142
A.10Carga de trabalhomenos variávele intensa, om um pi o ompleto (down) 144
A.11Carga de trabalhomais variável eintensa, om dois pi os ompletos (up) . 144
D.1 Arquitetura de altonível doambiente de testes experimentais . . . 177
D.2 Grá o da arga up usada nos experimentos . . . 183
D.3 Grá o da arga down usadanos experimentos . . . 183
D.4 Disponibilidadedaapli açãonos experimentosde mediçãoesimulaçãoonde
a argaup foi apli ada . . . 193
D.5 Disponibilidadedaapli açãonos experimentos de mediçãoesimulaçãoonde
a argadown foi apli ada . . . 193
D.6 Tempoderesposta médiodaapli açãonos experimentos demediçãoe
simu-lação onde a arga up foiapli ada . . . 194
D.7 Tempoderesposta médiodaapli açãonos experimentos demediçãoe
Introdução
1.1 Motivação e relevân ia
Com oaumento da omplexidadedainfra-estruturade te nologiadainformação(TI)e de
sua importân iatanto para osnegó ios das empresas quantopara o dia-a-diadas pessoas,
a gerên ia destes sistemas vem passando por diversas mudanças ao longo do tempo. T
ra-di ionalmente, o homem foi o oordenador e o prin ipal tomador de de isões no âmbito
da gerên ia destes sistemas. No entanto, devido à omplexidade asso iada aos sistemas
atuais, in luir o homem no pro esso de gerên ia passou a ser aro (GANEK;CORBI, 2003;
MENASCÉ et al., 2003) e muitas vezes ine iente (BROWN;PATTERSON, 2001;
OPPENHEI-MER;GANAPATHI;PATTERSON,2003). Surgiuentão ane essidadede automatizara
gerên- ia dos sistemas (GANEK; CORBI, 2003; MENASCÉ et al., 2003), movimento onhe ido por
omputação autnoma (autonomi omputing).
Esta ne essidade de automação da gerên ia vem sendo também estimulada pelo
sur-gimento de um novo modelo de entrega de serviços de TI: a omputação sob demanda
(utility omputing) (EJASENT, 2001; ERIKSEN, 2003; RAPPA, 2004). Em um ambiente de
omputaçãosob demandaobtém-se infra-estrutura,apli açõesepro essosde negó io
atra-vés da Internet de forma segura e es alável (RAPPA, 2004). É um modelo fun ionalmente
semelhante aos serviços de distribuição de água e energia elétri a. Da mesma forma que
é a empresa de energia elétri a que se preo upa om a geração, transporte e distribuição
de energia, existirão empresas espe ializadas em implantar, manter e ofere er serviços de
TI quando os seus lientes o desejarem. Neste ambiente, os usuários pagam apenas pelos
serviços onsumidos. Assim, os lu ros de quem provê omputação sob demanda
depen-dem da sua agilidade e e iên ia em ofere er para os lientes o serviço desejado na hora
ne essidade de intervenção humanano pro esso de gerên ia.
Motivadospelaimportân iaimediatadaautomaçãodagerên ia,diversospesquisadores
têm proposto sistemas de gerên ia que não apenas monitorama apli açãoe seu ambiente,
mas que tomamde isõespara osmais diversos ns om base nestasinformações(RANJAN
et al., 2002; HONG et al., 2002; CANDEA et al., 2003; MENASCÉ et al., 2003; DIACONESCU;
MOS; MURPHY, 2004; AIBER et al., 2004; GUANGZHI et al., 2004). Cada um destes
siste-mas lida om ara terísti as espe í as das apli ações geren iadas. Por exemplo, alguns
responsabilizam-sepordete tar ere uperar apli açõesde ataques;outroslidam oma
pro-visão dinâmi a de re ursos; outros om a onguração de desempenho automáti a mais
adequada, et .
Para que seja possível afastar ompletamente a ne essidade de intervenção humana
no pro esso de gerên ia de tais sistemas, a redita-se que é pre iso realizar uma gerên ia
holísti a. Sendo assim, seria ne essária a oexistên ia de diversos sistemasautomáti os de
gerên ia geren iando a mesma apli ação, sob diferentes aspe tos. Para se hegar a este
ponto, no entanto, é importante denir: (i) que sistemas de gerên ia são fundamentais e
(ii) estudar omo estes sistemas interageme omo podem olaborar entre si.
Nestatese onsideram-seespe ialmentedois tiposde sistemasautomáti osjápropostos
na literatura: sistemas de provisão dinâmi a de re ursos e sistemas de rejuvenes imento 1
de software.
Um sistema de provisão dinâmi a de re ursos (Dynami Provisioning System - DPS)
visa adequar automati amente a apa idade de uma apli ação à demanda orrente da
mesma (EJASENT, 2001; RANJAN et al., 2002; LASSETTRE et al., 2003; URGAONKARet al.,
2005). Tradi ionalmente, administradores de tais apli ações sujeitas a argas variáveis
utilizavam-sede super-provisãode re ursos (GRIBBLE, 2001). Para super-proveruma
apli- açãodere ursostenta-sepreverademandamáximaaserre ebidapelaapli açãoealo a-se
aquantidadedere ursosne essáriaparaatender aestademanda. Quandoasuper-provisão
é realizadaobserva-se uma baixautilizaçãomédia dos re ursos (EJASENT, 2001), uma vez
que a arga média da apli ação é inferior à arga de pi o. A super-provisão é uma
té -ni a simples, porém ara e sujeita a erros. É ara porque torna ne essário o uso de uma
quantidade dere ursos sempremaior queane essária e,sujeita aerrosporquedepende de
uma previsão da arga de pi o orreta e de um mapeamento desta arga em quantidade
de re ursos também orreta. Sistemas de provisão dinâmi a são desejáveis em quaisquer
ambientes que hospedem apli ações uja arga variaaolongo dotempo. Emambientes de
1
Sistemas de rejuvenes imento de software (Rejuvenation Systems - RS) lidam om
fa-lhas de software que o orrem enquanto a apli ação está sendo exe utada. Estes sistemas
dete tam ou prevêem a o orrên ia de falhasde software e levam a apli açãoa um estado
ompletamenteopera ionalatravésdorejuvenes imento(reiní io)daapli açãooudo
om-ponenteem falha(AVRITZER;BONDI;WEYUKER,2005;LI;VAIDYANATHAN;TRIVEDI,2002;
GARGet al.,1998; HUANG etal., 1995).
De a ordo om Oppenheimer et al (OPPENHEIMER; GANAPATHI; PATTERSON, 2003),
falhas de software e erros de operadores humanos são atualmenteuma das maiores ausas
de falhas de apli ações de Internet. Portanto, lidar om tais falhas de forma automáti a
vem também sendo uma atividadeimportantepara taisapli ações.
Osserviços es aláveis que re ebem uma arga variável aolongo do tempo representam
uma ampla lasse de apli açõesque se bene iariam aoser geren iadasporestes sistemas
simultaneamente. Por onstituir um serviço, tais apli ações exe utam por um período de
tempoilimitado. Umasimulaçãode previsãodotempo,porexemplo,exe utaporumdado
período, e quando a previsão é on luída a apli ação é en errada, não sendo onsiderado
um serviço. Já servidores de ban os de dados ou servidores Web pre isam estar sempre
em exe ução, à espera de pedidos de lientes, onstituindo assim serviços. Além de ser
um serviço, tais apli ações re ebem uma arga variável ao longo do tempo. Os lientes
de tais serviços submetem requisições que geram pro essamento no lado servidor e, após
o pro essamento, uma resposta é gerada e enviada ao liente. Finalmente, taisapli ações
são es aláveis, isto é, é fá il aumentar ou diminuir a sua apa idade, sem modi ar seu
ódigo ou suas espe i ações. O aumento de apa idade é realizado através do aumento
da quantidade de re ursos que exe utam a apli ação. Geralmente, estas apli ações são
exe utadas em lusters. Neste trabalho, onven ionou-se hamar estas apli ações de
e-servi es.
Um grupo muito importante de e-servi es é o das apli ações baseadas em Web. O
a esso a estas apli ações é feito tipi amente através de um navegador Web via Internet
por lientes globalmentedistribuídos. A ultura quese formou em torno destasapli ações
leva seus lientes a esperarem que elas estejam em perfeito fun ionamento 24 horas por
dia, 7dias porsemana. Istoimpli aem um ótimodesempenhoe umaaltadisponibilidade.
Manter estaqualidadede serviçoéumaatividade omplexa,espe ialmentequandoexistem
razõese onmi asque impedemqueaapli açãopermaneça onstantementesuper-provida
de re ursos.
(CRO-2001; MENASCÉ et al., 2003) e difí il de ser prevista. Sendo assim, estas apli ações
apre-sentam uma demandade re ursos quevaria om otempo, justi ando-seaimportân iade
um sistemade provisão dinâmi ade re ursos.
Igualmente importantes para as apli ações Web (e para os e-servi es em geral) são os
sistemasde dete ção ere uperaçãode falhasde software. Esta importân iasedeve
espe i-almenteànatureza de exe ução permanentedestasapli ações. Algumasfaltasde software
podemes apardetodos ostestesesemanifestarapenasduranteaexe ução prolongadada
apli ação. Com opassar dotempoem exe ução estas apli açõespodementrar em estados
não esperados quenão foramestudadosnafasedetestes. Tipi amente,estasfaltasde
soft-ware são realmente difí eis de ser apturadas e são lassi adas omo Heisenbugs (GRAY,
1986) e faltas rela ionadas ao envelhe imento dos pro essos (VAIDYANATHAN; TRIVEDI,
2001). Ambos os tipos de falta são ativados sob ertas ondições que não são fa ilmente
reproduzíveis.
Um outro fatoque aumenta a possibilidade de existên iade faltas de software em tais
apli açõesé que muitas delas pre isam ser desenvolvidas em um tempo mínimo para que
sejam úteis ao negó io (time to market) e, além disso, estão permanentemente passando
por atualizações que reetem as mudanças do negó io, aumentando a probabilidade de
introduçãode faltas de software.
Apesar da importân ia de sistemas de provisão dinâmi a e de rejuvenes imento para
uma grande lasse de apli ações, não são onhe idos estudos que explorem os efeitos da
oexistên ia de tais sistemas atuando sobre a mesma apli ação. Cada um destes sistemas
vem sendo proposto de forma isolada e independente. De fato, sistemas de provisão
di-nâmi a não onsideram a possibilidade de falhas de software. Da mesma forma, sistemas
de rejuvenes imento não onsideram que a arga a que estas apli ações são submetidas
variasubstan ialmente, e queelas podemestar om umaprovisãolimitadade re ursos em
diversos momentos.
Nosestudosini iaisdeste trabalho, umesquema deprovisãodinâmi ade re ursos para
apli ações de duas amadas foi experimentado e, surpreendentemente, observou-se que
mesmo quando mais re ursos eram providos para a apli ação, a qualidade de serviço da
apli ação permane ia baixa. Investigando mais profundamente, des obriu-se que a
apli- ação apresentava faltas de software. Sistemas de provisão dinâmi a usam funções que
rela ionam métri as de sistema ( arga, onsumo de re ursos omo CPU, et .) om o
nú-mero de máquinas a ser provido à apli ação. Porém, quando faltas de software leval à
pedidos, mas não se omportandomais de a ordo om as suas espe i ações. Ao asso iar
o esquema de provisão dinâmi a om um esquema de rejuvenes imento per ebeu-se uma
melhora na qualidadede serviço daapli ação geren iada, aomesmo tempo em que houve
umae onomia dere ursos, espe ialmentequando falhaserejuvenes imentos o orriam
(LO-PES; CIRNE;BRASILEIRO, 2004). Veri ou-se então que é possível e interessante que haja
uma olaboraçãoentre sistemasde provisãodinâmi ae de rejuvenes imento.
Analisandoaspesquisas já realizadasnão épossívelarmarseo omportamento
emer-gentedauniãosimplesdesistemasde provisãodinâmi ade re ursos ederejuvenes imento
onstruídos de forma independente será satisfatória no que diz respeito à qualidade de
serviço da apli açãoe ao usto de mantê-la.
Este trabalhopossibilita uma oexistên ia mais harmoniosa entre sistemasde provisão
dinâmi a e de rejuvenes imento, de forma que e-servi es sejam automati a e
simultanea-mente geren iados quanto a estes aspe tos. Situações em que a união simples de sistemas
de provisão dinâmi ade re ursos e de rejuvenes imento não é e iente, espe ialmente em
termos da qualidade de serviço da apli ação geren iada, foram identi adas e analisadas
(videCapítulo5). Parasolu ionartalproblema,foramelaboradasté ni asquevisam
oor-denar asaçõesde sistemasde provisãodinâmi ade re ursos ede rejuvenes imentoquando
atuam sobre uma mesma apli ação. Ao apli ar essas té ni as de oordenação observou-se
que em muitos enários a apli ação geren iada ofere eu melhor qualidade de serviço sem
a rés imo substan ialde usto (videCapítulo6). Estas té ni as permitemqueossistemas
legados de provisão dinâmi aede rejuvenes imentosejam reaproveitados.
1.2 Objetivos
1.2.1 Objetivos gerais
O objetivo deste trabalho é eviden iar a não ortogonalidade de DPS e RS e identi ar
uma oordenação adequada das ações destes sistemasde formaque eles possam olaborar
entre si. Umavez identi adastais olaborações, possibilita-seagerên ia automáti amais
e ientedee-servi esemdoisaspe tosdistintos: (i)adequara apa idadedetaisapli ações
àdemanda orrentee (ii)dete tare re uperar taisapli açõesde falhasde software através
No sentido de atingiro objetivo des ritoa ima, deniram-seas seguintes metas:
1. Cara terizar o omportamento emergente de sistemas de provisão dinâmi a de
re- ursos e sistemas de rejuvenes imento ao atuarem sobre uma mesma apli ação sem
oordenação. Neste sentido, pretende-se avaliar o impa to em termos de qualidade
de serviço e usto daapli ação, de seter um DPS e um RS atuando de forma
inde-pendentee simultâneasobre uma apli ação;
2. Elaborar té ni as de oordenação quepermitam olaboraçãoentre oDPS eo RS,de
formaa gerarum ter eirosistema apaz de geren iar um e-servi e mais e azmente.
Espera-sequeaatividade oordenadadosdoissistemasmelhoreaqualidadedeserviço
eminimizeo ustodemanteraapli açãogeren iadaemrelaçãoàqualidadedeserviço
e usto en ontrados quando não há oordenaçãoentre ossistemas;
3. Comparar, em termosde qualidadede serviço e de usto daapli ação, os resultados
do sistema oordenado om os resultados dos sistemas que atuam sem oordenação
entre ossistemas;
4. Realizar medições em um ambiente mais próximo do real om o objetivo de validar
as idéias prin ipaisdesta tese, bem omo validar o modelo de simulação utilizado;
5. Estudar a qualidadede serviço e o usto da apli açãogeren iada por um sistema de
provisãodinâmi aperfeitoeumsistemaderejuvenes imento omesem oordenação;
6. Identi ar analiti amente situações que indiquem quando a disponibilidade ou o
tempo de resposta da apli ação serão afetados devido ao rejuvenes imento de um
ou mais nós.
1.3 Metodologia
Ametodologiautilizadasegueumaabordagemde estudo omparativobaseado emmodelos
de omponentes. Sendo assim, esta metodologiaestá asso iada à apli açãode um modelo
baseado em omponentes. Este modelo pode ser omposto pelos seguintes omponentes
individuais:
•
Uma apli açãodotipo e-servi e;•
Um sistemade injeção de erros (SEIS - Software Error Inje tion System);•
Um sistemade provisãodinâmi a(DPS - Dynami Provisioning System);•
Um sistemade rejuvenes imento de software (RS- Rejuvenation System);•
Ummódulo a opladoaoDPSeaoRSquepermitea oordenação entre asatividades destes sistemas (Coord).Umavisãode altoníveldeste modelo en ontra-se na Figura1.1.
Figura 1.1: Visãode altonível domodelo baseado em omponentes
A apli ação, omo já men ionado, é um e-servi e. Esta apli açãoé exe utada em um
luster om
r(t)
nós noinstantet
om balan eamento de argas.OLGSenvia requisiçõesparaa apli açãode a ordo omalgum modelode arga. Cada
requisiçãore ebida pelaapli açãoindi aaquantidadede tempode serviçone essária para
servir arequisição.
Ossistemasde gerên ia(DPSeRS)formam, adaum, umlaçode ontrole. Mais
deta-lhes sobreestes sistemasserãoapresentadosnas seções2.1.2e2.2.4. Deformasimpli ada,
eles oletam informações que servem omo base para de isões de gerên ia. Enquanto o
DPS modi aa apa idade daapli açãoem termosde númerode nós utilizadosde a ordo
om a demanda atual, o RS prevê/dete ta e re upera a apli ação de falhasatravés de
re-juvenes imentos. Um omponentedaapli açãoqueestiversendorejuvenes ido permane e
indisponível, até que o rejuvenes imento se omplete. Estes sistemas podem ou não ter
ção de formaque osefeitos de faltasde software sejammodelados.
1.3.1 Composições do modelo
Foram estudadas quatro diferentes omposições do modelo. Em todas as omposições
o omponente LGS e a apli ação estão presentes. A seguir são apresentadas as quatro
omposições, omitindo-se o omponente LGS, quepermane e omesmo em todos os asos:
1. Composição AWoF+DPS. Esta omposição modela um e-servi e sem faltas de
soft-ware (Appli ation Without Faults - AWoF) que tem sua apa idade geren iada por
um sistema de provisão dinâmi a;
2. Composição AWF+RS.Esta omposição modelaum e-servi e omfaltasde software
(Appli ation With Faults - AWF) geren iado por um sistema de rejuvenes imento.
Comoo omponenteDPS nãoestá presentenesta omposição,haverá super-provisão
estáti a de re ursos;
3. ComposiçãoAWF+DPS+RS.Esta omposiçãoenglobatodosos omponentes,ex eto
o módulo oordenador Coord. Não existe omuni ação entre DPS e RS, isto é, eles
agem sobre a mesmaapli açãode formaindependente;
4. Composição AWF+DPS*RS. Esta omposição engloba todos os omponentes. Os
sistemas de provisão dinâmi a de re ursos e de rejuvenes imento se omuni am e
atuam sinergeti amentedevido à atuaçãodoCoord.
A omparaçãodosresultadosdediferentes omposições om onguraçõesansé
impor-tanteporque ofere esubsídiospararealizaroestudo proposto. A omposiçãoAWoF+DPS
pre isaserestudadaporqueindi aaqualidadede serviçodaapli açãoeo ustodemantê-la
quando o DPS atua sobre a infra-estruturadaapli açãoe falhasnão o orrem. Ao
ompa-rar estes resultados om osresultados obtidosaoanalisar a omposição AWF+DPS+RS é
possívelidenti arasperdasemtermosdequalidadedeserviçoe ustodevidoào orrên ia
de falhas e de rejuvenes imentos. Ao identi ar a qualidade de serviço e o usto da
apli- ação na omposição AWF+RS e omparar om os resultados obtidospara a omposição
AWF+DPS+RS identi am-se as perdas devido à atuaçãodo DPS em um ambiente om
falhas. Em resumo, as omposições AWoF+DPS e AWF+RS ofere em os limites
supe-riores de qualidade de serviço e inferiores de usto que são ne essários para que se possa
AWF+DPS*RS eAWF+DPS+RS pode-se identi aros ganhos advindos das té ni as de
oordenação. Para estas omparações, os resultados da omposição AWF+DPS+RS são
limites inferiores de qualidade de serviço e superioresde usto.
1.3.2 Métri as de interesse
Como já men ionado na sub-seção anterior, as omparações entre omposições diferentes
serão realizadas à luz de métri as de interesse. As métri as de interesse asso iadas à
metodologia estão rela ionadas à qualidade de serviço do e-servi e e ao usto de
exe utá-lo. Estas métri as forames olhidas porque assume-se que sistemas de gerên ia (in luindo
sistemasautomáti osde gerên ia)bus amatuarsobreaapli açãogeren iada(neste asoo
e-servi e) de talforma queesta ofereça a qualidade de serviço esperada pelomenor usto.
Métri as rela ionadas à qualidade de serviço
Em se tratando de e-servi es, que são tipi amente apli ações interativas, onsideram-se
importantes asseguintes métri as: disponibilidade (
A
) etempode resposta (R
).A disponibilidadede um e-servi e no intervalode tempo
(t − ∆t, t]
pode ser al ulada segundo a Equação 1.1. Nesta equação,S
eU
signi am, respe tivamente, a quantidade total de requisições pro essadas om su esso e om insu esso no intervalo de tempo emquestão.
A
=
S
S
+ U
(1.1)Uma requisiçãoé pro essada om su esso se ela for a eita para ser pro essada e, após
sera eita,seelaretornararespostaesperada. Napráti a,umarequisiçãodeumaapli ação
Web épro essada om su essosearesposta vier om ódigode resposta HTTP 200(OK).
Uma requisiçãonão épro essada omsu esso quandoela não éa eita paraser pro essada
ou quando ela é a eita, porém devido a algum erro no servidor a resposta é diferente da
esperada. Na práti a, uma requisição pode ser rejeitada, por exemplo, quando o servidor
está passando por um momento de sobre arga e não pode a eitá-la. Também é possível
que o servidor a eite pro essar a requisição, porém não onsiga realizá-la ompletamente
devido a algum erro interno. O ódigo de tais respostas é diferente do ódigo HTTP 200
de su esso.
Ostemposde resposta medidose usados nas avaliaçõesdas omposições onsideram o
Comométri ade ustoserá onsideradoonúmeromédiode nósativosemum determinado
intervalo de tempo. A partir deste valor, pode-se, por exemplo, omputar o preço que se
paga de fato pelos re ursos utilizados. Para tal, é pre iso multipli ar esse número médio
de nós ativos pelo usto dado em moeda porunidade de tempode manter um nóativo.
O DPS visa de idir por uma quantidade de nós que seja su iente para atender a
demanda daapli ação. Assim, medironúmeromédiodenós ativoses olhido peloDPS em
diferentes enários éuma interessantemétri a de omparação.
1.4 Seleção de té ni as de avaliação
Ametodologiaapresentadanaseçãoanteriorpodeserapli adaseguindo-sediferentes
té ni- asdeavaliação. Defato,ametodologiapropõequemodelosqueenglobemos omponentes
itados sejam omparados segundo as métri as de interesse. Em prin ípio, a metodologia
não está ligada a uma formaespe í a de té ni ade modelagem/avaliação. Assim,
quais-quer das té ni as aseguir podem ser usadas para implementar ametodologia:
•
Construção e avaliação de modelos analíti os;•
Construção e avaliação de modelos de simulação;•
Preparo eavaliação de experimentos de medição.De a ordo om (JAIN, 1991) ada uma destas té ni as tem suas vantagens e
desvanta-gens. É pre iso identi ar a que melhor se adequa ao estudo que se deseja realizar. Um
modelo é uma abstração, ou uma visão generalizada de um sistema real (MENASCE;
AL-MEIDA; DOWDY,2004). Sendoassim, qualquer modeloque não sejaopróprio sistemaalvo
de estudoouuma ópiaperfeitadomesmoéumasimpli açãodarealidade. Aquantidade
de detalhes presente em um modelo depende doobjetivoque sequer al ançaraoapli aro
modelo. Identi arum modeloque sejaútilaoobjetivoperseguidoe aomesmotempoque
seja o mais simplespossívelé um desao daatividade de modelagem.
Emgeral,modelos analíti os,paraserem tratáveismatemati amente, requeremmuitas
simpli açõese hipóteses, o que pode omprometer apre isão dos resultados. Simulações
podemtrazermaisdetalhes,e,porisso,estãotipi amentemaispróximasdarealidadequeos
modelos analíti os(JAIN, 1991). Apesar de seremtipi amenteosmodelosmais omplexos,
as medições experimentais nem sempregarantem resultados muito próximos darealidade,
mediçõesexperimentais podem ainda não reetir totalmentea realidade.
Aanálisematemáti atípi aindi ao omportamentodosistemaumavezqueeleal ança
o estado permanente(steady state). Normalmente, ela onsidera o regimepermanente dos
sistemas estudados, pois nesse regime a manipulação algébri a ne essária pode ser
om-plexa, mas ainda é tratável. Como exemplo, os sistemas nesse regime tendem a manter
o seu omportamento em torno de médias representativas. Porém quando se passa para
o estado transiente a manipulação algébri a é extremamente omplexa, hegando em
al-guns asos a nem ser possível. Falhas e re ongurações desviam o sistema do seu estado
permanente (HARVERKORT et al., 2001), levando-o a um estado transiente. A prin ípio,
a redita-se ser bastante omplexa a apli açãode análise matemáti anoâmbito desta
pes-quisa, uma vez que osistema a ser estudado apresenta pontos de re onguração - em que
mais oumenosre ursos são usados- epontos de regeneração-em que umoumais nós são
rejuvenes idos. Estes pontos de re onguração e regeneraçãoestão intimamenteligados à
arga re ebida peloe-servi e,que traz um nível amais de imprevisibilidadeein erteza ao
sistema omo um todo.
A realização apenas de experimentos também não se mostra adequada. Os
experi-mentos no ontexto deste trabalho são aros em termos de re ursos e de tempo. Seriam
ne essáriosre ursos dedi ados,quepudessemrepresentar osservidoresdedi adosdo entro
de dados. Alémdisso, ossistemassob estudopre isariam ser implementados,umavez que
não são en ontrados gratuitamente 2
ou não existem implementações disponíveis. Nestas
ondições, asexperimentações são aras em termos daquantidadede re ursos ne essários,
tempode implementaçãoetempoderealização. Varrerumgrandeespaçodepossibilidades
demandaria um enorme tempo.
Diantedoexposto,de idiu-senãooptarporapenasumtipodemodelo. Ummodelo
ana-líti ofoidesenvolvido omoobjetivode identi ar situaçõesem queaqualidadede serviço
da apli açãoédiminuídapor ontadaretirada de um oumais nós para rejuvenes imento.
O estudo omparativo foi realizado através do projeto, implementação e instan iação de
modelos de simulação. No âmbito desta pesquisa, as simulaçõessão interessantes pois: (i)
permitem que uma grande área do espaço de possibilidades seja estudada em um tempo
inferior ao ne essário aso experimentos reais estivessem sendo realizados e (ii) são mais
fa ilmente implementados que experimentos, uma vez que os sistemas reais que se deseja
estudarnãoestãofa ilmentea essíveis, ounãoexistem,tendoestesqueser implementados.
2
Épossívelen ontrarDPSs omer iais, omoporexemplo,oHPGlobalWorkloadManager
delos. Esta avaliaçãodo modelo érealizadaem dois passos. Um dos passos é investigarse
a implementaçãodomodelo está orreta. Esta etapa hama-se veri ação (JAIN, 1991). O
outro é identi ar se as hipóteses e simpli ações do modelo são razoáveis. Este pro esso
hama-se validação(JAIN, 1991). Omodelode simulaçãopre isa ser validado om um
ou-tro modelo. Este outromodelo, é,neste aso, um modelo demedição, muito mais próximo
do sistema real. Este não é o sistema real, pois o sistema real está em um ambiente real
de entro de dados, om apli ações reais e argas reais. O modelo de medição foi
ogani-zado em um ambiente de testes ontrolado. Com este objetivo, experimentos de medição
foram realizados e osresultados omparados om osresultados obtidosatravés domodelo
de simulação.
1.5 Contribuições
Em linhasgerais, as ontribuiçõesdesta tese são as seguintes: 1) estudode problemas que
o orrem quando sistemas de provisão dinâmi a e de rejuvenes imento atuam sobre uma
mesmaapli açãosem oordenação. Talestudoestáapresentado noCapítulo5;2)aumento
do nível de autonomia de apli ações dotipoe-servi e através das té ni as de oordenação
propostas. As té ni as e os resultados experimentais são apresentados no Capítulo 6; 3)
utilizaçãodemetodologiaprópriaparaestudodeinteraçõese oordenaçõesentreasaçõesde
sistemasdegerên iaqueatuamsobreummesmoalvo. Talmetodologiaéapresentadaainda
neste apítulo;4)estudoanalíti ode situaçõesemqueorejuvene imentoafetaaqualidade
de serviço da apli ação (vide Capítulo 3) e 5) identi ação de araterísti as bené as à
provisão dinâmi a de re ursos e rejuvenes imento de software. Esta identi ação se deu
atravésde projetos experimentais, des ritos noApêndi eA.
1.6 Organização do do umento
O restante deste do umentoestá organizado omo segue.
NoCapítulo2 apresentam-se ara terísti asimportantes de sistemas de provisão
dinâ-mi a de re ursos e de rejuvenes imento eo estado daarte nestasáreas de pesquisa. Além
disso, são também apresentados outros trabalhos que, assim omo este, visam estudar
in-terações entre sistemas de ontrole/gerên ia que atuam sobre um mesmo alvo. À luz do
estado da arte, des reve-se, ainda no Capítulo 2, o problema que se deseja resolver neste
o rejuvenes imento prejudi a aqualidade de serviço daapli ação em termos de
disponibi-lidade e tempo de resposta.
UmmodelodesimulaçãoéapresentadonoCapítulo4. NoApêndi eAsãoapresentados
diversosresultadosde projetosexperimentaisrealizadosutilizando-seestemodelo. Através
destes projetosfoi possível identi ar osparâmetrosque maisinuen iam osresultados de
disponibilidade daapli açãogeren iada.
No Capítulo 5 o modelo de simulação é instan iado e diversos enários são analisados
om ointuitode investigarse sistemasde provisãodinâmi aede rejuvenes imento
oexis-tem harmoni amenteaogeren iar amesmaapli ação. Observou-se emdiversases alasque
auniãopuradestessistemasnãoée ienteemtermosde qualidadedeserviçodaapli ação.
No Capítulo 6 té ni as de oordenação entre DPS e RS são propostas e os resultados
de qualidade de serviço e usto daapli ação geren iada obtidosatravés de simulações são
analisados.
Omodelodesimulaçãousadonos apítulosanterioresfoivalidadoatravésde
experimen-tos de medição e veri ado através de testes de unidade e testes de limites. Os resultados
são apresentados noCapítuloD.
Finalmente,noCapítulo7sãoapresentadasas on lusõese ontribuiçõesdestetrabalho,
Revisão da literatura rela ionada
Neste apítulo dis utem-se trabalhos rela ionados em três áreas mais relevantes para esta
pesquisa: alo açãodinâmi adere ursos, rejuvenes imentode software esistemasde
diver-sos tiposque interageme/ou olaboram entre si.
2.1 A alo ação dinâmi a de re ursos
O desejo de a omodar as variações de arga sofridas pelos e-servi es não é novo. Os
sistemas de provisão dinâmi a de re ursos surgiram para solu ionar este problema da
va-riabilidade de arga. Tradi ionalmente, isto vem sendo feito através dasuper-provisão de
re ursos (GRIBBLE, 2001; EJASENT, 2001). Para que a super-provisão seja realizada é
ne- essário determinar a quantidade de re ursos ne essária para atender a demanda máxima
daapli açãoe alo arestati amenteesta quantidadede re ursospara aapli ação. A
super-provisãoé ara,poisemgrandepartedotempoosre ursos amsub-utilizados(EJASENT,
2001). Alémdisso,asuper-provisãopodenãosere az,umavezquenemsempreépossível
prever orretamente a arga máxima futura de uma apli ação.
Os sistemas de provisão dinâmi a de re ursos lidam om a alo ação de re ursos
dina-mi amente, permitindo que os re ursos sejam alo ados sob demanda. Assim, os re ursos
são usados de forma mais e iente, isto é, são menos sub-utilizados. As apli ações alvo
dos sistemas de provisão dinâmi a de re ursos são tipi amente e-servi es; espe ialmente
aqueles a essíveis viaInternet.
Os e-servi es possuem geralmente lientes distribuídos e o uxo de requisições destes
lientesque heganoladoservidorébastantevariável. A argare ebidaporapli açõesWeb
e de omér io eletrni o, por exemplo, tem esse omportamento (CROVELLA;BESTAVROS,
RO-semelhanças entre um pedaço de uma arga Web e oseu todo. Istoo orreporque argas
Web apresentam variações em todas as es alas de tempo em que são observadas
(CRO-VELLA; BESTAVROS,1996).
As argas de apli ações de omér io eletrni o também apresentam invariantes
se-melhantes às en ontradas nas argas Web de onteúdo estáti o puro (MENASCÉ et al.,
2000, 2003). Arlittet al estudaram a es alabilidadede uma grande apli açãode omér io
eletrni o (ARLITT; KRISHNAMURTHY; ROLIA, 2001). Eles identi aram que a arga da
apli ação estudada hega a ser nove vezes maior no horário de pi o em relação ao
horá-rio de menor arga. Todos os estudos de argas - sejam Web puras, sejam argas que
envolvem a re uperação de onteúdos dinâmi os - sugerem que a quantidade de trabalho
requeridapelos lientes deuma apli açãovariabastantedea ordo om otempoetambém
dependedeoutrasquestõessubjetivas omo,porexemplo,promoções,propagandas,dentre
outras. Assim, a quantidade de re ursos ne essária para que este trabalho seja realizado
também pode variarpara mais oupara menos, justi ando emotivandoo uso de sistemas
de provisãodinâmi ade re ursos.
Para ser provida de re ursos dinami amente, uma apli ação pre isa ser es alável. Os
e-servi essão ditoses aláveisporque épossívelaumentar ediminuirsua apa idade,sema
ne essidade de interromperaapli ação. Umaapli açãoé es alávelquando sua apa idade
de serviço aumenta previsivelmente à medida em que a quantidade de re ursos edida à
apli açãoaumenta.
Existem duas formas distintas de aumentar a apa idade de uma apli ação. Quando
re ursos (mais memória,porexemplo) são adi ionados aum mesmo nódiz-se que háuma
es alabilidade verti al. A es alabilidade horizontal o orre quando mais nós são ativados
para exe utar a apli ação. e-servi es são es aláveistanto verti al quantohorizontalmente.
Sãoverti almentees aláveispois,aodete targargalosemumnó, épossívelaumentara
quantidadeoupoderde ertore urso,aumentandoa apa idadedaapli ação. Porexemplo,
ao adi ionar mais memória em um servidor Web Apa he pode-se aumentar a quantidade
de requisiçõesatendidas simultaneamentepeloservidor sem perda de desempenho. Como
e-servi es são tipi amente exe utados em luster om balan eamento de arga, então ao
adi ionar mais nós aumenta-se a apa idade da apli ação. Em ambosos asos o aumento
da apa idadenão requer modi açõesno ódigo daapli ação.
Diantedoexposto, osurgimentode sistemasde provisãodinâmi ade re ursos pode ser
vista omo uma evolução natural e e iente da gerên ia de apa idade de e-servi es. Os
seja virtualizado de forma que se possa mudar as quantidades de re ursos nas máquinas
virtuais fa ilmente.
2.1.1 Atividades que ompõem a alo ação dinâmi a de re ursos
A alo ação dinâmi ade re ursos em entros de dados envolve uma série de atividadesque
se omplementam. Em um entro de dados é possível que diversas apli ações diferentes
estejam sendo exe utadas, todas ompetindopelos mesmos re ursos. Pesquisas nesta área
podem envolver uma oumais das atividades listadasa seguir e ilustradasnaFigura2.1:
1. De idir sobre a quantidade de re ursos a ser edida a uma apli ação ao longo do
tempo. Esta atividade é realizada por sistemas espe í os ligados à apli ação,
pre-parados para monitorar a apli açãoe de idirsobre sua provisão de re ursos (CHASE
et al., 2001; RANJAN et al., 2002; DOYLE et al., 2003; LASSETTREet al., 2003; ROLIA
et al., 2003b; CHANDRA;GONG; SHENOY, 2003b; URGAONKARet al., 2005; BENNANI;
MENASCE, 2005). Nesta proposta de tese, taissistemassão hamados de sistemas de
provisãodinâmi ade re ursos (DPS- Dynami Provisioning System). Na Figura2.1
sãoapresentados in osistemasdeprovisãodinâmi a: DPS-A,DPS-B,DPS-C,
DPS-D e DPS-E. Tais sistemas representam, respe tivamente, as apli açõesA, B, C D e
E nosistema global de alo ação dinâmi a;
2. De idir sobre a eitar ou não pedidos de re ursos individuais de ada apli ação. É
fa tívelquediversasapli açõesestejam ompetindopelos re ursos doambiente
om-puta ional, e, neste aso, deve existir um gerente global dos re ursos (ilustradopor
umretângulonaFigura2.1)quede idequepedidosporre ursosserãoa eitos(CHASE
etal.,2001;BYDE;SALLE;BARTOLINI,2003;ROLIAetal.,2003b;BENNANI;MENASCE,
2005);
3. Controlaraadmissãodenovasapli ações(representadonaFigura2.1porumaelipse).
Esta tarefa também é realizada por uma entidade de gerên ia de re ursos global.
Um ambiente de omputação sob demanda pode ser bastante dinâmi o no que diz
respeito às apli ações em exe ução neste ambiente em ada instante de tempo. É
possível que apli ações antigas não mais sejam pro essadas e que novas apli ações
sejam submetidas. Assim, é ne essária a realização de ontrole de admissão para
evitarqueosre ursosdoambiente omputa ionalsetorneminsu ientesparaatender
a demanda de todas as apli ações (ROLIAet al., 2003a, 2003b; ROLIA;ZHU;ARLITT,
ções. De isões de alo ação de re ursos irão requerer re ongurações de topologia
dos re ursos, instalação e onguração de software em tais re ursos, dentre outras
atividades. Osambientes virtuaisem queasapli açõessão exe utadas pre isam
pas-sar pormodi ações. Estas modi açõessão realizadas por atuadorese, idealmente,
não interrompem as apli ações e não ne essitam da parti ipação de operadores
hu-manos (ROLIA; SINGHAL; FRIEDRICH, 2000; APPLEBYet al., 2001; GOLDSACK et al.,
2003). Um atuadorestá representado naFigura 2.1 por um pentágono.
Figura2.1: Componentes dosistema globalde alo açãodinâmi a de re ursos
Os sistemas de provisão dinâmi a de re ursos (item 1) ompõem um dos objetos de
estudo desta proposta de tese. Assim, norestantedesta seção apenas este omponente do
sistema global de alo ação dinâmi ade re ursos será tratado.
2.1.2 Sistemas de provisão dinâmi a de re ursos
Todosistemadeprovisãodinâmi aestá alibradoparade idirarespeitodamelhoralo ação
dere ursosparaumadadaapli ação. Sistemasdeprovisãodinâmi adere ursosgeralmente
formam um laço de ontrole de realimentação (feedba k ontrol loop) semelhante ao