Dissertação

{en_GB=A machine learning approach to predict Virtual Machine Workload} {} EVALUATED

{pt=Cada vez mais as empresas estao a migrar para a cloud devido ˜ as v ` arias vantagens que a cloud ´ oferece, como a elasticidade. Elasticidade permite que as empresas adquiram ou libertem recursos computacionais com base nas suas necessidades, sem intervenc¸ao humana, com a ajuda do mecan- ˜ ismo de auto-scaler. O mecanismo mais comum e o auto-scaler reativo que ´ e muito limitado e por vezes ´ ineficaz, uma vez que o SLA e violado e os recursos s ´ ao subutilizados. A alternativa ˜ e o auto-scaler ´ preditivo que preve qual o workload futuro das VMs, de forma a estarem preparadas antes dos pedidos ˆ ocorrerem. Microsoft Azure e Google Cloud nao fornecem esta ferramenta e somente recentemente ˜ e que a Amazon AWS o fez. Uma vez que n ´ ao h ˜ a uma maneira concreta nem certa de prever qual ´ o workload das VMs, principalmente porque os algoritmos de aprendizagem funcionam melhor em um conjunto de condic¸oes e mal noutro, a soluc¸ ˜ ao proposta visa verificar se a combinac¸ ˜ ao de tr ˜ es algorit- ˆ mos de aprendizagem diferentes (ARIMA, LSTM e Random Forest) conseguem prever o workload das VM, em termos de metrica de CPU, melhor do que cada um dos algoritmos individualmente. Os re- ´ sultados comprovaram que a combinac¸ao dos algoritmos, em tr ˜ es estrat ˆ egias diferentes, proporcionou ´ melhores resultados do que em cada um dos algoritmos individualmente. , en=More companies have been moving to the cloud recently, due to the several advantages that cloud provides such as elasticity. Elasticity allows companies to acquire or release computational resources based on their needs, without human intervention, with the help of the auto-scaler mechanism. The most common one is the reactive auto-scaler which is very limited and sometimes ineffective since SLA are violated and resources are underutilized. The alternative is the predictive auto-scaler that forecasts the workload of VMs in order to be prepared before the demand occurs. Microsoft Azure and Google Cloud don’t provide this tool and only recently Amazon AWS did. Since there isn’t a concrete and right way of predicting the workload of Virtual Machines, mostly because machine learning algorithms work better in a set of conditions and poorly on others, the proposed solution aims to verify if the combination of three different machine learning algorithm (ARIMA, LSTM and Random Forest) can forecast the VM workload, in terms of CPU metric, better than each of the individually algorithms. The results have proved that the combination of the algorithms, in three different strategies, provided better results than each of the individual algorithms}
{pt=Maquinas Virtuais, Predição da demanda, Aprendizagem de Máquina, CPU, en=Virtual Machine, Workload Prediction, Machine Learning, CPU.}

Janeiro 18, 2021, 9:0

Orientação

ORIENTADOR

André Ferreira Ferrão Couto e Vasconcelos

Departamento de Engenharia Informática (DEI)

Professor Auxiliar