5.3 Análise Prática do Provisionamento Reativo
5.3.1 Objetivos conflitantes e desempenho do provisionamento
O trade-off entre os objetivos de provisionamento fica evidente ao analisar o provisiona- mento reativo considerando diferentes configurações de limiares. Foram simulados cenários de provisionamento com limiares de adição de VMs variando de 20% a 90%, em passos de 10%, e com limiares de remoção variando de 10% a 80%, também em passos de 10%, para ambas as métricas de provisionamento consideradas 4. Desta forma, o simulador foi
configurado com cada um dos pares possíveis de configuração de limiares de adição e re- moção, formando um experimento fatorial completo com remoção de cenários inválidos de configuração de limiares. Além disso, as ações de provisionamento foram configuradas para adicionar ou remover 1 VM por operação5, uma vez que essa mostrou-se ser a configuração,
de quantidade de VMs provisionadas, predominante no provisionamento reativo perfeito das aplicações consideradas.
O desempenho em termos do número de violações de SLO foi computado como sendo o percentual de intervalos de tempo em que o nível de utilização da infraestrutura atingiu o limite de 100%, para ambas as métricas observadas. Enquanto que o custo é definido pela quantidade de horas-máquina (VMs) utilizadas para executar a aplicação ao longo do tempo, comparado com os custos apresentados pelos cenários base de provisionamento perfeito, abordado na seção anterior, e de super provisionamento estático perfeito. No processo de simulação, com o intuito de respeitar o tempo de provisionamento horizontal e para estar
4Limiares de adição são sempre configurados com valores maiores que os dos limiares de remoção.
em conformidade com a periodicidade dos dados de utilização considerados, assume-se que ações de provisionamento necessitam de um tempo de provisionamento de 5 minutos para serem efetivadas. Desta forma, cada ação de provisionamento disparada no intervalo de tempo t só estará operacional, executando a aplicação, no início do intervalo de tempo t + 1 intervalo.
As Figuras 5.7 e 5.8 apresentam os resultados de desempenho das configurações de pro- visionamento para o provisionamento reativo baseado individualmente em CPU e memória, respectivamente. Os gráficos apresentam o desempenho das configurações em termos do percentual de violações de SLO e do custo do serviço relativo aos cenários base. Em relação ao cenário super provido, custos negativos correspondem a economias de custo por parte do provisionamento reativo simulado. No eixo X são apresentados os limiares de adição usados nas simulações e as cores de cada barra indicam os limiares de remoção considerados (ver as legendas acima do gráfico).
Figura 5.7: Desempenho da abordagem de provisionamento reativo baseada em utilização de CPU em termos do custo de provisiona- mento e do percentual de violações de SLO.
O trade-off fica evidente nos resultados para as duas métricas de provisionamento: para os menores limiares de adição e remoção tem-se os maiores custos e consequentemente os menores percentuais de violações de SLO. E o oposto também é visto, os maiores limiares de adição e remoção conduzem aos menores custos e a maiores percentuais de violações de SLO. Evidentemente, ao controlar-se esses limiares controla-se indiretamente a quantidade aceitável de violações de SLO e o custo aceitável a ser pago. Esse trade-off é mais acentu- ado para o provisionamento baseado em CPU, com potencialização extrema dos objetivos de provisionamento, a exemplo das configurações de limiares de adição em 20% e 90%. No pri- meiro caso, os custos chegam a ser 400% superiores aos apresentados pelo provisionamento perfeito com uma ocorrência mínima de violações de SLO, próximas de 0%. Enquanto que para o segundo caso, os custos aproximam-se aos praticados pelo provisionamento perfeito com ônus de percentuais significativos de violações de SLO, com valor mediano em torno de 5% de violações para o caso mais extremo.
Por outro lado, para o provisionamento baseado em memória, essa relação entre obje- tivos é menos evidente, devido à baixa sensibilidade do percentual de violações em função de mudanças nos limiares de provisionamento considerados. Mesmo para o cenário mais conservador em termos de custo (limares de adição em 90%), o percentual mediano de vio- lações de SLO para o caso mais extremo é de aproximadamente 0.45%, enquanto que para o cenário menos conservador de custo (limiares de adição em 20%) as violações de SLO não ocorrem no provisionamento de 80% das aplicações. Para o provisionamento baseado em memória, apenas os custos mostram-se sensíveis à configuração dos limiares, com valores médios de elevação do custo em relação ao provisionamento perfeito extremando entre algo em torno de 425% a 18%, respectivamente da configuração de menor para a de maior limiar de adição. Acredita-se que isso seja decorrente do perfil de variabilidade da carga de trabalho de memória, que apresenta baixa variação entre percentuais de utilização do recurso.
Apesar da baixa sensibilidade do número de violações de SLO no provisionamento ba- seado em memória a mudanças nas configurações dos limiares de provisionamento, no geral essa relação de controle da configuração de limiares sobre o desempenho da abordagem de provisionamento é presente para as duas métricas de provisionamento observadas. Contudo, resta observar o nível de controle que pode ser obtido através dessas configurações e o quão aplicável é esse controle para manifestar os limites de desempenho desejados para o provisi-
Figura 5.8: Desempenho da abordagem de provisionamento reativo baseada em utilização de memória em termos do custo de provisiona- mento e do percentual de violações de SLO.
onamento, em termos de custo de provisionamento e QoS da aplicação em execução.