是否可以根据工作负载为应用设置自动缩放功能? 我在开发者控制台和文档中都找不到任何有用的东西。通过CLI可能存在隐藏的可能性吗?
我想知道这是否可行,因为我正在对Swisscom Application Cloud进行基本评估。
答案 0 :(得分:3)
有几个开源自动缩放项目有各种准备用于生产用途,如
Pivotal Cloud Foundry支持开箱即用的自动扩展应用程序(http://docs.pivotal.io/pivotalcf/1-8/appsman-services/autoscaler/autoscale-configuration.html)
答案 1 :(得分:2)
此功能目前不存在,也不属于(开源)cloudfoundry平台的一部分。有些平台提供它,但尚未向社区发布!
答案 2 :(得分:1)
有多种方法可以做到这一点。 正如Anatoly所描述的,你可以明显地使用" Auto Scaler"服务,如果从您各自的提供商部署。
(你可以通过调用这个Feature-Flags-API检查来解决这个问题:https://apidocs.cloudfoundry.org/253/feature_flags/get_the_app_scaling_feature_flag.html)
另一个选择实际上是根据您自定义的缩放行为编写自己的小型自动缩放器,以满足您的应用程序。 (DIY;))
获取加载 :首先,您需要获取有关当前"加载"的信息。应用程序(即内存使用,CPU使用等)。您可以通过从v2 / apps // stats API中提取数据来轻松完成此操作。详情请见: https://apidocs.cloudfoundry.org/253/apps/get_detailed_stats_for_a_started_app.html
写一些魔法: 现在你需要写一些魔法来验证应用程序是否处于高负荷状态。可能是CPU或内存或其他瓶颈你尝试获取我们的统计API。
向上/向下扩展: 使用PUT v2 / apps // API,您现在可以通过填写参数"实例来轻松更改应用实例的数量。因此。 https://apidocs.cloudfoundry.org/253/apps/updating_an_app.html
答案 3 :(得分:0)
对于PCF,您可以查看此https://github.com/Pivotal-Field-Engineering/autoscaling-cli-plugin。它应该给你你想要的东西。
您需要通过
安装它cf install-plugin https://github.com/pivotal-cf-experimental/autoscaling-cli-plugin
并使用类似于以下的步骤进行配置
从您的市场获取自动定标器的详细信息cf m | grep app-autoscaler
使用service& amp;安装自动缩放器插件从上面计划
cf create-service <service> <plan> myAutoScaler
将服务绑定到您的应用程序(或者您可以通过部署清单执行此操作)
cf bind-service myApp myAutoScaler
配置缩放参数
cf configure-autoscaling --min-threshold ## --max-threshold ## --max-instances # --min-instances # myApp myAutoScaler