Skip to content

F.A.Q. on Platform Deployment

Jodao edited this page Apr 9, 2021 · 5 revisions

Trustworthiness Monitoring & Assessment (TMA) Framework is a platform that is responsible to design and implement the trustworthiness monitoring and assessment solution for the ATMOSPHERE ecosystem.

Components

The TMA Framework will follow an adaption of the MAPE-K concepts. Therefore, this platform is composed of 5 components:

TMA_Monitor

This component provides a generic interface that can be accessed by the probes installed in the different layers of the system to send data about the collected measurements and events. To interact with it, user or probes need to generate and send an HTTP POST to TMA_Monitor endpoint. That endpoint is https://IP_MASTER:32025.

The main function of this component is to validate all measurements and events provided by probes. If json file sent by user or probe to TMA_Monitor endpoint is in the expected format, this application returns "0", and the data is forwarded to a FaultTolerantQueue microservice. If the data sent is not valid, the application returns "-1" and also the description of errors occurred, and data is discarded.

FaultTolerantQueue Microservice

This microservice is composed by Apache Kafka and Data Loader. Apache Kafka manages three topics that are responsible for messages exchange between TMA Framework components. To send and receive messages through Apache Kafka topics, it is necessary to create a producer, that is responsible to send messages to a specific topic and create a consumer that reads messages from that topic.

TMA_Monitor component is a producer of topic topic-monitor. On the other side, Data Loader is a consumer of that topic, which means that Data Loader receives all validated data provided by TMA_Monitor and are responsible to format and send them to a storage architecture.

TMA_Monitor and FaultTolerantQueue Microservice deployment

To deploy TMA Monitor and FaultTolerantQueue Microservice, you should follow the instructions presented in the page that explains how to Deploy TMA Monitor in Kubernetes.

Before using TMA_Monitor, you need to initialize TMA_Knowledge component following the instructions of this README. To use TMA_Monitor component in normal mode, you need to initialize Data Loader in their respective pod. To do that execute this yaml file.

TMA_Knowledge

This component is responsible for the storage of all data generated by the TMA Framework. This component is composed by the DBMS MySQL and a block-storage solution Ceph.

All data is inserted in a MySQL database called knowledge and all files of that database are persistently stored in a Ceph image in order to avoid loss of data.

TMA_Knowledge Deployment

All instructions needed to deploy TMA_Knowledge are presented in the following link.

TMA_Analyze

This component is responsible for the calculation of score of the data collected and notify TMA_Planning about the need for adaptations.

TMA_Planning

This component provides an interface that is accessed by TMA_Analyze to send the metrics scores and check if they are in the proper threshold and creates the respective adaptation plan.

All instructions needed to deploy TMA_Planning are presented in the following link

TMA_Execute

This component provides an interface that is accessed by TMA_Planning for submission of the adaptation plan. This component is also responsible to run that adaptation plan using the actuators deployed in the monitored system.

All instructions needed to deploy TMA_Execute are presented in the following link