Pages

Wednesday, 1 August 2018

部署代理服务器Agora


本页为有防火墙的企业用户展示如何使用 Agora 提供的代理服务器安装包,部署代理服务器来使用 Agora 的服务。

Note:
本文内容不适用于 Agora Web SDK。

简介

目前有部分企业用户通过设置防火墙,来限制员工访问外网或非认可的网站。 如果这些企业用户需要使用 Agora 的服务,则可以通过使用 Agora 提供的代理服务器安装包并进行部署,将 Agora 支持的 IP 地址和端口添加到防火墙上,实现内网访问。

代理服务器工作原理

../_images/proxy_theory.jpg 代理服务器的工作原理如下:
  • 企业在企业网和公共互联网之间设置防火墙,以限制员工对未授权外网的访问
  • 在公共互联网上部署代理服务器,当企业设备向企业防火墙发送访问请求时,防火墙向代理服务器,然后代理服务器再向服务器发送访问请求
  • 服务器向代理服务器返回访问内容,代理服务器再通过企业防火墙将访问内容返回给企业设备
因此,企业 App 通过代理服务器访问 AgoraCloud 的大致步骤如下:
../_images/proxy_agora.jpg

部署及配置 Agora 代理服务器

Agora 提供一个开源的代理服务器安装包,支持企业用户自行下载并部署代理服务器。具体步骤如下:
  1. 访问网址 https://github.com/AgoraIO/proxy-for-rtc-sdk,下载并安装 install-ubuntu.sh 脚本。
  2. 在企业防火墙上添加 IP 地址和端口,允许内网访问。
  3. 在 Agora SDK 内调用如下接口,并将其中的参数设置为添加的 IP 地址和端口。
setParameters("{\"rtc.proxy_server\":[0, \"IP\", port]}");
名称 描述
IP 代理服务器的 IP 地址,形式为字符串,如 127.0.0.1
port 待添加到 Agora proxy 的端口数字,此处请直接填入 1080

部署多台代理服务器

在负载大、单个服务器无法支撑,或发生故障不可用的情况下,企业也可以布置多台代理服务器。预计一台代理服务器可以支撑 100 台设备。

DNS 配置下多台服务器轮询

使用 DNS 配置多台服务器时需注意:
  • 部署 Shadowsocks 集群
  • 多台服务器使用相同的域名
  • 服务器使用轮询机制以保障负载均衡
  • 代理服务器发生故障时,需要更新 DNS 记录

App 随机选择服务器

App 可以从代理服务器列表中随机选择,然后设置给 SDK。

from https://docs.agora.io/cn/2.2.1/product/Video/Quickstart%20Guide/proxy

No comments:

Post a Comment