你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
考虑多租户体系结构时,请务必考虑租户生命周期中的所有不同阶段。 在此页上,我们为技术决策者提供有关生命周期阶段和每个阶段的重要注意事项的指导。
试用租户
构建 SaaS 解决方案时,请考虑许多客户在承诺购买解决方案之前请求或要求试用。
试用带来了以下独特的注意事项:
- 服务要求: 试用是否应遵循与完整客户的数据相同的数据安全性、性能和服务级别要求?
- 基础设施: 应对试用租户使用与完整客户相同的基础结构,还是应该为试用租户使用专用基础结构?
- 迁移: 如果客户在试用后购买服务,他们将如何将数据从试用租户迁移到付费租户?
- 请求过程: 谁可以请求试用是否有限制? 如何防止滥用解决方案? 是否允许自动创建试用租户,或者团队是否参与每个请求?
- 限制: 你希望或需要对试用客户施加哪些限制,例如时间限制、功能限制或性能限制?
在某些情况下, 免费定价模型 可以是提供试用版的替代方法。
加入新租户
载入新租户时,请考虑以下问题:
- 过程: 载入是自助服务、自动化还是手动流程?
- 数据驻留: 租户是否有关于数据驻留的特定要求? 例如,数据主权法规是否有效?
- 合规: 租户是否必须满足任何符合性标准(如 PCI DSS、HIPAA 等)?
- 灾难恢复: 租户是否有任何特定的灾难恢复要求,例如恢复时间目标(RTO)或恢复点目标(RPO)? 这些与向其他租户提供的保证不同吗?
- 信息:需要哪些信息才能完全加入租户? 例如,是否需要知道其组织的法定名称? 是否需要其公司徽标来标记应用程序,如果是,则需要哪种文件大小和格式?
- 计费: 平台是否提供不同的定价选项和计费模型?
- 环境: 租户是否需要预生产环境? 是否对该环境的可用性设定了预期? 它是暂时性的(按需)还是始终可用?
在租户加入后,他们会进入“正常运营”状态。 但是,仍有一些重要的生命周期事件可以发生,即使它们处于此状态也是如此。
更新租户的基础结构
需要考虑如何对租户的基础结构应用更新。 可以在不同的时间为不同的租户应用更新。
有关更新租户部署的其他注意事项,请参阅更新。
扩大租户的基础设施
请考虑您的租户是否存在季节性业务模式,或会否因此调整解决方案的消耗水平。
例如,如果你向零售商提供解决方案,你可能预计一年中的某些时间在某些地理区域特别繁忙,在其他时候会保持安静。 请考虑这种季节性是否会影响您设计和扩展解决方案的方式。 请注意季节性如何影响干扰邻居问题,例如,当部分租户遇到突然且意外的负载增加导致其他租户的性能下降时。 可以考虑应用缓解措施,包括扩展单个租户的基础架构、在不同部署之间迁移租户,以及预留足够的容量以应对流量波动。
在基础结构之间移动租户
出于多种原因,可能需要在基础结构之间移动租户,例如:
- 平衡: 遵循 垂直分区的方法 将租户映射到基础结构,需要将租户移动到其他部署,以便重新平衡负载。
- 升级: 租户会升级其 SKU 或定价层,并且需要将其移动到与其他租户隔离度较高的单租户专用部署。
- 迁移: 租户请求将其数据移动到专用数据存储。
- 区域移动: 租户需要将其数据移动到新的地理区域。 在公司收购期间,或者法律或地缘政治情况发生变化时,可能会发生此要求。
请考虑如何迁移租户的数据,以及如何将请求重定向到承载他们实例的新基础设施集。 还应考虑移动租户是否可能导致停机,并确保租户完全了解风险。
合并和拆分租户
将租户或客户视为静态、不变的实体很诱人。 然而,实际上,这往往不是真的。 例如:
- 在业务方案中,公司可能会被收购或合并,包括位于不同地理区域的公司。
- 在业务方案中,公司可能会拆分或剥离。
- 在消费者场景中,单个用户可能会加入或离开家庭。
考虑是否需要提供功能来管理数据、用户标识和资源的合并和分离。 此外,请考虑数据所有权如何影响合并和拆分操作的处理。 例如,请考虑为家庭构建的消费者摄影应用程序,以便彼此共享照片。 这些照片是属于贡献的个人家庭成员,还是属于整个家庭? 如果用户离开家庭,是否应将其数据删除或保留在家庭的数据集中? 如果用户加入另一个家庭,他们的旧照片是否与他们一起移动?
登出租户
有时也不可避免地需要从您的方案中删除租户。 在多租户解决方案中,这带来了一些重要注意事项,包括:
- 保留期: 应维护客户数据多长时间? 在一段时间后,是否有销毁数据的法律要求?
- 重新加入:是否应该为客户提供重新加入的功能? 如果他们在数据保留期内重新加入后,其数据是否仍可供使用?
- 再平衡:如果运行共享基础结构,是否需要重新平衡租户在基础结构中的分配?
停用和重新激活租户
在某些情况下,可能需要停用或重新激活客户的帐户。 例如:
- 客户已请求停用。 在使用者系统中,客户可以选择取消订阅。
- 客户无法被计费,因此您需要取消订阅。
停用与登出的不同之处在于,它是一种临时状态。 但是,在一段时间后,你可以选择登出某个已停用的租户。
供稿人
本文由Microsoft维护。 它最初是由以下贡献者撰写的。
主要作者:
- John Downs |Azure 模式和做法的主要软件工程师
其他参与者:
- 查德·基特尔 |Azure 模式和做法的主要软件工程师
- Paolo Salvatori | FastTrack for Azure 首席客户工程师
- 阿森·弗拉基米尔斯基 | 客户首席工程师,FastTrack for Azure
要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。
后续步骤
请考虑将用于解决方案的 定价模型 。