存储 频道

思科/NetApp/VMware共推安全多租户架构

  端到端服务质量:

  很少有项目能够解决端到端服务质量问题。在大多数情况下,会在一个层中启用 QoS 机制,以期下游或上游的层也会因此得到扼制。遗憾的是,不同的应用程序有不同的特性,例如计算密集型、网络密集型或 I/O 密集型。单单限制 I/O 对于控制 CPU 密集型应用程序的 CPU 使用率作用很小甚至毫无作用。除非三个层均有适当的机制,否则无法完全保证 QoS。我们的团队正是以设计这样的系统为目的。

  Amazon、Google 和其他一些公司使用专有软件建立了多租户或“云”产品,这些软件需要数以百计的开发人员在内部耗时多年才能完成。我们的方法是使用 Cisco、NetApp 和 VMware 的市售技术达到类似的效果。

  我们在所有层应用的一个设计原则是,当资源未得到利用时,高价值应用程序应该能够在需要时使用这些可用资源。这可使应用程序应对无法可预见的情况。但是,当发生争用情况时,必须保证所有租户都能得到合同中规定的服务水平。

  另一设计原则是,将服务类别设置尽量接近应用程序,将该值映射至策略定义,并确保该策略能够根据每个层的独特性质在所有层得到统一应用。我们在每个层使用三个机制以提供 QoS:

  表 1) QoS 机制。

  计算网络存储

  • 可扩展预留

  • 动态资源调度器

  • UCS QoS 系统资源预留和限制级别

  • QoS—排队

  • QoS—带宽控制

  • QoS—Rate Limiting • FlexShare

  • 存储预留

  • 精简配置

  计算层

  在服务器虚拟化级别,VMware vSphere 提供众多功能,以确保合理使用资源,特别是 CPU 和内存资源。vSphere 资源池是一个用于灵活管理资源的逻辑抽象。资源池可分为多个层次,并可用于对可用 CPU 和内存进行多层次分区。 通过正确配置资源池的预留、限制、份额和可扩展预留属性,您可以进行十分精细的控制,并且在发生资源争用的情况下授予租户高于其他租户的优先权。

  VMware Distributed Resource Scheduler (DRS) 允许您创建包含多个 VMware 服务器的群集。它持续监控各个资源池的使用率,并 在虚拟机之间智能地分配可用资源。DRS 可在群集级别完全自动化,这样群集中所有 ESX 服务器之间的基础结构和租户虚拟机可实现实现均衡负载。

  在硬件级别,Cisco UCS 使用数据中心以太网 (DCE) 处理 Cisco UCS 系统中的所有流量。这一行业标准的以太网增强功能将以太网管的带宽分为八条虚拟通道。系统类决定如何在整个 Cisco UCS 系统中分配这些虚拟通道中的 DCE 带宽。每个系统类为特定的流量类型保留特定的带宽分段。即使在超额申请的系统中,这也可提供某种程度的流量管理。

  网络层

  在网络层,流量根据 Nexus 1000v 已指定并由 UCS 系统遵守或监察的服务类别 (CoS) 进行分段。提供稳定状态性能保护有两种截然不同的方法:

  排队 允许网络设备根据分类条件安排数据包发送。能够区分应该优先发送哪些数据包,最终便可在发生超额申请时,区分重要应用程序的响应时间。只有在所有服务类别充分利用指定带宽时才会发生排队。

  带宽控制 允许网络设备的每个队列有适当数量的缓冲区,这样特定流量类别就不会过分利用带宽。这可使其他队列有平等的机会满足剩余类别的需求。带宽控制与排队相互依存,因为排队决定首先发送的数据包,而带宽决定每个队列可以发送的数据量。

  可以启用一组策略控制,这样便可通过软策略(允许应用程序在一段时间内发生高于服务承诺的突发/违反)和硬策略(丢弃过多流量或设置传输速率上限)处理无法预测的流量模式变化。这一功能也可用于定义服务级别,这样便可将非关键服务保持在特定流量级别,或设置最低服务级别流量的上限,以便其无法影响更高端的租户服务。

  报警及速率限制用于定义此类保护级别。将这些工具应用于尽量接近网络边缘的位置,以阻止流量进入网络。在此设计中,使用了 Nexus 1000V,以对三种类型的流量执行报警和速率限制功能:

  VMotion。 VMware 通常为 VMotion 流量推荐专用的千兆接口。在我们的设计中,VMotion 流量使用了不可路由的专用 VMkernel 端口。来自刀片式服务器的 VMotion 流量保持在 1Gbps,以反映传统环境。这一限制可根据要求提高或降低,但配置后的流量速率不能影响更加关键的流量。

  区分事务性和存储服务。 在多租户设计中,采用了多种方法以生成区分服务。例如,对最关键的服务使用“优先”队列,对无法丢弃但可承受一些延迟的流量使用 “不丢弃” 队列。对固定速率服务使用速率限制,以对每个应用程序类别或服务设置特定级别的上限。

  管理。启用管理 VLAN,并使用速率限制将流量上限设置为 1Gbps

  存储层

  如上所述,NetApp MultiStore 软件为多租户环境提供安全隔离。(本期另一篇文章详细介绍了 MultiStore。)

  在存储层,提供 QoS 意味着控制存储系统缓存和 CPU 使用率,以及确保在足够数目的轴之间分配工作量。NetApp 开发了 FlexShare 以控制工作量优先顺序。FlexShare 允许您调节 MultiStore 配置中每个存储卷或每个 vFiler 单元的三个独立参数,这样您便可为租户分区设置高于其他租户分区的优先级。 (上篇 Tech OnTap 文章中详细介绍了 FlexShare。) B多年以来,MultiStore 和 FlexShare 已都可用于 NetApp Data ONTAP 操作环境。

  NetApp NetApp 精简配置为租户提供某种程度的 “按需存储”。原始容量视为共享资源,并且仅在需要时占用。在多租户配置中部署精简配置资源时,您应该设置卷自动增加、Snapshot 自动删除和部分保留策略。卷自动增加允许卷以定义的增量增加,直至达到预定义的阈值。 Snapshot 自动删除方法是指在卷将满时自动删除最旧的 Snapshot 副本。部分保留允许根据关联数据的重要性修改一定百分比的保留空间。

  同时使用这些功能时,可为重要的租户授予优先权,以在共享池的保留空间中根据需要增加卷。与之相反,较低级别的租户需要额外的管理员干预才能满足额外存储请求。

0
相关文章