你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

多租户解决方案中的租户生命周期考虑因素

在考虑多租户体系结构时,重要的是考虑租户生命周期中的所有不同阶段。 本页为技术决策者提供有关生命周期的各个阶段以及每个阶段的重要考虑因素的指导。

试用租户

构建 SaaS 解决方案时,应该考虑到许多客户在承诺购买解决方案之前会请求或者要求试用。

对于试用,需要考虑以下独特因素:

  • 服务要求:试用数据是否应遵守与完整版客户数据相同的数据安全性、性能和服务级别要求?
  • 基础结构:是要为试用租户使用与完整版客户相同的基础结构,还是为试用租户使用专用基础结构?
  • 迁移:如果客户在试用后购买了服务,他们如何将数据从其试用租户迁移到付费租户?
  • 请求过程:在谁可以请求试用方面是否存在限制? 如何防止滥用解决方案? 是否允许自动创建试用租户,或者团队是否参与每个请求?
  • 限制:你希望或者需要对试用客户施加哪些限制,例如时间限制、功能限制或性能相关的限制?

在某些情况下,免费增值定价模型可以替代试用版。

加入新租户

加入新租户时,请考虑以下因素:

  • 过程:加入过程是自助式的、自动的还是手动的?
  • 数据驻留:租户在数据驻留方面是否有什么具体要求? 例如,是否需要满足生效的数据主权法规要求?
  • 合规性:租户是否必须满足什么合规标准(例如 PCI DSS、HIPAA 等)?
  • 灾难恢复:租户是否有什么具体的灾难恢复要求,例如恢复时间目标 (RTO) 或恢复点目标 (RPO)? 这些要求与你向其他租户提供的保证是否不同?
  • 信息:需要哪些信息才能完全加入租户? 例如,是否需要知道其组织的法定名称? 是否需要其公司徽标来为应用程序添加品牌;如果需要,那么需要多大的文件大小和什么格式?
  • 计费:平台是否提供不同的定价选项和计费模型?
  • 环境:租户是否需要预生产环境? 是否对该环境的可用性设定了预期? 该环境是暂用的(按需)还是必须始终可用?

加入租户后,他们会进入“照常营业”状态。 但是,即使租户处于这种状态,也仍有可能发生几个重要的生命周期事件。

更新租户的基础结构

需要考虑如何将更新应用于租户的基础结构。 可以在不同的时间为不同的租户应用更新。

有关更新租户部署的其他注意事项,请参阅更新

缩放租户的基础结构

考虑租户是否存在季节性业务模式,或者以其他方式更改解决方案的使用程度。

例如,如果为零售商提供某种解决方案,则可能需要预料到在某些地理区域,一年中的某些时间业务特别繁忙,而在其他时间则不温不火。 请考虑此淡旺季变化是否会影响设计和缩放解决方案的方式。 请注意淡旺季变化对近邻干扰问题的影响,例如,一部分租户遇到负载突然意外增加而导致其他租户的性能降低的情况。 可以考虑应用缓解措施,这可能包括缩放单个租户的基础结构、在部署之间移动租户,并预配足够的容量级别来应对流量的高峰和低谷。

在基础结构之间移动租户

你可能出于多种原因需要在基础结构之间移动租户,原因包括:

  • 再平衡:按照垂直分区方法将租户映射到基础结构,并且需要将租户移动到其他部署以重新平衡负载。
  • 升级:租户会升级 SKU 或定价层,他们需要转移到与其他租户隔离程度更高的单租户专用部署。
  • 迁移:租户请求将其数据移动到专用数据存储。
  • 区域移动:租户要求将其数据移到新的地理区域。 这种情况可能发生在公司收购中,或者法律或地缘政治局势发生变化时。

考虑如何移动租户的数据,以及如何将请求重定向到托管其实例的一组新基础结构中。 此外,应考虑移动租户是否会导致停机,并确保租户充分意识到此风险。

合并和拆分租户

我们倾向于将租户或客户视为静态不变的实体。 但在现实中,往往并非如此。 例如:

  • 在企业方案中,公司可能被收购或并购,这包括位于不同地理区域的公司。
  • 同样,在企业方案中,公司可能被拆分或资产剥离。
  • 在消费者方案中,个人用户可能会加入或离开家庭。

考虑是否需要提供管理数据、用户身份和资源的合并与分离的功能。 此外,考虑数据所有权如何影响合并和拆分操作的处理。 例如,考虑某个消费型家庭摄影应用程序用于相互分享照片。 照片是由提供这些照片的个人家庭成员拥有,还是由整个家庭拥有? 如果用户离开家庭,是要删除他们的数据还是将其保留在家庭的数据集中? 如果用户加入另一个家庭,他们的旧照片是否应与他们一起转移?

登出租户

偶尔从解决方案中删除租户也是不可避免的事。 在多租户解决方案中,这带来了一些重要的考虑因素,包括:

  • 保持期:应将客户数据保留多长时间? 是否有法律要求规定在特定一段时间后销毁数据?
  • 重新加入:是否应该为客户提供重新加入的功能?
  • 再平衡:如果运行共享基础结构,是否需要重新平衡租户在基础结构中的分配?

停用和重新激活租户

在某些情况下,可能需要停用或重新激活客户的帐户。 例如:

  • 客户已请求停用。 在消费者系统中,客户可能会选择取消订阅。
  • 不能向客户计费,因此需要停用订阅。

停用与登出的不同之处在于,它是一种临时状态。 但是,在一段时间后,你可以选择登出某个已停用的租户。

作者

本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。

主要作者:

  • John Downs | FastTrack for Azure 首席客户工程师

其他参与者:

若要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。

后续步骤

考虑用于解决方案的定价模型