Edge-to-Fog-to-Cloud MARVEL framework
MARVEL framework is dispersed geographically in different countries. Specifically, the cloud is located in PSNC in Poland and there are also three pilots, which form edge and fog layers. For the UNS pilot, fog and edge layers are located in Serbia, for the MT pilot, in Italy, and for the GRN pilot, in Malta. Towards the realization of this topology, MARVdash Kubernetes dashboard and Kubernetes container orchestrator were used.
MARVdash is facilitating data science in Kubernetes-based environments, by integrating a web-based environment that includes an extensible set of productivity tools and services. It serves as a dashboard supplying the landing page for users, allowing them to launch services, and specify parameters related to execution through a user-friendly interface. MARVdash i) launches private services or applications from customizable templates, ii) manages files that are automatically attached to service and application containers when launched, iii) performs high-level user management and isolates respective services in per-user Kubernetes namespaces, and iv) stores custom images and templates in a private repository.
Kubernetes is an orchestration engine for container technologies. The main advantages of Kubernetes include: i) management of lightweight, portable and immutable containers, ii) inherent distribution, ii) OS and hardware independence. When Kubernetes tools are deployed, a cluster is initiated, consisting of a Kubernetes Master and a set of worker machines. These machines are called nodes in Kubernetes. Nodes run containerized applications. The worker node(s) host the Pods which are the components of the application workload.
Kubernetes by design requires that all pods can communicate with other pods on any node directly. This comes in contradiction with the actual setup of having remote nodes. EdgeSec VPN provides the solution here, due to the fact that it brings together the nodes, making any intermediate devices transparent to the communication between them.
To ensure that components are placed on the appropriate nodes, we use mechanisms offered by Kubernetes such as taints, tolerations, and node affinity. Node affinity is a property of Pods that attracts them to a set of nodes either as a preference or a hard requirement. Tolerations are applied to pods, and allow, but do not require, the pods to schedule onto nodes with matching taints. Taints are the opposite since they allow a node to repel a set of pods. Taints and tolerations work together to ensure that pods are not scheduled onto inappropriate nodes.
By using the above mechanisms, each MARVEL service is initiated through MARVdash to the correct layer and is accessible to all other services running in any layer of the Kubernetes cluster.
Blog signed by: Manos Papoutsakis, Anthi Barmpaki, and Manolis Michalodimitrakis, by the FORTH team
- Project Coordinator: Dr. Sotiris Ioannidis
- Institution: Foundation for Research and Technology Hellas (FORTH)
- E-mail: firstname.lastname@example.org
- Start: 01.01.2021
- Duration: 36 months
- Participating Organisations: 17
- Number of countries: 12
This project has received funding from the European Union’s Horizon 2020 Research and Innovation program under grant agreement No 957337. The website reflects only the view of the author(s) and the Commission is not responsible for any use that may be made of the information it contains.