多租户(高级)

配置数据库用户帐户

SQL Server 和 Oracle 在如下所述的数据库概念中使用不同的术语。

SQL Server Oracle
多个租户执行的进程 数据库服务器 数据库
一个租户的数据集 数据库 表空间/用户

以下部分在 SQL Server 和 Oracle 二者中都使用了 SQL Server 术语。

SQL Server

由于多租户要求软件能够创建数据库,因此在 SQL Server 上需要使用 dbcreator 角色。例如:

对于主租户的用户角色,必须向主数据库分配 DB 所有者:

如果需要,可以进一步细化权限,以便仅包括修改架构和访问数据的能力。

使用 dbcreator 角色时,同一个用户将自动拥有该帐户所创建的数据库。例如,下面是创建第一个租户后该用户的属性:

要在辅助数据库服务器上创建第一个帐户,仅需要使用 dbcreator 服务器角色。不必定义用户映射。

Oracle

Oracle 中的多租户与 SQL Server 类似,但有几个重要区别。其中,SQL Server 是每数据库服务器一个用户帐户,Oracle 是每租户一个用户帐户。安装趋势科技服务器深度安全防护系统的用户映射到主租户。可以授予该用户分配其他用户和表空间的权限。

虽然 Oracle 允许在用引号括起来的数据库对象名称中使用特殊字符,但趋势科技服务器深度安全防护系统不支持在数据库对象名称中使用特殊字符。Oracle Web 站点上的以下页面介绍了不带引号的名称中允许使用的字符:http://docs.oracle.com/cd/B28359_01/server.111/b28286/sql_elements008.htm#SQLRF00223
趋势科技服务器深度安全防护系统从主(主租户)Oracle 数据库衍生租户数据库名称。例如,如果主数据库是 "MAINDB",则第一个租户的数据库名称将是 "MAINDB_1",第二个租户的数据库名称将是 "MAINDB_2",依此类推。(保持主数据库名称简短,可使租户数据库名称更易读。)

如果启用了多租户,则必须分配下列 Oracle 权限:

租户被创建为使用长随机密码的用户,并授予下列权限:

对于辅助 Oracle 服务器,必须创建第一个用户帐户(启动用户帐户)。此用户将有一个本质上为空的表空间。配置与主用户帐户相同。

API

趋势科技服务器深度安全防护系统管理中心包括一些 REST API,可用于:

  1. 启用多租户
  2. 管理租户
  3. 访问监控数据
  4. 访问费用分摊(防护活动)数据
  5. 管理辅助数据库服务器

此外,旧版 SOAP API 包含一个新的身份验证方法,可接受租户帐户名称作为第三个参数。

有关 REST API 的其他信息,请参阅 REST API 文档。

升级

与先前版本相比,升级没有变化。将执行安装程序,并检测现有安装。它会提供升级选项。如果选择了升级,安装程序先通知其他节点关闭,再开始升级过程。

首先升级主租户,然后并行升级其他租户(一次 5 个)。一旦安装程序完成,将对其余管理中心节点执行同一个安装包。

如果在租户升级期间出现问题,租户的状态(在管理 > 租户页面上)将显示为数据库升级失败 (脱机)。可以使用租户界面强制执行升级过程。如果强制执行升级不起作用,请与技术支持人员联系。

支持租户

在某些情况下,主租户可能会要求访问租户的用户界面。“租户列表”和“租户属性”页面提供了一个作为给定租户进行认证的选项,授予其即时只读访问权限。

用户将使用前缀 "support_" 以租户特殊帐户的身份登录。例如,如果主租户用户 jdoe 以租户身份登录,则会创建一个名为 "support_jdoe"、具有“完全访问权限”角色的帐户。一旦支持用户超时或从帐户注销,即会删除该用户。

租户可以在系统事件中看到此用户帐户的创建、登录、注销、删除以及任何其他操作。

主租户中的用户还有其他诊断工具可供使用:

  1. 管理 > 系统信息页面包含有关租户内存使用和线程状态的其他信息。此工具可以直接使用,也可以为趋势科技技术支持提供帮助。
  2. 管理中心节点磁盘上的 server0.log 包含导致生成日志的租户(和用户,如果适用)的名称的其他信息。这有助于确定问题的根源。

在某些情况下,租户需要使用 GUI 中尚不提供的定制调整。这通常应趋势科技技术支持的要求。用于更改这些设置的命令行工具可接受参数:

-Tenantname "account name"

以便指示特定租户处的设置更改或其他命令行操作。如果忽略,则操作在主租户上执行。

负载平衡器

缺省情况下,多节点管理中心向所有客户端和虚拟设备提供所有管理中心节点的地址。客户端和虚拟设备使用地址列表随机选择一个要联系的节点,并继续尝试列表中的其余地址,直到无法访问任何节点(即全部忙)。如果它无法访问任何节点,它将等待直到下一个波动信号,并重试。这种方法在管理中心节点数固定的环境中非常有效,不必在管理中心节点前端配置负载平衡器,即可获得可用性和可伸缩性。

在多租户环境中,可能需要按需添加和删除管理中心节点(可能使用云环境的自动缩放功能)。在这种情况下,添加和删除管理中心将导致更新环境中的每个客户端和虚拟设备。要避免这种更新,可以使用负载平衡器设置。

负载平衡器可配置为针对不同类型的网络通信使用不同的端口,或者,如果负载平衡器支持端口重定向,则可用于在端口 443 上使用三个负载平衡器来公开所有必需的协议:

在所有情况下,负载平衡器应配置为使用粘滞会话的 TCP 负载平衡器(而非 SSL 终止)。这可确保一个给定的通信交换自始至终在客户端/虚拟设备和管理中心之间进行。下一个连接可能平衡到另一个节点。

使用趋势科技服务器深度安全防护系统虚拟设备的多租户

如果在 VMware 环境中部署了趋势科技服务器深度安全防护系统,则可以在主租户中配置 vCenter 和 vShield 连接器并在其他租户中配置 vCloud 连接器。如果配置正确,主租户可以看到 ESXi Server、趋势科技服务器深度安全防护系统虚拟设备以及其他基础架构组件,而租户只能看到在 vCloud 环境中属于他们的 VM。他们可以进一步激活这些 VM 而不部署任何客户端技术。

要启用此类环境,必须转至管理 > 系统设置 > 客户端,然后选中允许 vCloud VM 的设备保护复选框。

有关 vCloud 集成的更多信息,请参阅《安装指南》。

技术详细信息

每个租户数据库的开销大约为 100MB 磁盘空间(归因于填充系统的初始规则、策略和事件)。

由于创建架构和填充初始数据,租户的创建需要 30 秒至 4 分钟的时间。这可确保每一个新租户有最新的配置,并消除管理数据库模板的负担,特别是在多个数据库服务器之间。