Abstract
Identifying the best application deployment to distribute application components in Fog infrastructures – spanning the IoT-to-Cloud continuum – is a challenging task for application deployers. Indeed, it requires fulfilling all application requirements, whilst determining a trade-off among different objectives (i.e., QoS assurance, Fog resource consumption and cost), resulting in a complex and time-consuming decision-making process to be tuned manually. In this paper, we present a simple multi-objective optimisation scheme that permits selecting the best placement of application components, balancing the trade-off among QoS-assurance, Fog resource consumption and monthly deployment costs. We exploit our prototype, extended with parallel Monte Carlo simulations, and a motivating example to show how IT experts can benefit from our approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Hereinafter, the word Things is used to refer to IoT devices, both sensors and actuators.
- 2.
Adapted from OpenStack Mitaka flavours: https://docs.openstack.org/.
- 3.
Arrows on the links in Fig. 1 indicate the upload direction.
- 4.
Arrows on the links in Fig. 2 indicate the upload direction.
- 5.
Satellite: https://www.eolo.it/, 3G/4G: https://www.agcom.it, VDSL: http://www.vodafone.it.
- 6.
- 7.
- 8.
When \(\updelta \) is not specified for a component \(\upgamma \) of A, \(\upgamma \) can be deployed to any compatible node in I.
- 9.
\(\textsf {FogTorch}\Pi \) permits to compute Fog resource consumption also on a specified subset of Fog nodes \(\overline{F} \subset F\).
- 10.
Cost computation is performed on-the-fly. This is done during the search step, considering the possibility to rely on the cost prediction as a heuristic to lead backtracking towards best candidate deployments.
- 11.
Bounded by the maximum amount purchasable from any chosen Cloud or Fog provider.
- 12.
€30 = 1 CPU \(\times \) €4/core + 1 GB RAM \(\times \) €6/GB + 20 GB HDD \(\times \) €1/GB.
- 13.
Other policies are also possible such as, for instance, selecting the largest offering that can accommodate a component, or always increasing the component’s requirements by some percentage (e.g., \(10\%\)) before selecting the matching.
- 14.
For the sake of simplicity, we assume here \(\upomega _i = \frac{1}{|F|} = \frac{1}{m}\), which can be tuned differently depending on the needs of the application operator.
- 15.
Results and Python code to generate 3D plots as in Figs. 4, 5 and 6 are available at: https://github.com/di-unipi-socc/FogTorchPI/tree/costmodel/results/SMARTBUILDING18/.
- 16.
By tuning \(\upomega _i\) differently and by considering the Cloud-ward case, we can obtain the same results of [9], e.g. assigning weight 0.50 to both resource consumption and cost, and 0.0 to QoS-assurance \(\Delta 2\) is ranked 0.34 whilst \(\Delta 7\) scores 0.22.
References
Opscode. Chef. http://www.opscode.com/chef/
Puppetlabs. Puppet. http://puppetlabs.com
Arcangeli, J.P., Boujbel, R., Leriche, S.: Automatic deployment of distributed software systems: definitions and state of the art. J. Syst. Softw. 103, 198–218 (2015)
Aryal, R.G., Altmann, J.: Dynamic application deployment in federations of clouds and edge resources using a multiobjective optimization AI algorithm. In: Third International Conference on Fog and Mobile Edge Computing, FMEC 2018, Barcelona, Spain, 23–26 April 2018, pp. 147–154 (2018). https://doi.org/10.1109/FMEC.2018.8364057
Bonomi, F., Milito, R., Natarajan, P., Zhu, J.: Fog computing: a platform for internet of things and analytics. In: Bessis, N., Dobre, C. (eds.) Big Data and Internet of Things: A Roadmap for Smart Environments. SCI, vol. 546, pp. 169–186. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-05029-4_7
Breitbart, Y., Chan, C.Y., Garofalakis, M., Rastogi, R., Silberschatz, A.: Efficiently monitoring bandwidth and latency in IP networks. In: Proceedings IEEE INFOCOM 2001. Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 2, pp. 933–942. IEEE (2001)
Brogi, A., Forti, S.: QoS-aware deployment of IoT applications through the fog. IEEE Internet Things J. 4(5), 1185–1192 (2017). https://doi.org/10.1109/JIOT.2017.2701408
Brogi, A., Forti, S., Ibrahim, A.: How to best deploy your fog applications, probably. In: Rana, O., Buyya, R., Anjum, A. (eds.) Proceedings of 1st IEEE International Conference on Fog and Edge Computing (ICFEC), Madrid, pp. 105–114, May 2017. https://doi.org/10.1109/ICFEC.2017.8
Brogi, A., Forti, S., Ibrahim, A.: Deploying Fog applications: how much does it cost, by the way? In: Proceedings of the 8th International Conference on Cloud Computing and Services Science - vol. 1: CLOSER, pp. 68–77. INSTICC, SciTePress (2018). https://doi.org/10.5220/0006676100680077
Brogi, A., Forti, S., Ibrahim, A.: Predictive analysis to support fog application deployment. In: Buyya, R., Srirama, S.N. (eds.) Fog and Edge Computing: Principles and Paradigms. Wiley, Hoboken (2018)
Brogi, A., Forti, S., Ibrahim, A., Rinaldi, L.: Bonsai in the fog: an active learning lab with fog computing. In: 2018 Third International Conference on Fog and Mobile Edge Computing (FMEC), pp. 79–86. IEEE (2018)
Brogi, A., et al.: SeaClouds: a European project on seamless management of multi-cloud applications. ACM SIGSOFT SEN 39(1), 1–4 (2014)
Brogi, A., Soldani, J., Wang, P.W.: TOSCA in a nutshell: promises and perspectives. In: Villari, M., Zimmermann, W., Lau, K.-K. (eds.) ESOCC 2014. LNCS, vol. 8745, pp. 171–186. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44879-3_13
Corradi, A., Foschini, L., Pernafini, A., Bosi, F., Laudizio, V., Seralessandri, M.: Cloud PaaS brokering in action: the Cloud4SOA management infrastructure. In: VTC 2015, pp. 1–7 (2015)
Cucinotta, T., Anastasi, G.F.: A heuristic for optimum allocation of real-time service workflows. In: 2011 IEEE International Conference on Service-Oriented Computing and Applications (SOCA), pp. 1–4. IEEE (2011)
Dastjerdi, A.V., Buyya, R.: Fog computing: helping the internet of things realize its potential. Computer 49(8), 112–116 (2016)
De Maio, V., Brandic, I.: First Hop Mobile Offloading of DAG Computations (2018, in press)
Deb, K.: Multi-objective optimization. In: Burke, E., Kendall, G. (eds.) Search Methodologies. Springer, Boston, MA (2014). https://doi.org/10.1007/978-1-4614-6940-7_15
Di Cosmo, R., Eiche, A., Mauro, J., Zacchiroli, S., Zavattaro, G., Zwolakowski, J.: Automatic deployment of services in the cloud with aeolus blender. In: Barros, A., Grigori, D., Narendra, N.C., Dam, H.K. (eds.) ICSOC 2015. LNCS, vol. 9435, pp. 397–411. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-48616-0_28
Díaz, J.L., Entrialgo, J., García, M., García, J., García, D.F.: Optimal allocation of virtual machines in multi-cloud environments with reserved and on-demand pricing. Future Gener. Comput. Syst. 71, 129–144 (2017)
Dunn, W.L., Shultis, J.K.: Exploring Monte Carlo Methods. Elsevier, Amsterdam (2011)
Fatema, K., Emeakaroha, V.C., Healy, P.D., Morrison, J.P., Lynn, T.: A survey of cloud monitoring tools: taxonomy, capabilities and objectives. J. Parallel Distrib. Comput. 74(10), 2918–2933 (2014)
Forti, S., Ibrahim, A., Brogi, A.: Mimicking FogDirector application management. Comput. Sci. Res. Dev. 34(2–3), 151–161 (2018)
Gao, Y., Guan, H., Qi, Z., Hou, Y., Liu, L.: A multi-objective ant colony system algorithm for virtual machine placement in cloud computing. J. Comput. Syst. Sci. 79(8), 1230–1242 (2013)
Guerrero, C., Lera, I., Juiz, C.: A lightweight decentralized service placement policy for performance optimization in fog computing. J. Ambient Intell. Humanized Comput. 10(6), 2435–2452 (2019). https://doi.org/10.1007/s12652-018-0914-0
Guerrero, C., Lera, I., Juiz, C.: Resource optimization of container orchestration: a case study in multi-cloud microservices-based applications. J. Supercomput. 74(7), 2956–2983 (2018)
Gupta, H., Dastjerdi, A.V., Ghosh, S.K., Buyya, R.: iFogSim: a toolkit for modeling and simulation of resource management techniques in internet of things, edge and fog computing environments. Softw. Pract. Exp. 47(9), 1275–1296 (2017). https://doi.org/10.1002/spe.2509
Haithem, M., Mokhtar, S., Jaber, K.: Security-aware SaaS placement using swarm intelligence. J. Softw. Evol. Process 30(8), e1932 (2018). https://doi.org/10.1002/smr.1932. https://onlinelibrary.wiley.com/doi/abs/10.1002/smr.1932
Hong, H.J., Tsai, P.H., Hsu, C.H.: Dynamic module deployment in a fog computing platform. In: 2016 18th Asia-Pacific Network Operations and Management Symposium (APNOMS), pp. 1–6, October 2016. https://doi.org/10.1109/APNOMS.2016.7737202
Kimovski, D., Ijaz, H., Surabh, N., Prodan, R.: An Adaptive Nature-inspired Fog Architecture. CoRR abs/1803.03444 (2018)
Lera, I., Guerrero, C.: YAFS - Yet Another Fog Simulator (for python). https://yafs.readthedocs.io/en/latest/
Li, F., Vögler, M., Claeßens, M., Dustdar, S.: Towards automated IoT application deployment by a cloud-based approach. In: SOCA 2013, pp. 61–68 (2013)
Mahmud, R., Ramamohanarao, K., Buyya, R.: Latency-aware application module management for fog computing environments. ACM Trans. Internet Technol. (TOIT) 19(1), 9 (2018)
Markus, A., Kertesz, A., Kecskemeti, G.: Cost-aware IoT extension of DISSECT-CF. Future Internet 9(3), 47 (2017). https://doi.org/10.3390/fi9030047. http://www.mdpi.com/1999-5903/9/3/47
Marler, R.T., Arora, J.S.: The weighted sum method for multi-objective optimization: new insights. Struct. Multi. Optim. 41(6), 853–862 (2010)
Nathuji, R., Kansal, A., Ghaffarkhah, A.: Q-Clouds: Managing Performance Interference Effects for QoS-Aware Clouds. Association for Computing Machinery, Inc., April 2010
Newman, S.: Building Microservices: Designing Fine-Grained Systems. O’Reilly Media, Inc., Sebastopol (2015)
Nguyen, D.T., Le, L.B., Bhargava, V.: Price-based resource allocation for edge computing: a market equilibrium approach. CoRR abs/1805.02982 (2018)
Niyato, D., Hoang, D.T., Luong, N.C., Wang, P., Kim, D.I., Han, Z.: Smart data pricing models for the internet of things: a bundling strategy approach. IEEE Netw. 30(2), 18–25 (2016)
OpenFog: OpenFog Reference Architecture (2016)
Perera, C.: Sensing as a Service for Internet of Things: A Roadmap (2017). Lulu.com
Sarkar, S., Misra, S.: Theoretical modelling of fog computing: a green computing paradigm to support IoT applications. IET Netw. 5(2), 23–29 (2016)
Taneja, M., Davy, A.: Resource aware placement of IoT application modules in fog-cloud computing paradigm. In: 2017 IFIP/IEEE Symposium on Integrated Network and Service Management (IM), pp. 1222–1228, May 2017. https://doi.org/10.23919/INM.2017.7987464
Varshney, P., Simmhan, Y.: Demystifying fog computing: characterizing architectures, applications and abstractions. In: 2017 IEEE 1st International Conference on Fog and Edge Computing (ICFEC), pp. 115–124, May 2017. https://doi.org/10.1109/ICFEC.2017.20
Villari, M., Fazio, M., Dustdar, S., Rana, O., Ranjan, R.: Osmotic computing: a new paradigm for edge/cloud integration. IEEE Cloud Comput. 3(6), 76–83 (2016)
Wang, S., Zafer, M., Leung, K.K.: Online placement of multi-component applications in edge computing environments. IEEE Access 5, 2514–2533 (2017). https://doi.org/10.1109/ACCESS.2017.2665971
Wen, Z., Yang, R., Garraghan, P., Lin, T., Xu, J., Rovatsos, M.: Fog orchestration for internet of things services. IEEE Internet Comput. 21(2), 16–24 (2017). https://doi.org/10.1109/MIC.2017.36
Wen, Z., Cała, J., Watson, P., Romanovsky, A.: Cost effective, reliable and secure workflow deployment over federated clouds. IEEE Trans. Serv. Comput. 10(6), 929–941 (2017)
Xia, Y., Etchevers, X., Letondeur, L., Coupaye, T., Desprez, F.: Combining hardware nodes and software components ordering-based heuristics for optimizing the placement of distributed IoT applications in the fog. In: Proceedings of the 33rd Annual ACM Symposium on Applied Computing, pp. 751–760. ACM (2018)
Xu, J., Fortes, J.A.: Multi-objective virtual machine placement in virtualized data center environments. In: IEEE/ACM GreenCom and CPSCom, pp. 179–188. IEEE (2010)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Brogi, A., Forti, S., Ibrahim, A. (2019). Optimising QoS-Assurance, Resource Usage and Cost of Fog Application Deployments. In: Muñoz, V., Ferguson, D., Helfert, M., Pahl, C. (eds) Cloud Computing and Services Science. CLOSER 2018. Communications in Computer and Information Science, vol 1073. Springer, Cham. https://doi.org/10.1007/978-3-030-29193-8_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-29193-8_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-29192-1
Online ISBN: 978-3-030-29193-8
eBook Packages: Computer ScienceComputer Science (R0)