Jboss Kubernetes自动缩放容器

Jboss Kubernetes自动缩放容器,jboss,docker,containers,kubernetes,Jboss,Docker,Containers,Kubernetes,是否可以自动缩放docker容器,其中包含kubernetes中的应用程序服务器(如wildfly/tomcat/jetty/)?例如,在cpu和ram使用或基于http请求时?如果有一个内置功能,我找不到它,或者有可能为此编写类似配置脚本的东西吗?如果是这样的话,那么奇迹会发生在哪里?容器的自动缩放还不受支持,也不是Kubernetes近期的一部分(这意味着核心团队不会很快添加它,但肯定欢迎外部贡献) 因为Kubernetes 1.2自动缩放是稳定API的一部分。这是基于CPU使用率或容器本身

是否可以自动缩放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——副本=