对本地存储区域利用 Content Collaboration

贡献者

作者: Rob Sanders

读者

本参考体系结构文档面向寻求在客户数据中心内为 Citrix Content Collaboration 部署客户管理的存储区域的 IT 决策者、顾问、解决方案集成商和合作伙伴。

目标

Citrix Content Collaboration 允许客户选择存储其文件的位置。客户可以选择将文件存储在 Citrix 自己的云原生存储区域、数据中心或云中的客户存储区域位置或组合中。除此之外,本地存储区域还可作为现有存储库(如网络文件共享和 SharePoint Server 文档库)的网 Gateway。本文件的范围限于:

  • 本地存储区域的体系结构组件
  • 提供有关存储持久性文件对象的位置的指导
  • 提供有关配置 Citrix ADC 以获得最佳用户体验的指导
  • 将防病毒解决方案集成到本地存储区域

用例

客户出于不同的原因部署自己的客户管理的存储区域。典型用例包括:

  • 数据主权:为了遵守本地或内部合规性法规,客户可能需要将所有文件存储在自己的数据中心。通过客户管理的存储区域,客户可以从 Citrix Content Collaboration 的工作效率和协作功能中获益,同时将所有文件存储在自己的数据中心中。
  • 能:Citrix 在多个地理区域中托管存储区域,但某些区域中的客户可能无法访问能够提供员工期望的用户体验的区域。通过部署客户管理的存储区域,这些客户可以托管离用户更近的文件对象,从而减少传输文件时的延迟。这为员工和外部合作者提供了更好的用户体验。
  • 现代化现有存储库:迁移文件并不总是可能的,或者可能会耗时。使用 Citrix Content Collaboration,这并不意味着员工无法或必须等待现代方式访问和使用文件。通过部署客户管理的存储区域,客户可以直接在任何设备上解锁现代工作风格,而无需迁移现有数据。
  • 保护基础设施投资:通过在本地托管存储区域并利用已部署的存储硬件(如 NAS),客户可以提供现代化的云原生协作平台,而不会使现有的存储硬件过时。

Content Collaboration 平台概述

Citrix Content Collaboration 是一个企业内容协作平台,使 IT 能够提供强大的数据共享和同步服务,满足用户的移动性和协作需求以及企业的数据安全要求。Citrix Content Collaboration 可灵活选择文件静态存储位置,可在 Citrix 管理的云本机存储库中或由客户管理的存储存储库中。

Citrix Content Collaboration 由三个主要组件组成:Content Collaboration 管理平面、存储区域和 Citrix Files 应用程序。

  • 管理层:一个 Citrix 管理的组件,托管 Content Collaboration 服务和业务逻辑,托管在美国或欧盟。
  • 存储区域:客户文件的存储位置。客户可以选择存储文件的位置,这些文件由 Citrix 托管,或由客户托管在其自己的数据中心或在其自己的公有云服务订阅中托管。此参考体系结构将侧重于客户数据中心内托管的客户管理存储区域。
  • Citrix Files:提供对 Content Collaboration 服务的访问权限的本地应用程序。Citrix Files 应用程序可用于 Windows, macOS, iOS 和 Android, 除了 Outlook 和 Gmail.

Citrix Content Collaboration 概述

客户管理的存储区域体系结构

客户管理的存储区域存储上载到 Content Collaboration 服务的所有文件对象。它还为员工和在这些文件上进行协作的外部人员提供了对这些文件对象的访问权限。存储区域的第三个也是最后一个功能是提供访问本地托管的现有存储库,例如网络文件共享、SharePoint Server 文档库和 OpenText Documentum 文档管理系统。为了提供这些功能,存储区域包括这些组件。

  • 存储区域 Controller:托管存储区域控制器服务的基于 Windows 的 Web 服务器。
  • 存储库:Citrix Files 对象的存储位置。此位置通常是网络文件共享,但也可以是公有云存储位置,如 Amazon S3、Microsoft Azure 存储或谷歌云存储。
  • Citrix ADC:应用程序交付 Controller 为到存储区域的入站流量提供网络负载平衡、SSL 卸载和身份验证服务。

存储区域控制器

存储区域 Controller 是由 ASP.NET Web 服务和后台 Windows 服务组成的 Windows 软件包。控制器软件在 Microsoft Windows Server 与 Internet Information Services (IIS) 之上运行。存储区域 Controller 的系统要求位于此处:https://docs.citrix.com/en-us/storagezones-controller/5-0/system-requirements.html

要减少服务器开销和攻击面,建议在启用 Internet 信息服务器和 ASP.NET 应用程序服务器角色的情况下使用 Windows Server 核心实例。

可扩展性

所需的存储区域控制器数量取决于存储区域部署的使用方式。这个数字受若干因素的影响。这些因素包括但不限于:

  • 正在存储的新文件和更新文件数量:影响存储区域 Controller 和存储库之间所需的带宽,以防止文件 I/O 队列在存储区域控制器上构建。
  • 存储文件的大小:传入文件分多个段上传,存储区域控制器将这些段合并回到一个文件对象中。合并这些部件可提高 CPU 利用率,因为更大的文件需要更多的 CPU 处理能力。
  • 并发会话数:对于文件下载或文件上传,到存储区域的并发文件传输会话数会影响所需 Controller 主机数量。
  • 本地连接器的使用:当用户打开连接器或浏览到其他文件夹时,存储区域控制器会实时检索现有存储库中文件和文件夹的元数据。

建议每个存储区至少部署两个存储区域控制器,以实现高可用性,Citrix ADC 为入站流量提供负载平衡服务。此类部署的基准数字是 Content Collaboration 租户内的 5000 个用户,每个额外的控制器主机将有 2500 个用户添加到存储区域。存储区域的实际使用情况将决定需要多少 Controller 主机。客户部署范围从 2 台控制器主机(其中用户正在处理大文件),到 4 台控制器主机(25 万用户),其中用例仅限于偶尔共享文件。

内部测试显示,每个存储区域的最佳控制器数量最大为 4。对于单个站点中需要更多控制器的部署,建议设置多个存储区域。

详情请参阅性能监视本章。

连接器

存储区域连接器功能允许员工安全地访问现有存储库。支持的存储库包括网络文件共享、SharePoint Server 文档库和 OpenText Documentum。访问配置的连接器时,将请求用户使用其 Active Directory 凭据进行身份验证。存储区域 Controller 将使用 AD 模拟代表用户访问底层存储库。为此,所有存储区控制器主机都需要是域成员,并且需要在 Active Directory 中配置委派以允许主机访问这些资源。

存储库

网络文件共享

网络文件共享是客户管理的存储区域最常用的存储库。网络文件共享可以托管在单独的文件服务器上,也可以直接托管在支持此功能的存储存储库上。建议使用低延迟、高 IOPS 网络连接存储 (NAS) 托管 Content Collaboration 存储库,为文件传输提供最佳的用户体验。存储区域将在持久存储文件夹中创建多个文件夹,以增加存储库中可存储的文件总数。建议使用现代文件服务器,以便能够利用 SMBv3 在存储区域 Controller 主机和存储区域存储库之间进行文件传输。

重要提示:不支持使用 Microsoft 的 分布式文件系统(DFS-R) 的复制功能。DFS-R 锁定文件进行复制,这可能会中断文件成功上载到存储区域。上传到存储区域的所有文件都会分成多个部分,当所有部分到达并经过验证时,存储区域控制器将这些部分合并为一个文件。由于 DFS-R 锁定了单个段,存储区域控制器无法完成此操作,并且上载失败。

带内部存储库的客户管理存储区域

公有云存储

公有云存储存储库可用于存储文件对象,而不是使用网络文件共享。存储区域 Controller 主机将使用本机 API 执行文件传输。在此体系结构中,单独的网络文件共享被用作本地缓存。本地缓存将存储正在上传到存储区域或从存储区域下载的最新文件。经验得知,最近使用的文件通常会同步到不同的设备或与其他人共享。无需每次从公有云存储库中检索这些文件,将增加用户体验,减少存储区域和云存储库之间使用的带宽量。

带云存储库的客户管理存储区

文件对象的加密

存储区域允许在文件级别上配置所有文件对象的加密。存储区域 Controller 主机通过使用在存储区域初始设置期间生成的 AES 256 位加密密钥来执行加密。启用加密将影响存储区域 Controller 主机的性能,因为加密和解密文件对象将提高 CPU 利用率。

建议仅在必须根据企业安全策略启用对所有文件的加密且没有其他加密存储层的方法时才使用此选项。由存储区域 Controller 主机进行加密将不再对存储区域内的永久存储文件夹执行重复数据删除的功能。在重建存储区域时,如果没有访问包含加密密钥或存储区域配置密码短语的 SCKeys.txt 文件,则无法恢复数据。

Citrix ADC

应用程序交付 Controller 用于前置存储区域。Citrix ADC 执行以下功能:

  • SSL 卸载:存储区域的传入 SSL 会话在 ADC 上终止。根据客户的安全性和监视要求,ADC 和存储区域控制器主机之间的流量可以进行加密或未加密。
  • 负载平衡:ADC 在存储区域 Controller 主机之间进行负载平衡,以提供高可用性。为了确定哪个存储区域 Controller 主机可以运行,ADC 将监视每个主机上的检测信号结果。对检测信号的响应无效的主机被视为脱机,并且不会将文件传输会话定向到这些主机。
  • 身份验证:用户在访问连接器时需要进行身份验证。最佳做法是在 DMZ 内执行此身份验证,而不要让远程用户进入 LAN 未经身份验证。通过在 Citrix ADC 上配置 Kerberos 约束委派,从加入域的设备访问连接器的本地用户可以无缝地进行身份验证,而无需提供凭据。
  • 内容切换:通往 Citrix 文件存储库和连接器的流量彼此不同:连接器需要身份验证,而通往 Citrix 文件存储库的流量始终没有身份验证。这是由于允许与外部用户共享文件,外部用户没有凭据来通过客户的 Active Directory 进行身份验证。由于这种差异,ADC 执行内容切换以分隔此流量,并将身份验证策略应用于连接器流量的负载均衡器。在适用于 Citrix Files 流量的负载平衡器上,将配置响应者策略以验证请求的真实性:只有来自 Content Collaboration 管理平面的请求的请求才允许通过存储区域控制器主机。

分离本地和远程用户会话

为了为本地用户提供最佳用户体验,Citrix ADC 上的配置将为本地用户和远程用户分开。本地用户被视为从已加入域的设备或使用 Citrix Endpoint Management 管理的 iOS 和 Android 上的 Citrix Files 应用程序访问存储区域。在 ADC 上部署内部和外部接口的另一个原因是为了提高安全性。Citrix ADC 位于 DMZ 内部,外部接口具有 DMZ 范围内的 IP 地址,内部接口具有本地范围内的 IP 地址。要允许本地用户访问正确的 IP 地址,需要配置 拆分 DNS ,因为存储区域只有一个公有 DNS 名称和证书。

本地用户从内部负载平衡服务器或具有内部 IP 地址的内容交换服务器访问存储区域。负载平衡服务器或内容交换服务器的选择取决于是否需要在 Citrix ADC 上进行连接器身份验证。在这种情况下,需要内容交换服务器,本地用户连接器的负载平衡服务器使用 Kerberos 在访问连接器时对用户进行身份验证。远程用户从具有 DMZ 范围内 IP 地址的外部内容交换机访问存储区域。用于远程用户的连接器的负载平衡服务器在访问连接器时使用基本身份验证(用户名和密码)对用户进行身份验证。存储区域 Controller 主机上的连接器身份验证使用 Windows 身份验证,连接器存储库使用在存储库上配置的身份验证方法。对于 SharePoint 服务器,这通常是 Kerberos 身份验证,对于文件服务器,通常是 NTLM 身份验证。

单 Citrix ADC 部署

注意:除了在位于 DMZ 和本地网络边界的单个 ADC 上配置内部和外部内容交换服务器外,还可以为外部用户配置 DMZ 内部的 Citrix ADC,为内部用户配置本地网络上的 Citrix ADC。

双 Citrix ADC 部署

与防病毒解决方案集成

上传到存储区域的所有文件都应扫描病毒和恶意软件。由于文件元数据与文件对象分离,因此不建议直接从存储区域扫描和删除受感染或可疑文件。虽然这将删除文件,但文件元数据将保留,用户将在其 Citrix Files 应用程序和 WebUI 中看到该文件。当他们尝试访问该文件时,将显示一条错误消息,指出该文件不存在。

为了提供更好的用户体验并保持所需的安全级别,存储区域可以通过 ICAP 界面利用防病毒解决方案。收到新的和更新的文件后,存储区域 Controller 主机将该文件添加到扫描队列。该文件通过 ICAP 发送到防病毒服务器,扫描文件后,防病毒服务器返回结果。存储区域 Controller 主机将此状态上传到存储在 Content Collaboration 管理平面内的文件元数据中。根据为租户帐户配置的防病毒策略,用户将受到限制,无法下载或共享标记为受感染的文件。

性能监视

存储区域 Controller 是在 Internet 信息服务器上运行的 ASP.NET Web 应用程序。监视存储区域控制器主机的性能遵循监视运行 ASP.NET 应用程序的任何 Web 服务器的一般原则。以下是用于确定性能问题的建议指标。

内存

  • 可用兆字节:不应低于可用 RAM 总量 20% 的持续值。
  • 页面输入/秒:不应超过 15。值越低,存储区域 Controller 的性能越好。
  • 页数/秒:不应超过 5 或更高的持续值。

逻辑磁盘

  • % 磁盘时间:不应超过 50% 或更高的持续值。
  • 平均磁盘队列长度:不应超过主轴数加 2。
  • 平均磁盘读取队列长度:应低于 2。
  • 平均磁盘写入队列长度:应低于 4。
  • 平均磁盘秒/读取:平均值应为 15 毫秒或更低,最大值为 25 毫秒。
  • 平均磁盘秒/写入:平均值应为 15 毫秒或更低,最大值为 25 毫秒。
  • 平均磁盘/传输:应低于 20ms。

处理器

处理器性能监视器应针对系统以及运行存储区域 Controller 应用程序的 W3WP 进程执行。 如果这些值彼此接近,则 Web 服务会消耗 CPU,否则其他进程会影响系统的性能。

  • 百分比特权时间:不应超过 75% 或更高的持续值。
  • 百分比处理器时间:不应超过 85% 或更高的持续值。

系统

  • 内容切换/秒:每个 CPU 不应超过 15000/秒。

Web 服务缓存

  • 内核:URI 缓存命中率%:不应低于 80%。

ASP.NET Apps v4.0.30319(总数

  • 请求等待时间:不应超过 1000 毫秒。

总结

Citrix Content Collaboration 能够将文件存储在最适合组织需求的位置中。本文档介绍了在自己的数据中心中部署 Content Collaboration 存储区域的体系结构以及所需的所有组件。

组织中的 Content Collaboration 服务的用例会影响所需的组件:

  • 将存储永久文件对象的位置,无论是本地还是公有云存储存储库中。
  • 通过存储区域连接器访问 Content Collaboration 存储存储库和现有存储库。
  • 访问存储区域的用户的位置和设备类型,以及外部协作的类型。

所述体系结构涵盖了我们的客户与 Citrix 服务团队一起实施的最常见的部署模型。最常见的用例是通过存储区域连接器访问 Content Collaboration 存储存储库和现有存储库。

引用

用于 Citrix Content Collaboration 的资源

存储区域 Controller 的资源

对本地存储区域利用 Content Collaboration