Jboss Kubernetes自动缩放容器
是否可以自动缩放docker容器,其中包含kubernetes中的应用程序服务器(如wildfly/tomcat/jetty/)?例如,在cpu和ram使用或基于http请求时?如果有一个内置功能,我找不到它,或者有可能为此编写类似配置脚本的东西吗?如果是这样的话,那么奇迹会发生在哪里?容器的自动缩放还不受支持,也不是Kubernetes近期的一部分(这意味着核心团队不会很快添加它,但肯定欢迎外部贡献) 因为Kubernetes 1.2自动缩放是稳定API的一部分。这是基于CPU使用率或容器本身提供的度量来完成的Jboss Kubernetes自动缩放容器,jboss,docker,containers,kubernetes,Jboss,Docker,Containers,Kubernetes,是否可以自动缩放docker容器,其中包含kubernetes中的应用程序服务器(如wildfly/tomcat/jetty/)?例如,在cpu和ram使用或基于http请求时?如果有一个内置功能,我找不到它,或者有可能为此编写类似配置脚本的东西吗?如果是这样的话,那么奇迹会发生在哪里?容器的自动缩放还不受支持,也不是Kubernetes近期的一部分(这意味着核心团队不会很快添加它,但肯定欢迎外部贡献) 因为Kubernetes 1.2自动缩放是稳定API的一部分。这是基于CPU使用率或容器本身
kubectl describe hpa
它可用于部署或复制控制器,如下所示:
# Auto scale a deployment "foo", with the number of pods between 2 and 10, target CPU utilization specified so a default autoscaling policy will be used:
kubectl autoscale deployment foo --min=2 --max=10
# Auto scale a replication controller "foo", with the number of pods between 1 and 5, target CPU utilization at 80%:
kubectl autoscale rc foo --max=5 --cpu-percent=80
kubectl describe hpa
更多详细信息可在官方文档中的说明、文档和中找到。您可以在kubernetes 1.3以后的版本中使用水平吊舱自动缩放。kubernetes博客提供了有关该功能的详细信息
kubectl describe hpa
kubectl describe hpa
但是上面的文章主要关注GKE。因此,以下内容将提供更多信息
kubectl describe hpa
kubectl describe hpa
这里介绍了如何使用kubectl进行pod自动校准
kubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min=MINPODS] --max=MAXPODS [--cpu-percent=CPU] [flags]
kubectl describe hpa
例子
# Auto scale a deployment "foo", with the number of pods between 2 and 10, target CPU utilization specified so a default autoscaling policy will be used:
kubectl autoscale deployment foo --min=2 --max=10
# Auto scale a replication controller "foo", with the number of pods between 1 and 5, target CPU utilization at 80%:
kubectl autoscale rc foo --max=5 --cpu-percent=80
kubectl describe hpa
您可以使用水平吊舱自动缩放器自动缩放部署
kubectl autoscale deployment task2deploy1 –cpu-percent=80 –min=2 –max=6
kubectl describe hpa
该命令将确保在目标CPU利用率设置为80%的情况下,部署至少有2个POD,最多有6个POD。
您可以使用以下方式列出自动缩放器:
kubectl get hpa
kubectl describe hpa
名称引用以MINPODS MAXPODS副本为目标task2deploy1部署/task2deploy1/80%2 6 0
kubectl describe hpa
名称:task2deploy1
kubectl describe hpa
屏幕上会打印大量有关自动缩放的信息
kubectl autoscale deployment task2deploy1 –cpu-percent=80 –min=2 –max=6
kubectl describe hpa
使用以下工具不断检查POD数量的变化:
kubectl describe hpa
kubectl describe deployment task2deploy1
接下来,如果您能够检测到需要缩放的情况(例如,您关于CPU/RAM使用的示例),那么执行缩放命令就很简单了。kubectl resize rc——副本=