TCP で Videobridge を有効にする

このセクションでは、TCP ポート 4443 上の HCL Sametime ミーティング・サーバー上のメディア・ストリーム用に TCP を設定する手順を示します。

始める前に

ファイアウォールで次の外部ポートを開く必要があります。ネットワーク・コマンドを使用して確認します。例えば、 netstat #4443/tcp は TCP を使用した RTP メディアに使用されます。

このタスクについて

Docker の場合の手順

これらの設定を使用して、UDP と TCP の両方を許可します。

クライアントは最初に UDP を試み、失敗した場合は TCP が使用されます。

  1. .env ファイルを開き、「JVB_TCP_HARVESTER_DISABLED」構成を探し、値を false に変更します。
    JVB_TCP_HARVESTER_DISABLED=false
  2. .env ファイルで、JVB_TCP_PORT フィールドのエントリーを探します。値の前に # がある場合は、コメント # を削除して設定を有効にします。
    JVB_TCP_PORT=4443
    注: #JVB_TCP_PORTは、TCP Harvester が有効なときに Jitsi Videobridge によって使用されるメディアの TCP ポートです。
  3. docker-compose.yaml を開きます。JVB コンポーネントの JVB_TCP_PORT セクションを追加します。
    # Video bridge
    jvb:
    ports:
    - '${JVB_PORT}:${JVB_PORT}/udp'
    - '${JVB_TCP_PORT}:${JVB_TCP_PORT}'

上記の構成により、A/V メディアは 4443 メディア・ポートとメディア・ポート状態が「リスニング」から「確立」に正常に変更されます。

tcp6 0 475 a82b7a871950:4443 192.168.75.1:49295 ESTABLISHED

これらの設定を使用して、強制的に TCP のみを実行します。

TCP プロトコルに完全に切り替えて UDP のサポートを削除する必要がある場合は、上記の設定を完了し、docker-compose.yaml ファイルから JVB_PORT を削除し、.env ファイルからエントリーを削除します。
# Video bridge
jvb:
ports:
#- '${JVB_PORT}:${JVB_PORT}/udp'
- '${JVB_TCP_PORT}:${JVB_TCP_PORT}'

変更内容を適用するには、 「ミーティング設定の変更の有効化」の手順に従います。

Kubernetes の場合の手順:

これらの設定を使用して、UDP と TCP の両方を許可します。

UDP が最初に試行され、失敗した場合は TCP が使用されます。UDP を完全に無効にする必要がある場合は、UDP をネットワークでブロックする必要があります。

  1. helm/charts/video/templates/deployment.yaml を開き、環境変数として以下を追加します。JVB_PORT 検索して、挿入場所を表示します。
    - name: JVB_TCP_PORT
    value: "4443"
    - name: JVB_TCP_HARVESTER_DISABLED
    value: "false"
    
これらのステップは AWS EKS でのみ必要です。helm/charts/video/templates/deployment.yaml で、ライフサイクル・セクションを見つけます。その下に preStop が表示されます。section. 以下を兄弟セクションとして挿入して preStop します。
postStart:
exec:
command: ["/bin/sh", "-c", "echo 'org.ice4j.ice.harvest.ALLOWED_INTERFACES=eth0' >> /defaults/sip-communicator.properties"]

ミーティング設定の変更の有効化」の手順を使用して設定を保存し、再デプロイします。

ライブ・デプロイメントを更新するには、以下のコマンドを使用します。
kubectl set env deploy/video -e JVB_TCP_PORT=4443 -e JVB_TCP_HARVESTER_DISABLED=false
AWS にデプロイされている場合は、以下のコマンドを使用してライブ・デプロイメントを更新します。
kubectl patch deploy/video -p '{"spec":{"template":{"spec":{"containers":[{"name":"jvb","lifecycle":{"postStart":{"exec":{"command":["/bin/sh", "-c", "echo \"org.ice4j.ice.harvest.ALLOWED_INTERFACES=eth0\" >> /defaults/sip-communicator.properties"]}}}}]}}}}'

以下のステップを使用して、AWS から UDP ポート 30000 を削除します。

  1. AWS コンソールを開き、EC2 ダッシュボードに移動します。
  2. 「セキュリティー・グループ」をクリックします。
  3. eksctl-<クラスター名>-nodegroup-video/SG という名前のセキュリティー・グループを検索します。
  4. リストからポート 30000 / UDP を見つけ、 「削除」 アイコンをクリックします。
  5. 「保存」をクリックします。