Μετά την επιτυχία του έργου Ensemble που βασίζεται στη λύση τηλεδιάσκεψης *, οι ομάδες της Scaleway θέλησαν να προχωρήσουν περισσότερο όσον αφορά τη λειτουργικότητα με μια νέα λύση τηλεδιάσκεψης Jitsi*. Αυτή η νέα λύση, ολοκληρωμένη και λιγότερο εξαρτημένη από την πλατφόρμα πελάτη, εγκαθίσταται απευθείας στους φυσικούς μας διακομιστές BareMetal.* **BigBlueButton** ## Τι έχει επιτευχθεί με *Jitsi* Οι πλατφόρμες τηλεδιάσκεψης έχουν γίνει απαραίτητες για να μείνετε σε επαφή με τα αγαπημένα σας πρόσωπα και να διασφαλίσετε την απομακρυσμένη εργασία. Έχοντας αυτό υπόψη και μόλις ανακοινώθηκε ο περιορισμός, η Scaleway έκανε διαθέσιμη στην κοινότητα την ανοιχτού κώδικα και κυρίαρχη λύση τηλεδιάσκεψης, *, για τη διάρκεια της κρίσης Covid-19.Jitsi* Δωρεάν, ανοιχτού κώδικα και κυρίαρχη, τηλεδιάσκεψη Το * powered by Scaleway στοχεύει στην παροχή Jitsi* *διακομιστών ικανών να χειριστούν μεγάλο φόρτο αιτημάτων video bridge. φορτώνω. Αυτό μας επιτρέπει να διασφαλίσουμε ότι κάθε χρήστης έχει τη λιγότερο χρησιμοποιημένη παρουσία για τη δημιουργία ενός εικονικού δωματίου και την έναρξη μιας κλήσης.* **Jitsi** Σήμερα, το απάτρι API αποτελείται από ένα Front in React και ένα API που κάνει ένα αίτημα σε έναν Prometheus (κάθε 30 δευτερόλεπτα) προκειμένου να λάβει τη λίστα όλων των διακομιστών * διαθέσιμα και η τρέχουσα χρήση CPU τους.Jitsi* Στη συνέχεια, η εφαρμογή web επιλέγει τον διακομιστή * που έχει την πιο διαθέσιμη CPU και επιστρέφει τη διεύθυνση URL στον χρήστη. Χρησιμοποιώντας αυτήν τη διεύθυνση URL, ο χρήστης μπορεί εύκολα να συνδεθεί στον διακομιστή Jitsi * *και να αρχίσει να απολαμβάνει την κλήση με βέλτιστη ποιότητα ήχου και βίντεο. Όλοι οι διακομιστές* **Jitsi** *αναπτύσσονται σε περιπτώσεις Scaleway Elements που μπορεί να περιέχουν μεγάλο αριθμό ταυτόχρονων βιντεογέφυρες.* **Τζίτση** ## Γιατί να προτείνετε μια εναλλακτική *Jitsi* με *BigBlueButton*;Η λύση τηλεδιάσκεψης ensemble.scaleway παραμένει διαθέσιμη και δωρεάν μέχρι το τέλος Ιουλίου 2020. Η Scaleway έχει αναζητήσει μια εναλλακτική * χρησιμοποιώντας αυτόν τον χρόνο, το Jitsi* **το οποίο** *BigBlueButton* **είναι ένα σύστημα τηλεδιάσκεψης που αναπτύχθηκε αρχικά για εξ αποστάσεως εκπαίδευση. Η εφαρμογή Ιστού βασίζεται σε HTML5 και δεν απαιτεί την εγκατάσταση "χωρίς λογισμικό ή πρόσθετο ** Στην πραγματικότητα, **είναι** *BigBlueButton* **διατίθεται ως άδεια χρήσης** ** *ανοιχτού κώδικα* και δεν απαιτεί πρόσθετη εγκατάσταση σε συσκευές-πελάτες όπως Windows, MacOS, Linux, Android, iOS. Επιλέξαμε επίσης αυτή τη λύση γιατί αποδεικνύεται πιο στιβαρή και πιο διαθέσιμη. Προσφέρει επίσης πολλά συνεργατικά χαρακτηριστικά όπως: - Ο πίνακας - Το πρόγραμμα ανάγνωσης διαφανειών - Κοινή χρήση οθόνης - Το αίτημα εικονικής ομιλίας - Δημιουργία υπο-αίθουσας συνεδριάσεων - Ιδιωτική συνομιλία μεταξύ των συμμετεχόντων * είναι βαθμονομημένο για κλήσεις τηλεδιάσκεψης σε μεγάλες ομάδες. Μη περιορίζοντας τον αριθμό των συμμετεχόντων και με συχνά υψηλές αιχμές κυκλοφορίας, η λύση δεν δείχνει σημάδια. Η πλατφόρμα έχει το πλεονέκτημα ότι είναι εξίσου σταθερή και απλή στη χρήση από άλλες δημοφιλείς λύσεις τηλεδιάσκεψης με επιλογές ελέγχου των αδειών συμμετεχόντων π.χ.BigBlueButton* Προκειμένου να διασφαλιστεί αυτή η σταθερότητα του Scaleway **επέλεξε πολύ μεγάλους διακομιστές για την υποδομή του back-end** αντί για αρκετούς μικρούς, και ως εκ τούτου επέλεξε ισχυρούς διακομιστές BareMetal με διαμόρφωση υλικού χωρίς hypervisor και χωρίς επίπεδο εικονικοποίησης Πώς διαμορφώσαμε το BigBlueButton με την υποστήριξη του Scaleway; Η λύση * συνιστά άμεση εγκατάσταση σε φυσικό διακομιστή, γι'αυτό ξεκινήσαμε με ένα σύμπλεγμα διακομιστών Bare Metal GP-BM1-M. Αυτό έχει τα ακόλουθα πλεονεκτήματα όσον αφορά τη διαμόρφωση υλικού: BigBlueButton* CPU: 1àIntelî Xeon E3 1240v6 - 4C 8T - 3,7 GHz RAM: 64 GB Αποθήκευση: 3ÃÂ1 TB Εύρος ζώνης: 50 Η ομάδα έχει διαθέσει μια εικόνα του Ubuntu με αυτόματη διαμόρφωση του BigBlueButton. Η εγκατάσταση γίνεται χρησιμοποιώντας ένα σενάριο που διατίθεται ελεύθερα στο github ## Πρώτο βήμα: Η ενότητα Terraform Το Terraform είναι ένα εργαλείο υποδομής που είχαμε χρησιμοποιήσει και για την πλατφόρμα *. Επιτρέπει τη διαχείριση όλων των πόρων του cloud σε ένα δηλωτικό παράδειγμα (υποδομή ως κώδικας). Είναι συγκεκριμένα η μονάδα BareMetal που θα δημιουργήσει κάθε αποκλειστικό διακομιστή του συμπλέγματος Jitsi* *. Το πρόσθετο θα λάβει στην παράμετρο το αναγνωριστικό του ειδικά δημιουργημένου για την περίσταση.* **BigBlueButton** πόρος "scaleway_baremetal_server_beta""bbb"{ for_each = τοπικό. ζώνη περιπτώσεων = "fr-par-2"προσφορά = "GP-BM1-M"os_id = "3ea52186-1e57-499e-8146-ab38051a5c10"ssh_key_ids = [ data.scaleway_account_ssh_key .user1.wayshid_key. , data.scaleway_account_ssh_key.user3.id, ] } Η υπόλοιπη υποδομή Ensemble-bbb.scaleway αποτελείται από περιπτώσεις υπολογισμού: - 2 x DEV1-L (NGINX, React frontend, BigBlueButton proxy) - 1 x DEV1-L (Προμηθέας) ## Δεύτερο βήμα: Η κατανομή των δωματίων Όσο για τη λύση * έχουμε ένα frontend στο React το οποίο επιτρέπει μέσω μιας ενιαίας διεπαφής να επικοινωνήσετε με ένα εσωτερικό API για να δημιουργήσετε ένα δωμάτιο σε έναν από τους πολλούς διακομιστές.Jitsi* ** ενσωματώνει έναν μηχανισμό εγγραφής χρήστη και ιδιοκτήτη δωματίου. Για να αποφύγουμε κάθε χρήστη να χρειάζεται να εγγραφεί σε κάθε κόμβο για να δημιουργήσει ή να συμμετάσχει σε ένα δωμάτιο, έχουμε κάνει αυτό το μέρος διαφανές παρέχοντας στον χρήστη δύο διαδρομές api που μπορεί να παρέχει στους συμμετέχοντες του. Μια πρώτη διαδρομή για να συνδεθείτε ως συντονιστής δωματίου και η άλλη ως απλός συμμετέχων. BigBlueButton** Όπως αναφέρθηκε προηγουμένως, το API υποβάλλει περιοδικά ερωτήματα σε κάθε διακομιστή * για ανάκτηση του αριθμού των δωματίων και των συμμετεχόντων, που επιτρέπει την ίση κατανομή του φορτίου στο σύμπλεγμα.BigBlueButton* ## Τρίτο βήμα: Πάρτε πίσω όλα τα πλεονεκτήματα της ενσωμάτωσης του ensemble.scaleway.com Μια τεχνική σημείωση, στα αγγλικά Δημιουργία μιας επεκτάσιμης λύσης τηλεδιάσκεψης σε μια μέρα, χρησιμοποιώντας Jitsi και Scaleway Elements *BigBlueButton.* **Το Scaleway Registry API και το frontend στο React εκτελούνται σε δύο κοντέινερ και φιλοξενούνται και τα δύο σε ιδιωτικό μητρώο Scaleway. Αφού αποθηκευτούν στο μητρώο, οι εικόνες μπορούν να τραβηχτούν στο στιγμιότυπο μέσω ενός δαίμονα docker που ελέγχεται από docker-compose για να εκτελέσετε την εφαρμογή. **Το Scaleway Load-Balancer Load Balancer θα προωθήσει αυτόματα αιτήματα στους διακομιστές API μας με βάση τη διαθεσιμότητα πόρων. Οι διακομιστές μας API είναι αυτοί που παρέχουν πληροφορίες φόρτωσης κάθε διακομιστή* για να διασφαλίσουν ότι ο χρήστης έχει τον πιο διαθέσιμο διακομιστή. BigBlueButton* **Ομάδες τοποθετήσεων Scaleway Ως μέρος της εφαρμογής μας, θέλουμε να διασφαλίσουμε ότι οι διακομιστές API είναι όσο το δυνατόν πιο διαθέσιμοι. Επομένως, έχουμε ενεργοποιήσει τη λειτουργία max_availabilityScaleway Security Groups Σε περιπτώσεις API, επιτρέπαμε μόνο σύνδεση HTTPS και σύνδεση απομακρυσμένης πρόσβασης SSH. απαραίτητο για τη λειτουργία του BigBlueButton***BigBlueButton** **Scaleway Domains Δημιουργήσαμε ένα πιστοποιητικό μπαλαντέρ για όλους τους υποτομείς του set-bbb.scaleway.com.Κάθε διακομιστής * λαμβάνει το πιστοποιητικό του το οποίο χρησιμοποιείται από τον διακομιστή Nginx για τη διαχείριση των συνδέσεων HTTPS.BigBlueButton* ## Τα επόμενα βήματα Η Scaleway συνεχίζει να εργάζεται ενεργά τόσο στο httpsensemble.scaleway.com/ όσο και στο httpsensemble-bbb.scaleway.com/ για να υποστηρίξει όσο το δυνατόν περισσότερους ανθρώπους σε αυτήν τη δύσκολη περίοδο. μάθετε περισσότερα, μη διστάσετε να δοκιμάσετε το BigBlueButton που υποστηρίζεται από τη λύση Scaleway σήμερα, για να διαβάσετε την τεκμηρίωσή μας σχετικά με αυτό το θέμα ή να δημιουργήσετε τον πρώτο σας διακομιστή BareMetal.