ビデオ会議ソリューションに基づく Ensemble プロジェクトの成功後 *、Scaleway チームは、新しい Jitsi* ビデオ会議ソリューションを使用して、機能面でさらに進化したいと考えていました。この新しいソリューションは完全であり、クライアント プラットフォームへの依存度が低く、当社の物理ベアメタル サーバーに直接インストールされます。* **BigBlueButton** ## で実現したこと *ジッシー* ビデオ会議プラットフォームは、愛する人と連絡を取り合い、リモートワークを確保するために不可欠になっています.これを念頭に置いて、外出制限が発表されるやいなや、Scaleway はオープン ソースのソブリン ビデオ会議ソリューションをコミュニティで利用できるようにしました。 *、Covid-19.Jitsi 危機の期間中* 無料、オープンソース、主権のビデオ会議 * Powered by Scaleway は、大量のビデオ ブリッジ リクエストを処理できる Jitsi* * サーバーを提供することを目的としています。ロード。これにより、各ユーザーが仮想ルームを作成して通話を開始するためのインスタンスの使用を最小限に抑えることができます.* **Jitsi** 現在、ステートレス API は、React の Front と、すべてのサーバーのリストを取得するために Prometheus に (30 秒ごとに) 要求を行う API で構成されています。 *利用可能で、現在のCPU使用率.Jitsi* 次に、Web アプリケーションがサーバーを選択します。 * 使用可能な CPU が最も多く、URL をユーザーに返します。この URL を使用すると、ユーザーは簡単に Jitsi サーバーに接続して * *最適な音質とビデオ品質で通話を楽しむことができます。ビデオ ブリッジ* **Jitsi** ## なぜ代替案を提案するのか *BigBlueButton* を使用した *Jitsi*?ensemble.scaleway ビデオ会議ソリューションは、2020 年 7 月末まで引き続き無料で利用できます。 * この時間を使用して、Jitsi* **which** *BigBlueButton* ** は、もともと遠隔学習用に開発されたビデオ会議システムです。 Web アプリケーションは HTML5 に基づいており、「ソフトウェアやプラグインは不要です ** 実際には、 **は** *BigBlueButton* **ライセンスとして利用可能** ** *オープン ソース*であり、Windows、MacOS、Linux、Android、iOS などのクライアント デバイスに追加のインストールを行う必要はありません。また、このソリューションを選択したのは、より堅牢で可用性が高いことが判明したためです。また、次のような多くのコラボレーション機能も提供します。 - ボード - スライド リーダー - 画面共有 - 仮想発言リクエスト - サブ会議室の作成 - 参加者間のプライベートチャット * は、大規模なグループでのビデオ会議通話用に調整されています。参加者の数を制限せず、トラフィックのピークが頻繁に発生するため、このソリューションはその兆候を示しません。このプラットフォームには、参加者のアクセス許可を制御するオプションを備えた他の一般的なビデオ会議ソリューションよりも安定しており、使いやすいという利点があります。例: BigBlueButton* このScalewayの安定性を確保するために **バックエンド インフラストラクチャには、いくつかの小さなサーバーではなく、非常に大きなサーバーを選択しました**。そのため、ハイパーバイザーや仮想化レイヤーのないハードウェア構成を備えた強力なベアメタル サーバーを選択しました。 ※ は物理サーバーへの直接インストールを推奨しているため、ベアメタル GP-BM1-M サーバー クラスターから始めました。これには、ハードウェア構成に関して次の利点があります。 BigBlueButton* CPU:1 × Intel® Xeon E3 1240v6 - 4C 8T - 3.7 GHz RAM:64 GB ストレージ:3 × 1 TB 帯域幅:500 Mbit/s チームは、BigBlueButton が自動的に構成された Ubuntu イメージを利用できるようにしました。インストールは、github で自由に入手できるスクリプトを使用して行われます ## 最初のステップ: Terraform モジュール Terraform は、プラットフォームにも使用したインフラストラクチャ ツールです。 *.宣言型パラダイム (コードとしてのインフラストラクチャ) ですべてのクラウド リソースを管理できます。特に、Jitsi クラスターの各専用サーバーを作成するのは BareMetal モジュールです* *.プラグインは ID のパラメーターを受け取りますその機会のために特別に作成された* **BigBlueButton** リソース "scaleway_baremetal_server_beta""bbb"{ for_each = local.インスタンス ゾーン = "fr-par-2"オファー = "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、] } Ensemble-bbb.scaleway インフラストラクチャの残りの部分は、コンピューティング インスタンスで構成されます。 - 2 x DEV1-L (NGINX、React フロントエンド、BigBlueButton プロキシ) - 1 x DEV1-L (プロメテウス) ## 第 2 段階: 部屋の分配 解決策については * React にはフロントエンドがあり、単一のインターフェースを介して内部 API に接続し、多くのサーバーの 1 つにルームを作成できます。Jitsi* ** ユーザーとルーム所有者の登録メカニズムが組み込まれています。各ユーザーがルームを作成または参加するために各ノードに登録する必要がないようにするために、参加者に提供できる API の 2 つのルートをユーザーに提供することで、この部分を透過的にしました。ルームモデレーターとして接続する最初のルートと、単純な参加者として接続する別のルート。ビッグブルーボタン** 前述のように、API は各サーバーに定期的にクエリを実行します。 * ルーム数と参加者数を取得するため。これにより、クラスタの負荷を均等に分散できます。BigBlueButton* ## 3 番目のステップ: ensemble.scaleway.com 統合のすべての利点を取り戻す 英語のテクニカルノート Jitsi と Scaleway Elements *BigBlueButton.* を使用して、スケーラブルなビデオ会議ソリューションを 1 日で構築します。レジストリに保存されたイメージは、 docker-compose でアプリケーションを実行します。 **Scaleway Load-Balancer Load Balancer は、リソースの可用性に基づいて API サーバーにリクエストを自動的に転送します。当社の API サーバーは、各サーバーの負荷情報を提供する*もので、ユーザーが最も利用可能なサーバーを利用できるようにします。 BigBlueButton* **Scaleway プレースメント グループ アプリケーションの一部として、API サーバーが可能な限り利用できるようにしたいと考えています。したがって、モードを有効にしました max_availabilityScaleway セキュリティ グループ API インスタンスでは、HTTPS 接続と SSH リモート アクセス接続のみを許可しました。 BigBlueButton***BigBlueButton** **Scaleway Domains のすべてのサブドメインに対してワイルドカード証明書を生成しました set-bbb.scaleway.com.各サーバー * Nginx サーバーが HTTPS 接続を管理するために使用する証明書を受け取ります。BigBlueButton* ## 次のステップ Scaleway は、この困難な時期にできるだけ多くの人々をサポートするために、httpsensemble.scaleway.com/ と httpsensemble-bbb.scaleway.com/ の両方で引き続き積極的に取り組んでいます。詳細については、Scaleway ソリューションを利用した BigBlueButton を今すぐテストすることを躊躇しないでください。このテーマに関するドキュメントを読んだり、最初の BareMetal サーバーを作成したりしてください。