添加负载平衡器

可以通过在多个节点上运行网关并配置负载平衡器在网关之间分配请求,从而提高 Tableau Server 的可靠性。与可以处于主动或被动状态的存储库进程不同,所有网关进程都必须处于主动状态。如果群集中的一个网关变得不可用,负载平衡器将停止向其发送请求。您选择的负载平衡器算法决定网关路由客户端请求的方式。

注意:如果您将使用 Kerberos 身份验证,则在将 Tableau Server 配置为使用 Kerberos 之前,必须针对负载平衡器配置 Tableau Server。有关详细信息,请参见配置 Kerberos

负载平衡器不支持 Windows SSPI 身份验证。

在配置您的负载平衡器以便与 Tableau Server 一起使用时,请注意以下事项:

  • 已测试负载平衡器:具有多个网关的 Tableau Server 群集已使用 Apache 和 F5 负载平衡器进行了测试。

    如果使用 Apache 负载平衡器并且创建自定义管理视图,则需要直接连接到 Tableau Server 存储库。不能通过负载平衡器进行连接。

  • Tableau Server URL:当负载平衡器位于 Tableau Server 群集前端时,Tableau Server 用户所访问的 URL 将属于负载平衡器而不是初始 Tableau Server 节点。

  • 单一负载均衡器端点:必须为单一 URL 端点配置负载均衡器。不能配置不同的端点主机以重定向到同一 Tableau Server 部署。单一外部 URL 是在配置 Tableau Server 时在 gateway.public.host 中定义的,如以下过程中所述。

  • 受信任主机设置:必须将运行负载平衡器的计算机作为受信任主机向 Tableau Server 标识。请参见下面的过程了解如何配置 Tableau Server。

  • 代理服务器配置:用于将负载平衡器标识给 Tableau Server 的设置与用于标识代理服务器的设置相同。如果 Tableau Server 群集需要代理服务器和负载平衡器,那么二者都必须使用 gateway.public.host 中定义的单一外部 URL,并且必须在 gateway.trusted gateway.trusted_hosts 中指定所有代理服务器和负载平衡器。有关详细信息,请参见针对 Tableau Server 配置代理

配置 Tableau Server 以使用负载平衡器

使用以下键值对针对负载平衡器配置 Tableau Server。您可以使用 tsm configuration set 命令单独设置值。

或者,使用本主题末尾的配置文件模板示例创建一个 configKey json 文件。使用适当的值填充各个选项之后,使用 tsm 命令传递 json 文件并应用设置:

负载平衡器配置键值对

本部分中介绍的键值对可以使用 tsm configuration set 命令进行设置。设置所有值后,请运行以下命令:

tsm pending-changes apply

gateway.public.host

值:name

name 是将用于通过负载平衡器访问 Tableau Server 的 URL。

例如,如果通过在浏览器地址栏中输入 tableau.example.com 来访问 Tableau Server,请输入以下命令:

tsm configuration set -k gateway.public.host -v "tableau.example.com"

gateway.public.port

值:port_number

默认情况下,Tableau 假定负载平衡器在端口 80 上侦听外部通信。使用此键来指定其他端口。

举例来说,如果为 SSL 配置了负载平衡器并在端口 443 上侦听,请输入以下命令:

tsm configuration set -k gateway.public.port -v "443"

gateway.trusted

值:server

指定负载平衡器的 IPv4 地址或主机名称。如果您使用内部负载平衡器,则必须使用 IP 地址,而不是主机名。

server 的值可以是逗号分隔列表,例如:

tsm configuration set -k gateway.trusted -v "10.32.139.45, 10.32.139.46, 10.32.139.47"

tsm configuration set -k gateway.trusted -v "proxy1, proxy2, proxy3"

gateway.trusted_hosts

值:

为负载平衡器指定备用名称,例如它的完全限定域名、任何非完全限定域名和任何别名。这些是用户可能在浏览器中键入的名称。用逗号分隔每个名称:

tsm configuration set -k gateway.trusted_hosts -v "name1, name2, name3"

例如:

tsm configuration set -k gateway.trusted_hosts -v "lb.example.com, lb, ftp.example.com, www.example.com"

在大多数情况下,如果没有负载均衡器的备用名称,您可以为此键输入与您为 gateway.public.host 键所输入值相同的值。

配置模板示例

通过自定义以下配置模板示例并创建一个 configKey json 文件,您可以在一个操作中配置所有设置。

请参阅上面的键值对描述来自定义组织的值。

{
 "configKeys": {
	"gateway.public.host": "tableau.example.com",
	"gateway.public.port": "443",
	"gateway.trusted": "proxy1, proxy2, proxy3",
	"gateway.trusted_hosts": "lb.example.com, lb, ftp.example.com, www.example.com"
	}
}

完成后,保存 json 文件。

使用 tsm 传递 json 文件来设置配置,然后通过运行以下命令来应用设置:

tsm settings import -f /path/to/file.json

tsm pending-changes apply

有关使用 configKey 方案的详细信息,请参阅配置文件示例

感谢您的反馈!