本文へスキップ
記事一覧

ZcaleRight 1.0.0:10 台のサーバーを 1 台と同じくらい簡単に運用

Ghazi Triki 著 · 1 分で読めます

ZcaleRight 1.0.0 の一般提供開始
この記事の内容

ZcaleRight は 2019 年から本番環境で BigBlueButton の会議の振り分けを担ってきました。本日、バージョン 1.0.0 となり、一般提供を開始します。69 の機能すべてを公開し、製品内には完全なマニュアルを用意し、サービスレベル契約で裏付け、zcaleright.com という専用のサイトも開設しました。

多くの 1.0.0 リリースは始まりを意味します。今回のリリースが意味するのは、長年にわたる本番環境での取り組みが、調達委員会に提示できる製品として結実したということです。

ZcaleRight は 2019 年から、実際の BigBlueButton クラスターを支えてきました。ヨーロッパ、中東、アフリカ、ラテンアメリカ、北米の大学、学校、研修事業者、会議サービスの再販事業者です。配置したカンファレンスは 200 万件を超え、学期ごとに増え続けています。そのうちの一つは、Biruni University の導入事例として紹介しています。関係者の誰一人として、バージョン番号を待っていたわけではありません。

今週変わったのは、ソフトウェアの成熟度ではありません。変わったのは、その入手しやすさです。1.0.0 に向けた最後の仕上げは、製品をオープンにすることに注がれました。69 の機能すべてを公開し、評価担当者が最初の打ち合わせの前に製品の全容を読めるようにしました。二つの API を文書化しました。サインインしたすべてのユーザーのために、製品内に完全なマニュアルを用意しました。そして、応答時間をほのめかすのではなく明記したサービスレベル契約を整えました。1.0.0 は、製品が自らを語るバージョンです。

フリート全体を 1 台のサーバーのように

最初の BigBlueButton サーバーは簡単です。シンプルではなくなるのは 2 台目からです。授業をどのサーバーに割り当てるかを決め、それ以降のすべての呼び出しを同じマシンに向け続け、録画を一か所から参照できるようにしておく仕組みが必要になります。

ZcaleRight は、フリート全体の前に立つ一つの BigBlueButton API です。ダッシュボード、プール、テナント、一つの録画ライブラリ、オートスケーリングを備え、2019 年から本番環境で稼働しています。学習プラットフォームは、これまでと同じ API を呼び出し続けます。変わるのはアドレスと共有シークレットだけです。Moodle、Canvas、Schoology、WordPress プラグイン、LTI 1.0 から 1.3 までのツール、そして自社で構築したものも、そのまま動き続けます。新たに採用すべきプロトコルがないからです。

運用者のために設計

ZcaleRight のどの機能も、他の組織のためにクラスターを運用するなかで、まず必要に迫られて生まれたものです。12 のグループに 69 の機能があり、その一覧は要約せずにすべて公開しています。これほど具体的な製品は、要約するよりも全体を示したほうが伝わりやすいからです。月曜の朝を変えるのは、次の機能です。

  • 配置は作成時に一度だけ決定。 会議は開始したサーバーにとどまり、それ以降のすべての呼び出しもそのサーバーに向かいます。異常のあるサーバーは数秒でローテーションから外れ、正常なサーバーは削除することなくメンテナンスのためにドレインできます。LMS が念のため 2 回再試行しても、ルームが 2 つ開かれることはありません。
  • 一つのダッシュボード。 サーバー、進行中の会議、参加者、ストレージを、自動更新される一つの画面で確認できます。利用履歴により学期全体の推移が見え、アプリケーションログはシェルにアクセスしなくても読めます。
  • 録画を一つのカタログに。 共有マウントは不要です。録画は作成したサーバーに残すことも、中央のストレージに移すこともでき、再生リンクは書き換えられるため、すべてを一か所から参照できます。保持期間は設定したスケジュールどおりに適用されます。数十万件の録画を横断する検索も 1 秒未満で結果が返るため、録画探しは手間のかかる作業ではなく、検索一つで済みます。
  • ポリシーは一度の設定でフリート全体に。 フリート全体での録画の強制オン/オフ、すべてのルームへのロゴ表示、共通のウェルカムメッセージ、既定のプレゼンテーションを、LMS に一切手を加えずに設定できます。
  • テナント。 テナントごとに個別の API シークレットを持ち、すべての呼び出しで検証されます。表示されるのは私たちのものではなく、お客様のブランディングと powered-by の表記です。
  • 学期に合わせて変わるキャパシティ。 インターフェースで作成するスケジュール、または 1 分ごとに確認するリアルタイムの負荷に基づいて動作し、キャパシティを追加する前に、クレジットの見通しに応じて警告し、あるいは追加を拒否します。現在は OVHcloud に対応しており、その他のプロバイダーにもご要望に応じて対応します。

ロールは実際に存在する業務に沿って 6 つ用意しています。管理者から、自動化用のエンドポイントにのみアクセスし、インターフェースには決して触れないマシンアカウントまであり、すべての操作は暗黙に許可されるのではなく、ロールごとに付与されます。サポート担当者、録画のレビュー担当者、品質保証担当者は、それぞれ自分の担当業務だけに正確にアクセスでき、それ以外には触れません。

移行は URL とシークレットだけ

クライアントは、すでに計算している共有シークレットのチェックサムを使って、標準の BigBlueButton API を呼び出し続けます。SHA-1 から SHA-512 までのチェックサムを受け付けるため、お客様の側で先に何かを刷新する必要はありません。ZcaleRight は呼び出しを認証し、配置し、プロキシし、会議と録画の状態を保持します。

実際の導入では、既存の環境の隣に ZcaleRight を立ち上げ、一つの連携先を向けてエンドツーエンドで経路を検証し、ご納得いただけた段階で残りを移行します。その間、BigBlueButton サーバーには一切手を加えないため、どの段階でも元に戻すことができます。

1.0.0 が意味するもの

1.0.0 は、市場がすでに求めていたものに、製品が成長して追いついた瞬間です。パンデミックによって機関全体がわずか数日でオンラインに移行したとき、さまざまな組織が、誰も想定していなかった問題を抱えて私たちのもとを訪れました。製品はそれらに応えながら成長してきました。製品のすべては、そうして積み重ねてきたものです。

これまでで最も厳しい試練は、私たち自身のものではありませんでした。ある教育企業が最初のロックダウンの最中にプラットフォームを立ち上げ、ゼロから 18 か月以内に、その市場の教育アプリのトップ 10 入りを果たしました。ライブ授業はその製品の一機能ではなく、製品そのものでした。そして、そのすべての授業を ZcaleRight が配置しました。投資家は、このソフトウェアを中核に据えた事業に 1,400 万ドルを投じました。そのような成長曲線に備えられる仕様書はありません。耐えるか、耐えないかのどちらかであり、このソフトウェアは耐え抜きました。

既定では私たちがホスティングと運用を担うため、お客様の負担がまた一つ増えるのではなく、サービスとしてご利用いただけます。ソフトウェアを自社のマシンに置く必要があるという規定がある場合も対応可能です。BigBlueButton サーバーの隣に設置し、お客様の会議が私たちを経由することは一切ありません。アップデートはお客様が選んだタイミングで私たちが適用し、契約は私たちのサーバーだけでなく、お客様のサーバーも対象とします。

ZcaleRight は、好意的に評価する理由のない人々による審査も受けています。マインツ大学の技術責任者は、ラインラント=プファルツ州の大学と学校のための BigBlueButton クラスターを構築する際に ZcaleRight を詳細に評価し、技術的な根拠に基づいて推奨しました。これは顧客の声ではなく、シニアエンジニアによる独立したレビューであり、それ以上の価値があります。

ZcaleRight は、BigBlueButton Certified Service Provider として、本番環境の BigBlueButton クラスターを日々運用しているチームが開発し、サポートしています。だからこそ製品はこのような形になっており、お問い合わせに対応する担当者は、お客様の問題にすでに出会ったことがあるのです。運用者についての情報や、運用に関する質問への率直な回答など、そのほかのすべては zcaleright.com でご覧いただけます。

この記事を共有