Po sukcesie projektu Ensemble opartego na rozwiązaniu do wideokonferencji *, zespoły Scaleway chciały pójść dalej pod względem funkcjonalności dzięki nowemu rozwiązaniu do wideokonferencji Jitsi*. To nowe rozwiązanie, zarówno kompletne, jak i mniej zależne od platformy klienckiej, jest instalowane bezpośrednio na naszych fizycznych serwerach BareMetal.* **BigBlueButton** ## Co osiągnięto dzięki *Jitsi* Platformy wideokonferencyjne stały się niezbędne, aby pozostać w kontakcie z bliskimi i zapewnić pracę zdalną. Mając to na uwadze i zaraz po ogłoszeniu zamknięcia, Scaleway udostępnił społeczności rozwiązanie do wideokonferencji typu open source, *, na czas kryzysu Covid-19.Jitsi* Bezpłatne, otwarte i niezależne wideokonferencje * powered by Scaleway ma na celu zapewnienie Jitsi* *serwerów zdolnych do obsługi dużego obciążenia żądań mostków wideo. Załaduj. Dzięki temu możemy mieć pewność, że każdy użytkownik ma najmniej używaną instancję do utworzenia wirtualnego pokoju i zainicjowania połączenia.* **Jitsi** Obecnie bezstanowe API składa się z Front in React oraz API, które wysyła żądanie do Prometheusa (co 30 sekund) w celu uzyskania listy wszystkich serwerów * dostępne i ich bieżące użycie procesora.Jitsi* Następnie aplikacja internetowa wybiera serwer * który ma najbardziej dostępny procesor i zwraca adres URL użytkownikowi. Korzystając z tego adresu URL, użytkownik może łatwo połączyć się z serwerem Jitsi * * i rozpocząć rozmowę z optymalną jakością dźwięku i obrazu. Wszystkie serwery* **Jitsi** *są wdrażane na instancjach Scaleway Elements, które mogą zawierać dużą liczbę jednoczesnych mosty wideo.* **Jitsi** ## Po co proponować alternatywę dla *Jitsi* z *BigBlueButton*? Rozwiązanie do wideokonferencji Ensemble.scaleway pozostaje dostępne i bezpłatne do końca lipca 2020 r. Scaleway przyjrzał się alternatywie dla * używając tego czasu, Jitsi* **który** *BigBlueButton* **jest systemem wideokonferencyjnym pierwotnie opracowanym do nauczania na odległość. Aplikacja internetowa jest oparta na HTML5 i nie wymaga instalacji żadnego oprogramowania ani wtyczki ** W efekcie, **jest** *BigBlueButton* **dostępny jako licencja** ** *open source* i nie wymaga żadnej dodatkowej instalacji na urządzeniach klienckich takich jak Windows, MacOS, Linux, Android, iOS. Wybraliśmy to rozwiązanie również dlatego, że okazuje się solidniejsze i bardziej dostępne. Oferuje również wiele funkcji współpracy, takich jak: - Tablica - Czytnik slajdów - Udostępnianie ekranu - Żądanie wirtualnego mówienia - Stworzenie pod-sali konferencyjnej - Prywatny czat między uczestnikami * jest skalibrowany do połączeń wideokonferencyjnych w dużych grupach. Nie ograniczając liczby uczestników i przy często dużych szczytach ruchu, rozwiązanie nie wykazuje żadnych oznak. Platforma ma tę zaletę, że jest równie stabilna i prosta w użyciu niż inne popularne rozwiązania do wideokonferencji z opcjami kontrolowania uprawnień uczestników, np.BigBlueButton* Aby zapewnić stabilność Scaleway **wybrał bardzo duże serwery dla swojej infrastruktury zaplecza** zamiast kilku małych, dlatego zdecydował się na wydajne serwery BareMetal z konfiguracją sprzętową bez hiperwizora i bez warstwy wirtualizacji Jak skonfigurowaliśmy BigBlueButton powered by Scaleway? Rozwiązanie * zaleca bezpośrednią instalację na serwerze fizycznym, więc zaczęliśmy od klastra serwerów Bare Metal GP-BM1-M. Ma to następujące zalety w zakresie konfiguracji sprzętowej: BigBlueButton* Procesor: 1 x Intel® Xeon E3 1240v6 - 4C 8T - 3,7 GHz Pamięć RAM: 64 GB Przestrzeń dyskowa: 3 × 1 TB Przepustowość: 500 Mbit/s Zespół udostępnił obraz Ubuntu z automatycznie skonfigurowanym BigBlueButton. Instalacja odbywa się za pomocą skryptu dostępnego bezpłatnie na github ## Pierwszy krok: moduł Terraform Terraform to narzędzie infrastrukturalne, którego używaliśmy również na platformie *.Pozwala zarządzać wszystkimi zasobami chmury w paradygmacie deklaratywnym (infrastruktura jako kod).W szczególności moduł BareMetal przyjdzie do stworzenia każdego serwera dedykowanego klastra Jitsi* *.Wtyczka przyjmie parametr ID specjalnie stworzonej na tę okazję.* **BigBlueButton** zasób „scaleway_baremetal_server_beta” „bbb” { for_each = lokalny. strefa instancji = "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.scaleway_account_ssh_key.user2.id , data.scaleway_account_ssh_key.user3.id, ] } Pozostała część infrastruktury Ensemble-bbb.scaleway składa się z instancji obliczeniowych: - 2 x DEV1-L (NGINX, interfejs React, proxy BigBlueButton) - 1 x DEV1-L (Prometeusz) ## Krok drugi: Rozmieszczenie pomieszczeń Co do rozwiązania * mamy frontend w React, który pozwala poprzez jeden interfejs kontaktować się z wewnętrznym API w celu stworzenia pokoju na jednym z wielu serwerów.Jitsi* ** osadza mechanizm rejestracji użytkownika i właściciela pokoju. Aby uniknąć konieczności rejestrowania się każdego użytkownika w każdym węźle w celu utworzenia pokoju lub dołączenia do niego, uczyniliśmy tę część przezroczystą, udostępniając użytkownikowi dwie trasy API, które może udostępnić swoim uczestnikom. Pierwsza droga do połączenia jako moderator pokoju, a druga jako zwykły uczestnik. duży niebieskiprzycisk** Jak wspomniano wcześniej, interfejs API okresowo wysyła zapytania do każdego serwera * do pobierania liczby sal i uczestników, co pozwala na równomierne rozłożenie obciążenia na klaster.BigBlueButton* ## Trzeci krok: odzyskaj wszystkie zalety integracji z Ensemble.scaleway.com Uwaga techniczna w języku angielskim Zbudowanie skalowalnego rozwiązania do wideokonferencji w ciągu jednego dnia przy użyciu Jitsi i Scaleway Elements *BigBlueButton.* **Scaleway Registry API i frontend w React działają w dwóch kontenerach i oba są hostowane w prywatnym rejestrze Scaleway. Po zapisaniu w rejestrze obrazy można pobrać do instancji za pomocą demona dokera kontrolowanego przez docker-compose, aby uruchomić aplikację. **Systemy równoważenia obciążenia Scaleway Load-Balancer będą automatycznie przekazywać żądania do naszych serwerów API w zależności od dostępności zasobów. Nasze serwery API to te, które dostarczają informacji o obciążeniu każdego serwera*, aby upewnić się, że użytkownik ma najbardziej dostępny serwer. BigBlueButton* **Scaway Placements Groups W ramach naszej aplikacji chcemy mieć pewność, że serwery API są jak najbardziej dostępne. W związku z tym aktywowaliśmy ten tryb max_availabilityScaway Security Groups W instancjach API zezwoliliśmy tylko na połączenie HTTPS i połączenie zdalnego dostępu SSH. niezbędne do działania BigBlueButton***BigBlueButton** **Domeny Scaleway Wygenerowaliśmy certyfikat wildcard dla wszystkich subdomen set-bbb.scaleway.com.Każdy serwer * otrzymuje swój certyfikat, który jest używany przez ich serwer Nginx do zarządzania połączeniami HTTPS.BigBlueButton* ## Kolejne kroki Scaleway nadal aktywnie działa zarówno na httpsensemble.scaleway.com/, jak i httpsensemble-bbb.scaleway.com/, aby wspierać jak najwięcej osób w tym trudnym czasie. dowiedz się więcej, już dziś przetestuj rozwiązanie BigBlueButton powered by Scaleway, zapoznaj się z naszą dokumentacją na ten temat lub stwórz swój pierwszy serwer BareMetal.