我需要学习如何使用 Xen 平台或 Citrix XenServer 实现自动扩展,就像在 AWS 上一样。我在 Google 上搜索过,但没有找到相关内容。
如果我的问题太宽泛,而且没有像“启用功能 X”这样简单的答案,我将非常感激您对我应该研究什么来做到这一点的建议。
答案1
不,仅使用 XenServer,您就可以启用 WLB,但这只是为了在您的 VM 之间更好地分配主机资源。
CloudPlatform 是 Citrix 销售的产品。(随您的主机自动扩展)
检查步骤 3。您会看到它管理您的主机。
当CloudPlatform用户提交AutoScale配置时,会发生以下事件:
- CloudPlatform 使用 NetScaler NITRO API 将 AutoScale 配置推送到 NetScaler 设备,在设备上创建与 AutoScale 相关的实体。这些实体包括负载平衡虚拟服务器、服务组和监视器。
- NetScaler 设备上的 AutoScale 引擎向 CloudPlatform 发送 API 请求,以初始部署所需的最少数量的虚拟机。
- CloudPlatform 在其管理的虚拟机管理程序(虚拟化主机)上配置最少数量的实例(VM)。
- NetScaler 设备发现 CloudPlatform 分配给新创建的虚拟机的 IP 地址,并将它们作为服务绑定到代表它们的服务组。然后,NetScaler 设备可以对虚拟机的流量进行负载平衡。
- 绑定到服务组的 NetScaler 监视器通过从实例收集 SNMP 指标开始监视负载。
- NetScaler 设备上的 AutoScale 引擎监控从虚拟机收集的指标,并在指标在指定时间段内超出配置的阈值时触发扩展和缩减事件。作为扩展触发器的一部分,NetScaler AutoScale 引擎向 CloudPlatform 发送 API 请求以部署新的虚拟机。部署虚拟机后,AutoScale 引擎将代表虚拟机的服务(IP 地址和端口)绑定到服务组,并在配置的静默时间后开始将负载平衡流量转发到新的虚拟机。同样,作为缩减触发器的一部分,NetScaler AutoScale 引擎选择一个虚拟机,停止将新请求转发到该实例,并等待配置的静默时间(以允许处理当前请求),然后向 CloudPlatform 发送 API 请求以销毁所选实例。
通过这种方式,NetScaler 设备可以监控应用程序,并根据应用程序负载和/或性能触发扩大和缩小事件。