După succesul proiectului Ensemble bazat pe soluția de videoconferință *, echipele Scaleway au dorit să meargă mai departe în ceea ce privește funcționalitatea cu o nouă soluție de videoconferință Jitsi*. Această nouă soluție, atât completă, cât și mai puțin dependentă de platforma client, este instalată direct pe serverele noastre fizice BareMetal.* **BigBlueButton** ## Cu ce ​​s-a realizat *Jitsi* Platformele de videoconferință au devenit esențiale pentru a rămâne în contact cu cei dragi și pentru a asigura munca de la distanță. Având în vedere acest lucru și de îndată ce a fost anunțată izolarea, Scaleway a pus la dispoziție comunității soluția open source și de videoconferință suverană, *, pe durata crizei Covid-19.Jitsi* Videoconferință gratuită, open-source și suverană * alimentat de Scaleway își propune să ofere Jitsi* *servere capabile să gestioneze o încărcătură mare de solicitări de pod video. sarcină. Acest lucru ne permite să ne asigurăm că fiecare utilizator are cea mai puțin utilizată instanță pentru a crea o cameră virtuală și a iniția un apel.* **Jitsi** Astăzi, API-ul fără stat este compus dintr-un Front in React și un API care face o solicitare către un Prometheus (la fiecare 30 de secunde) pentru a obține lista tuturor serverelor * disponibile și utilizarea curentă a procesorului.Jitsi* Aplicația web selectează apoi serverul * care are cel mai disponibil CPU și returnează URL-ul utilizatorului. Folosind această adresă URL, utilizatorul se poate conecta cu ușurință la serverul Jitsi * *și începe să se bucure de apel cu o calitate optimă a sunetului și video. Toate serverele* **Jitsi** *sunt implementate pe instanțe Scaleway Elements care pot conține un număr mare de poduri video.* **Jitsi** ## De ce să propun o alternativă la *Jitsi* cu *BigBlueButton*? Soluția de videoconferință ensemble.scaleway rămâne disponibilă și gratuită până la sfârșitul lunii iulie 2020.Scaleway a căutat o alternativă la * folosind acest timp, Jitsi* **care** *BigBlueButton* **este un sistem de videoconferință dezvoltat inițial pentru învățământul la distanță. Aplicația web se bazează pe HTML5 și nu necesită instalarea „niciun software sau plugin ** In efect, **este** *BigBlueButton* **disponibil ca licență** ** *open source* și nu necesită nicio instalare suplimentară pe dispozitive client, cum ar fi Windows, MacOS, Linux, Android, iOS. Am ales și această soluție pentru că se dovedește a fi mai robustă și mai disponibilă. De asemenea, oferă multe funcții de colaborare, cum ar fi: - Tabla - Cititorul de diapozitive - Partajarea ecranului - Cererea de vorbire virtuală - Crearea unei subsalii de sedinte - Chat privat între participanți * este calibrat pentru apeluri videoconferință în grupuri mari. Prin nelimitarea numărului de participanți și cu vârfuri de trafic adesea mari, soluția nu dă semne. Platforma are avantajul de a fi la fel de stabilă și de simplu de utilizat decât alte soluții populare de videoconferință, cu opțiuni pentru a controla permisiunile participanților, de exemplu, BigBlueButton* Pentru a asigura această stabilitate Scaleway **a ales servere foarte mari pentru infrastructura sa de back-end** mai degrabă decât câteva mici și, prin urmare, a optat pentru servere BareMetal puternice, cu o configurație hardware fără hipervizor și fără un strat de virtualizare Cum am configurat BigBlueButton alimentat de Scaleway? Soluția * recomandă instalarea directă pe un server fizic, așa că am început cu un cluster de servere Bare Metal GP-BM1-M. Acesta are următoarele avantaje în ceea ce privește configurația hardware: BigBlueButton* CPU:1 Intel® Xeon E3 1240v6 - 4C 8T - 3,7 GHz RAM:64 GB Stocare:3ÂÂ1 TB Lățime de bandă:500 Mbit/s Echipa a pus la dispoziție o imagine Ubuntu cu BigBlueButton configurat automat. Instalarea se face folosind un script disponibil gratuit pe github ## Primul pas: modulul Terraform Terraform este un instrument de infrastructură pe care l-am folosit și pentru platformă *.Permite gestionarea tuturor resurselor cloud într-o paradigmă declarativă (infrastructură ca cod). Este în special modulul BareMetal care va veni să creeze fiecare server dedicat al clusterului Jitsi* *.Plugin-ul va lua în parametru ID-ul a creat special pentru ocazie.* **BigBlueButton** resursa „scaleway_baremetal_server_beta” „bbb” { for_each = local. instances zone = "fr-par-2"offer = "GP-BM1-M"os_id = "3ea52186-1e57-499e-8146-ab38051a5c10"ssh_key_ids = [ data.scaleway_account_ssh_key .user1.id, data.scaleshway_key.us. , data.scaleway_account_ssh_key.user3.id, ] } Restul infrastructurii Ensemble-bbb.scaleway constă din instanțe de calcul: - 2 x DEV1-L (NGINX, React frontend, proxy BigBlueButton) - 1 x DEV1-L (Prometheus) ## Al doilea pas: Distribuirea camerelor Cat despre solutie * avem un front-end în React care permite printr-o singură interfață să contactăm un API intern pentru a crea o cameră pe unul dintre numeroasele servere.Jitsi* ** încorporează un mecanism de înregistrare a utilizatorului și a proprietarului camerei. Pentru a evita ca fiecare utilizator să fie nevoit să se înregistreze pe fiecare nod pentru a crea sau a se alătura unei camere, am făcut această parte transparentă, oferind utilizatorului două rute de API pe care le poate furniza participanților săi. O primă cale de conectare ca moderator de cameră și cealaltă ca simplu participant. BigBlueButton** După cum am menționat mai devreme, API-ul interogează periodic fiecare server * pentru a prelua numărul de camere și de participanți, ceea ce permite o distribuție egală a sarcinii pe cluster.BigBlueButton* ## Al treilea pas: Luați înapoi toate avantajele integrării ensemble.scaleway.com O notă tehnică, în engleză Construirea unei soluții scalabile de conferințe video într-o singură zi, folosind Jitsi și Scaleway Elements *BigBlueButton.* **Scaleway Registry API și front-end în React rulează în două containere și sunt ambele găzduite într-un registru privat Scaleway. Odată stocate în registru, imaginile pot fi introduse în instanță printr-un demon docker controlat de docker-compose pentru a rula aplicația. **Scaleway Load-Balancer Load Balancers va redirecționa automat cererile către serverele noastre API în funcție de disponibilitatea resurselor. Serverele noastre API sunt cele care oferă informații despre încărcarea fiecărui server* pentru a se asigura că utilizatorul are cel mai disponibil server. BigBlueButton* **Scaleway Placements Groups Ca parte a aplicației noastre, dorim să ne asigurăm că serverele API sunt cât mai disponibile posibil. Prin urmare, am activat modul max_availabilityScaleway Security Groups Pe instanțele API, am permis doar conexiunea HTTPS și conexiunea SSH de acces la distanță. necesare pentru funcționarea BigBlueButton***BigBlueButton** **Domenii Scaleway Am generat un certificat wildcard pentru toate subdomeniile de set-bbb.scaleway.com.Fiecare server * își primește certificatul care este folosit de serverul lor Nginx pentru a gestiona conexiunile HTTPS.BigBlueButton* ## Următorii pași Scaleway continuă să lucreze activ atât pe httpsensemble.scaleway.com/, cât și pe httpsensemble-bbb.scaleway.com/ pentru a sprijini cât mai mulți oameni în această perioadă dificilă. aflați mai multe, nu ezitați să testați astăzi soluția BigBlueButton powered by Scaleway, să citiți documentația noastră pe acest subiect sau să vă creați primul server BareMetal.