Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes Autoscaler未扩展,节点处于NotReady状态,POD处于未知状态_Kubernetes_Google Cloud Platform_Google Kubernetes Engine - Fatal编程技术网

Kubernetes Autoscaler未扩展,节点处于NotReady状态,POD处于未知状态

Kubernetes Autoscaler未扩展,节点处于NotReady状态,POD处于未知状态,kubernetes,google-cloud-platform,google-kubernetes-engine,Kubernetes,Google Cloud Platform,Google Kubernetes Engine,我正在GKE上运行一个带有单节点池的集群。它有3个节点,可以从1个节点扩展到99个节点。集群使用nginx入口控制器 在此群集上,我要部署应用程序。一个应用程序由一个名称空间限定范围,由3个部署和一个入口(定义从internet访问应用程序的路径)组成。每个部署都运行容器的单个副本 部署几个应用程序可以正常工作,但部署许多应用程序(需要节点池进行扩展)会破坏一切: 所有吊舱开始出现警告(包括先前成功部署的吊舱) 所有节点都未就绪: kubectl get nodes NAME

我正在GKE上运行一个带有单节点池的集群。它有3个节点,可以从1个节点扩展到99个节点。集群使用
nginx入口
控制器

在此群集上,我要部署应用程序。一个应用程序由一个名称空间限定范围,由3个
部署
和一个
入口
(定义从internet访问应用程序的路径)组成。每个部署都运行容器的单个副本

部署几个应用程序可以正常工作,但部署许多应用程序(需要节点池进行扩展)会破坏一切:

所有吊舱开始出现警告(包括先前成功部署的吊舱)

所有节点都未就绪

kubectl get nodes
NAME                                              STATUS     ROLES     AGE       VERSION
gke-clients-projects-default-pool-f9af73d4-gzwr   NotReady   <none>    42m       v1.9.7-gke.6
gke-clients-projects-default-pool-f9af73d4-p5l2   NotReady   <none>    21m       v1.9.7-gke.6
gke-clients-projects-default-pool-f9af73d4-wnxc   NotReady   <none>    37m       v1.9.7-gke.6
kubectl获取节点
姓名状态角色年龄版本
gke-clients-projects-default-pool-f9af73d4-gzwr NotReady 42m v1.9.7-gke.6
gke-clients-projects-default-pool-f9af73d4-p5l2 NotReady 21m v1.9.7-gke.6
gke-clients-projects-default-pool-f9af73d4-wnxc NotReady 37m v1.9.7-gke.6
删除名称空间以从集群中删除所有资源似乎也会失败,因为很长一段时间后,POD仍然处于活动状态,但仍处于未知状态


我如何才能安全地添加更多应用程序并让群集自动缩放?

原因似乎是调度程序不知道每个pod所需的资源,因此会将它们调度到任何可用节点上,这可能会耗尽可用资源,并使Docker守护进程处于不一致的状态

解决方案是指定资源请求和限制:

kubectl get nodes
NAME                                              STATUS     ROLES     AGE       VERSION
gke-clients-projects-default-pool-f9af73d4-gzwr   NotReady   <none>    42m       v1.9.7-gke.6
gke-clients-projects-default-pool-f9af73d4-p5l2   NotReady   <none>    21m       v1.9.7-gke.6
gke-clients-projects-default-pool-f9af73d4-wnxc   NotReady   <none>    37m       v1.9.7-gke.6