Abstract
Cloud Computing has been successful in providing substantial amounts of resources to deploy scalable and highly available applications. However, there is a growing necessity of lower latency services and cheap bandwidth access to accommodate the expansion of IoT and other applications that reside at the internet’s edge. The development of community networks and volunteer computing, together with the today’s low cost of compute and storage devices, is making the internet’s edge filled with a large amount of still underutilized resources. Due to this, new computing paradigms like Edge Computing and Fog Computing are emerging. This work presents Caravela a Docker’s container orchestrator that utilizes volunteer edge resources from users to build an Edge Cloud where it is possible to deploy applications using standard Docker containers. Current cloud solutions are mostly tied to a centralized cluster environment deployment. Caravela employs a completely decentralized architecture, resource discovery and scheduling algorithms to cope with (1) the large amount of volunteer devices, volatile environment, (2) wide area networks that connects the devices and (3) nonexistent natural central administration.
Similar content being viewed by others
References
Anderson, D.P., Cobb, J., Korpela, E., Lebofsky, M., Werthimer, D.: SETI@Home: an experiment in public-resource computing. Commun. ACM 45(11), 56–61 (2002). https://doi.org/10.1145/581571.581573
Apolónia, N., Ferreira, P., Veiga, L.: Trans-social networks for distributed processing. In: Bestak, R., Kencl, L., Li, L.E., Widmer, J., Yin, H. (eds.) Networking 2012 - 11th International IFIP TC 6 Networking Conference, Prague, Czech Republic, May 21-25, 2012, Proceedings, Part I, Lecture Notes in Computer Science, vol. 7289, pp 82–96. Springer (2012). https://doi.org/10.1007/978-3-642-30045-5_7
Apolónia, N., Freitag, F., Navarro, L., Girdzijauskas, S.: Socially aware microcloud service overlay optimization in community networks. Softw. Pract. Exp. 50(5), 675–687 (2020). https://doi.org/10.1002/spe.2750
Babaoglu, O., Marzolla, M., Tamburini, M.: Design and implementation of a P2P Cloud system. In: Proceedings of the 27th Annual ACM Symposium on Applied Computing - SAC ’12, p 412 (2012). https://doi.org/10.1145/2245276.2245357
Baig, R., Roca, R., Freitag, F., Navarro, L.: Guifi.net, a crowdsourced network infrastructure held in common. Comput. Netw. https://doi.org/10.1016/j.comnet.2015.07.009 (2015)
Benet, J.: IPFS-Content Addressed, Versioned, P2P File System. IPFS-Content Addressed, Versioned, P2P File System (Draft 3). https://doi.org/10.1109/ICPADS.2007.4447808 (2014)
Bittencourt, L., Immich, R., Sakellariou, R., Fonseca, N., Madeira, E., Curado, M., Villas, L., DaSilva, L., Lee, C., Rana, O.: The internet of things, fog and cloud continuum: Integration and challenges. Int. Things 3-4, 134–155 (2018). https://doi.org/10.1016/j.iot.2018.09.005. http://www.sciencedirect.com/science/article/pii/S2542660518300635
Bonomi, F., Milito, R., Zhu, J., Addepalli, S.: Fog computing and its role in the internet of things. In: Proceedings of the first edition of the MCC workshop on Mobile cloud computing - MCC ’12, p 13 (2012). https://doi.org/10.1145/2342509.2342513
Cardosa, M., Chandra, A.: Resource bundles: Using aggregation for statistical large-scale resource discovery and management. IEEE Trans. Parall. Distribut. Syst. 21(8), 1089–1102 (2010). https://doi.org/10.1109/TPDS.2009.143
Castro, P., Ishakian, V., Muthusamy, V., Slominski, A.: The rise of serverless computing. Commun. ACM 62(12), 44–54 (2019). https://doi.org/10.1145/3368454
Chang, H., Hari, A., Mukherjee, S., Lakshman, T.V.: Bringing the cloud to the edge. In: Proceedings - IEEE INFOCOM, pp 346–351 (2014). https://doi.org/10.1109/INFCOMW.2014.6849256
Cisco Systems: Fog Computing and the Internet of Things: Extend the Cloud to Where the Things Are. White Paper p. 6 (2016). https://doi.org/10.1109/HotWeb.2015.22. http://www.cisco.com/c/dam/en_us/solutions/trends/iot/docs/computing-overview.pdf
Cunsolo, V.D., Distefano, S., Puliafito, A., Scarpa, M. Huang, D.S., Jo, K.H., Lee, H.H., Kang, H.J., Bevilacqua, V. (eds.): Cloud@Home: Bridging the gap between volunteer and cloud computing. Springer, Berlin (2009)
Huedo, E., Montero, R.S., Moreno-Vozmediano, R., Vázquez, C., Holer, V., Llorente, I.M.: Opportunistic deployment of distributed edge clouds for latency-critical applications. J. Grid Comput. 19(1), 2 (2021). https://doi.org/10.1007/s10723-021-09545-3
Kabbinale, A.R., Dimogerontakis, E., Selimi, M., Ali, A., Navarro, L., Sathiaseelan, A., Crowcroft, J.: Blockchain for economically sustainable wireless mesh networks. Concurr. Comput. Pract. Exp. 32(12). https://doi.org/10.1002/cpe.5349 (2020)
Kargar, S., Mohammad-Khanli, L.: Fractal: An advanced multidimensional range query lookup protocol on nested rings for distributed systems. J. Netw. Comput. Appl. 87, 147–168 (2017). https://doi.org/10.1016/j.jnca.2017.03.021. http://www.sciencedirect.com/science/article/pii/S1084804517301303
Khan, A.M., Freitag, F., Rodrigues, L.: Current trends and future directions in community edge clouds. In: 2015 IEEE 4Th International Conference on Cloud Networking, Cloudnet 2015, pp 239–241 (2015). https://doi.org/10.1109/CloudNet.2015.7335315
Kochovski, P., Stankovski, V., Gec, S., Faticanti, F., Savi, M., Siracusa, D., Kum, S.: Smart contracts for service-level agreements in edge-to-cloud computing. J. Grid Comput. 18 (4), 673–690 (2020). https://doi.org/10.1007/s10723-020-09534-y
Mayer, P., Klarl, A., Hennicker, R., Puviani, M., Tiezzi, F., Pugliese, R., Keznikl, J., Bure, T.: The autonomic cloud: A vision of voluntary, Peer-2-Peer cloud computing. In: Proceedings - IEEE 7th International Conference on Self-Adaptation and Self-Organizing Systems Workshops, SASOW 2013, pp 89–94 (2014). https://doi.org/10.1109/SASOW.2013.16
Mell, P., Grance, T.: The NIST definition of cloud computing recommendations of the national institute of standards and technology. Nist Special Publication 145, 7 (2011). https://doi.org/10.1136/emj.2010.096966
Mohan, N., Kangasharju, J.: Edge-fog cloud: A distributed cloud for Internet of Things computations. 2016 Cloudification of the Internet of Things CIoT 2016. https://doi.org/10.1109/CIOT.2016.7872914 (2017)
Nakamoto, S.: Bitcoin: A Peer-to-Peer Electronic Cash System. www.bitcoin.org p. 9. https://doi.org/10.1007/s10838-008-9062-0 (2008)
Peinl, R., Holzschuher, F., Pfitzer, F.: Docker cluster management for the cloud - survey results and own solution. J. Grid Comput. 14(2), 265–282 (2016). https://doi.org/10.1007/s10723-016-9366-y
Pouwelse, J., Garbacki, P., Epema, D., Sips, H.: The Bittorrent P2P file-sharing system: measurements and analysis. In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 3640, pp 205–216. LNCS (2005). https://doi.org/10.1007/11558989_19
Ryden, M., Oh, K., Chandra, A., Weissman, J.: Nebula: Distributed edge cloud for data intensive computing. In: Proceedings - 2014 IEEE International Conference on Cloud Engineering, IC2E 2014, pp 57–66 (2014). https://doi.org/10.1109/IC2E.2014.34
Satyanarayanan, M., Bahl, P., Cáceres, R., Davies, N.: The case for VM-based cloudlets in mobile computing. IEEE Pervas. Comput. 8(4), 14–23 (2009). https://doi.org/10.1109/MPRV.2009.82
Selimi, M., Cerdà-Alabern, L., Freitag, F., Veiga, L., Sathiaseelan, A., Crowcroft, J.: A lightweight service placement approach for community network micro-clouds. J. Grid Comput. 17(1), 169–189 (2019). https://doi.org/10.1007/s10723-018-9437-3
Selimi, M., Cerda-Alabern, L., Sanchez-Artigas, M., Freitag, F., Veiga, L.: Practical service placement approach for microservices architecture. In: Proceedings - 2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, CCGRID 2017, pp 401–410 (2017). https://doi.org/10.1109/CCGRID.2017.28
Shi, W., Cao, J., Zhang, Q., Li, Y., Xu, L.: Edge computing: Vision and challenges. IEEE Int. Things J. 3(5), 637–646 (2016). https://doi.org/10.1109/JIOT.2016.2579198
Singh, S., Chana, I.: A survey on resource scheduling in cloud computing: Issues and challenges. J. Grid Comput. 14(2), 217–264 (2016). https://doi.org/10.1007/s10723-015-9359-2
Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup protocol for Internet applications. IEEE/ACM Trans. Netw. 11(1), 17–32 (2003). https://doi.org/10.1109/TNET.2002.808407
Vaquero, L.M., Rodero-Merino, L.: Finding your Way in the Fog: Towards a Comprehensive Definition of Fog Computing. ACM SIGCOMM Comput. Commun. Rev. 44(5), 27–32 (2014). https://doi.org/10.1145/2677046.2677052
Varghese, B., Buyya, R.: Next generation cloud computing: New trends and research directions. Future Gener. Comput. Syst. 79, 849–861 (2018). https://doi.org/10.1016/j.future.2017.09.020. http://www.sciencedirect.com/science/article/pii/S0167739X17302224
Verbelen, T., Simoens, P., Turck, F.D., Dhoedt, B.: Cloudlets : Bringing the cloud to the mobile user. In: Proceedings of the third ACM workshop on Mobile cloud computing and services, pp 29–36 (2012). https://doi.org/10.1145/2307849.2307858
Vishnumurthy, V., Chandrakumar, S., Emin, G.: Karma: a secure economic framework for peer-to-peer resource sharing. In: Workshop on Economics of Peer-to-peer Systems, p 34 (2003)
Yang, S., Butt, A.R., Fang, X., Hu, Y.C., Midkiff, S.P.: A fair, secure and trustworthy peer-to-peer based cycle-sharing system. J. Grid Comput. 4(3), 265–286 (2006). https://doi.org/10.1007/s10723-006-9039-3
Acknowledgements
This work was supported by national funds through Fundação para a Ciência e a Tecnologia with reference PTDC/EEI-COM/30644/2017 and UIDB/50021/2020, and by Instituto Superior de Engenharia de Lisboa and Instituto Politécnico de Lisboa.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Caravela (a.k.a Portuguese man o’war) is a colony of multi-cellular organisms that barely survive alone, so they need to work together to function like a single viable animal.
Rights and permissions
About this article
Cite this article
Pires, A., Simão, J. & Veiga, L. Distributed and Decentralized Orchestration of Containers on Edge Clouds. J Grid Computing 19, 36 (2021). https://doi.org/10.1007/s10723-021-09575-x
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s10723-021-09575-x