Data Collector Service
+Καρύδης Πέτρος 711141245
+Ματέο Ρουμπάτι 71347122
+Ευθύμης Σδράκας 71346681
+To project "Data collector service" αποτελεί τη βασική επιλογή για την + εξέταση του εργαστηρίου και χωρίζεται σε 3 ενότητες:
+-
+
-
+
Πρώτη
+++-
+
-
+
Δημιουργία δικτύου
+
+ -
+
Αυτόματη εγκατάσταση προγράμματος για την συλλογή των δεδομένων
+
+ -
+
onEvent - τοπική/προσωρινή αποθήκευση των δεδομένων
+
+
+ -
+
-
+
Δεύτερη
+++-
+
-
+
Δημιουργία βάσης δεδομένων(Database replication)
+
+ -
+
onEvent αποθήκευση των δεδομένων στην βάση
+
+
+ -
+
-
+
Τρίτη
+++-
+
-
+
Δημιουργία GUI ή
+
+ -
+
Δημιουργία Websocket σύνδεσης με την βάση ή με τις βασικές υπηρεσίες + για άμεση μεταφορά των δεδομένων
+
+
+ -
+
Προαπαιτούμενα
+-
+
- + + +
- + + +
- + + +
Μέρος Πρώτο
+Στο πρώτο μέρος για την δημιουργία του δικτύου χρησιμοποίησαμε το εικόνικό + εργαστήριο hybrid-linux από το Swarmlab.
++
docker exec -it -udocker hybrid-linux_master_1 /bin/bash // Συνδεόμαστε + στο master του swarm
+Δέυτερο Μέρος
+Για την υλοποίση του δέυτερου μέρους ανοίγουμε ξανά μέσα από το swarmlab + ένα εικονικό εργαστήριο για τη mongoDB.
+Τρέχουμε το makefile δίνοντας make στο terminal όπου θα εγκαταστήσει σε + όλες τις εικονικές μηχανές του δικτύου τα απαραίτητα προγράμματα που + χρειάζονται για την υλοποίηση του data collection, καθώς και το config-update + το οποίο βοηθάει στη διασύνδεση των κόμβων με τη mongoDB.
+docker exec -it swarmlabmongo1 /bin/sh // Συνδεόμαστε στη mongoDB
+Αφού συνδεθούμε μέσω του terminal στη mongo χρησιμοποιούμε τις παρακάτω + εντολές για να προσπελάσουμε την βάση:
+-
+
-
+
mongo
+
+ -
+
use app_swarmlab
+
+ -
+
db.auth('/app_swarmlab', '/app_swarmlab')
+
+
+ Note
+ |
+ + Για τη σύνδεση της βάσης και του σμήνους συνδέσαμε το δίκτυο "χειροκίνητα" μέσα απο + το swarmlab και όχι μέσω microservice με nodejs. + | +
Στη συνέχεια για να ελέγξουμε αν η σύνδεση με τη βάση λειτουργεί τρέχουμε + ένα απο τα αρχεία test-mongo που έχουμε δημιουργήσει.Έπειτα αφού τα τρέξουμε + πηγαίνουμε στη βάση και τρέχουμε την εντολή db.logs.find({}).sort( { _id: -1 } ) για να δούμε αν έχουν γίνει οι εγγραφές μέσα στη βάση.
+Τρίτο μέρος
+Λόγω περιορισμένου χρόνου δεν καταφέραμε να υλοποιήσουμε το τρίτο μέρος + της εργασίας.
+