SelfElastic: Combinando Elasticidade Reativa e Proativa para Aplicações de Alto Desempenho
Resumo
A elasticidade em nuvem pode trazer benefícios para a área de Computação de Alto Desempenho, como uma melhor utilização de recursos e redução do tempo de execução de aplicações. As abordagens mais comuns utilizam elasticidade reativa baseada em thresholds ou elasticidade proativa, a qual pode ser muito custosa computacionalmente. Ambas apresentam pelo menos um problema relacionado à necessidade de experiência prévia do usuário, parametrizações prévias ou modelagem para configurações de cargas de trabalho e infraestruturas específicas. Neste contexto, este trabalho apresenta SelfElastic um modelo híbrido de elasticidade cuja a arquitetura possui um ciclo fechado de controle que adapta em tempo de execução os valores dos thresholds. Baseado em SelfElastic, foi construído um protótipo que apresentou resultados promissores em termos de tempo de execução e custo quando comparado à execuções não elásticas.Referências
Beernaert, L., Matos, M., Vilaça, R., and Oliveira, R. (2012). Automatic elasticity in Openstack. In Proceedings of the Workshop on Secure and Dependable Middleware for Cloud Monitoring and Management, SDMCMM '12, pages 2:1–2:6, New York, NY, USA. ACM.
Chiu, D. and Agrawal, G. (2010). Evaluating caching and storage options on the Amazon Web Services cloud. In Grid Computing (GRID), 2010 11th IEEE/ACM Int. Conf. on, pages 17–24. IEEE.
Comanescu, M. (2012). Implementation of time-varying observers used in direct eld orientation of motor drives by trapezoidal integration. In Power Electronics, Machines and Drives (PEMD 2012), 6th IET Int. Conf. on, pages 1–6. IET. Copil, G., Moldovan, D., Truong, H.-L., and Dustdar, S. (2013). Sybl: An extensible language for controlling elasticity in cloud applications. In Cluster, Cloud and Grid Computing (CCGrid), 2013 13th IEEE/ACM Int. Symposium on, pages 112–119. IEEE.
Dustdar, S., Gambi, A., Krenn, W., and Nickovic, D. (2015). A pattern-based formalization of cloud-based elastic systems. In Proceedings of the Seventh Int. Workshop on Principles of Engineering Service-Oriented and Cloud Systems, PESOS '15, pages 31–37, Piscataway, NJ, USA. IEEE Press.
Farokhi, S., Jamshidi, P., Brandic, I., and Elmroth, E. (2015). Self-adaptation challenges for cloud-based applications : A control theoretic perspective. In 10th Int. Workshop on Feedback Computing (Feedback Computing 2015). ACM.
Herbst, N. R., Kounev, S., Weber, A., and Groenda, H. (2015). Bungee: An elasticity benchmark for self-adaptive IaaS cloud environments. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 46–56, Piscataway, NJ, USA. IEEE Press.
Imai, S., Chestna, T., and Varela, C. A. (2012). Elastic scalable cloud computing using application-level migration. In Proceedings of the 2012 IEEE/ACM Fifth Int. Conf. on Utility and Cloud Computing, UCC '12, pages 91–98, Washington, DC, USA. IEEE Computer Society.
Jackson, K. R., Ramakrishnan, L., Muriki, K., Canon, S., Cholia, S., Shalf, J., Wasserman, H. J., and Wright, N. J. (2010). Performance analysis of high performance computing applications on the Amazon Web Services cloud. In Proceedings of the 2010 IEEE Second Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '10, pages 159–168, Washington, DC, USA. IEEE Computer Society.
Lorido-Botran, T., Miguel-Alonso, J., and Lozano, J. (2014). A review of autoscaling techniques for elastic applications in cloud environments. Journal of Grid Computing, 12(4):559–592.
Mariani, S., Truong, H.-L., Copil, G., Omicini, A., and Dustdar, S. (2014). Coordination-aware elasticity. In 7th IEEE/ACM Int. Conf. on Utility and Cloud Computing (UCC 2014), pages 56–63, London, UK. IEEE Computer Society. Netto, M. A. S., Cardonha, C., Cunha, R. L. F., and Assuncao, M. D. (2014). Evaluating auto-scaling strategies for cloud computing environments. In IEEE 22nd Int. Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems, MASCOTS 2014, Paris, France, September 9-11, 2014, pages 187–196. IEEE.
Nikravesh, A. Y., Ajila, S. A., and Lung, C.-H. (2015). Towards an autonomic autoscaling prediction system for cloud resource provisioning. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 35–45, Piscataway, NJ, USA. IEEE Press.
Rajan, D., Canino, A., Izaguirre, J. A., and Thain, D. (2011). Converting a high performance application to an elastic cloud application. In Proceedings of the 2011 IEEE Third Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '11, pages 383–390, Washington, DC, USA. IEEE Computer Society.
Raveendran, A., Bicer, T., and Agrawal, G. (2011). A framework for elastic execution of existing MPI programs. In Proceedings of the 2011 IEEE Int. Symposium on Parallel and Distributed Processing Workshops and PhD Forum, IPDPSW '11, pages 940–947, Washington, DC, USA. IEEE Computer Society.
Righi, R. d. R., Rodrigues, V. F., Costa, C. A. d., Galante, G., Bona, L. C. E. d., and Ferreto, T. (2016). Autoelastic: Automatic resource elasticity for high performance applications in the cloud. IEEE Transactions on Cloud Computing, 4(1):6–19.
Rolo, E., Birck, F., Diener, M., Carissimi, A., and Navaux, P. (2012). EvaluIn Cloud ating high performance computing on the Windows Azure platform. Computing (CLOUD), 2012 IEEE 5th Int. Conf. on, pages 803 –810. IEEE. Spinner, S., Kounev, S., Zhu, X., Lu, L., Uysal, M., Holler, A., and Grith, R. (2014). Runtime vertical scaling of virtualized applications via online model estimation. In Proceedings of the 2014 IEEE 8th Int. Conf. on Self-Adaptive and Self-Organizing Systems (SASO). IEEE.
Tanenbaum, A. (2003). Computer Networks. Prentice Hall PTR, Upper Saddle River, New Jersey, 4th edition.
Triantaphyllou, E. (2000). Multi-Criteria Decision Making Methodologies: A Comparative Study, volume 44 of Applied Optimization. Springer, Dordrecht.
Chiu, D. and Agrawal, G. (2010). Evaluating caching and storage options on the Amazon Web Services cloud. In Grid Computing (GRID), 2010 11th IEEE/ACM Int. Conf. on, pages 17–24. IEEE.
Comanescu, M. (2012). Implementation of time-varying observers used in direct eld orientation of motor drives by trapezoidal integration. In Power Electronics, Machines and Drives (PEMD 2012), 6th IET Int. Conf. on, pages 1–6. IET. Copil, G., Moldovan, D., Truong, H.-L., and Dustdar, S. (2013). Sybl: An extensible language for controlling elasticity in cloud applications. In Cluster, Cloud and Grid Computing (CCGrid), 2013 13th IEEE/ACM Int. Symposium on, pages 112–119. IEEE.
Dustdar, S., Gambi, A., Krenn, W., and Nickovic, D. (2015). A pattern-based formalization of cloud-based elastic systems. In Proceedings of the Seventh Int. Workshop on Principles of Engineering Service-Oriented and Cloud Systems, PESOS '15, pages 31–37, Piscataway, NJ, USA. IEEE Press.
Farokhi, S., Jamshidi, P., Brandic, I., and Elmroth, E. (2015). Self-adaptation challenges for cloud-based applications : A control theoretic perspective. In 10th Int. Workshop on Feedback Computing (Feedback Computing 2015). ACM.
Herbst, N. R., Kounev, S., Weber, A., and Groenda, H. (2015). Bungee: An elasticity benchmark for self-adaptive IaaS cloud environments. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 46–56, Piscataway, NJ, USA. IEEE Press.
Imai, S., Chestna, T., and Varela, C. A. (2012). Elastic scalable cloud computing using application-level migration. In Proceedings of the 2012 IEEE/ACM Fifth Int. Conf. on Utility and Cloud Computing, UCC '12, pages 91–98, Washington, DC, USA. IEEE Computer Society.
Jackson, K. R., Ramakrishnan, L., Muriki, K., Canon, S., Cholia, S., Shalf, J., Wasserman, H. J., and Wright, N. J. (2010). Performance analysis of high performance computing applications on the Amazon Web Services cloud. In Proceedings of the 2010 IEEE Second Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '10, pages 159–168, Washington, DC, USA. IEEE Computer Society.
Lorido-Botran, T., Miguel-Alonso, J., and Lozano, J. (2014). A review of autoscaling techniques for elastic applications in cloud environments. Journal of Grid Computing, 12(4):559–592.
Mariani, S., Truong, H.-L., Copil, G., Omicini, A., and Dustdar, S. (2014). Coordination-aware elasticity. In 7th IEEE/ACM Int. Conf. on Utility and Cloud Computing (UCC 2014), pages 56–63, London, UK. IEEE Computer Society. Netto, M. A. S., Cardonha, C., Cunha, R. L. F., and Assuncao, M. D. (2014). Evaluating auto-scaling strategies for cloud computing environments. In IEEE 22nd Int. Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems, MASCOTS 2014, Paris, France, September 9-11, 2014, pages 187–196. IEEE.
Nikravesh, A. Y., Ajila, S. A., and Lung, C.-H. (2015). Towards an autonomic autoscaling prediction system for cloud resource provisioning. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 35–45, Piscataway, NJ, USA. IEEE Press.
Rajan, D., Canino, A., Izaguirre, J. A., and Thain, D. (2011). Converting a high performance application to an elastic cloud application. In Proceedings of the 2011 IEEE Third Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '11, pages 383–390, Washington, DC, USA. IEEE Computer Society.
Raveendran, A., Bicer, T., and Agrawal, G. (2011). A framework for elastic execution of existing MPI programs. In Proceedings of the 2011 IEEE Int. Symposium on Parallel and Distributed Processing Workshops and PhD Forum, IPDPSW '11, pages 940–947, Washington, DC, USA. IEEE Computer Society.
Righi, R. d. R., Rodrigues, V. F., Costa, C. A. d., Galante, G., Bona, L. C. E. d., and Ferreto, T. (2016). Autoelastic: Automatic resource elasticity for high performance applications in the cloud. IEEE Transactions on Cloud Computing, 4(1):6–19.
Rolo, E., Birck, F., Diener, M., Carissimi, A., and Navaux, P. (2012). EvaluIn Cloud ating high performance computing on the Windows Azure platform. Computing (CLOUD), 2012 IEEE 5th Int. Conf. on, pages 803 –810. IEEE. Spinner, S., Kounev, S., Zhu, X., Lu, L., Uysal, M., Holler, A., and Grith, R. (2014). Runtime vertical scaling of virtualized applications via online model estimation. In Proceedings of the 2014 IEEE 8th Int. Conf. on Self-Adaptive and Self-Organizing Systems (SASO). IEEE.
Tanenbaum, A. (2003). Computer Networks. Prentice Hall PTR, Upper Saddle River, New Jersey, 4th edition.
Triantaphyllou, E. (2000). Multi-Criteria Decision Making Methodologies: A Comparative Study, volume 44 of Applied Optimization. Springer, Dordrecht.
Publicado
05/10/2016
Como Citar
RODRIGUES, Vinicius; ROSTIROLLA, Gustavo; RIGHT, Rodrigo; COSTA, Cristiano.
SelfElastic: Combinando Elasticidade Reativa e Proativa para Aplicações de Alto Desempenho. In: SIMPÓSIO EM SISTEMAS COMPUTACIONAIS DE ALTO DESEMPENHO (SSCAD), 17. , 2016, Aracajú.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2016
.
p. 25-36.
DOI: https://doi.org/10.5753/wscad.2016.14245.