“…Our decentralised management solution relies upon a declarative Prolog implementation that makes use of four key components (Figure 1). Namely, each MARIO node contains the following: - Knowledge base , a simple representation of monitored infrastructure data, application deployment data, an application orchestration data available at each given node.
- Data collector , a decentralised monitoring tool (like FogMon 17,18 or one of the monitoring tools surveyed in 19 ), which seamlessly runs on the involved Fog nodes, enabling access to local monitoring information on the infrastructure close to them or traversed by user requests targeting the application instances they host, and on hosted application instances.
- Application managers (AMs), distributed agents that enforce custom application management policies defined via four well‐defined Osmotic operations (i.e. undeploy, adapt, migrate and replicate) that can be used to optimise application performance by specifying ( i ) the infrastructure and deployment conditions that should trigger them, and ( ii ) the effects on the managed application instance.
…”