我正在使用Jupyterhub + Kubernetes为一个大型编程课程(〉100名学生)提供托管开发环境。它运行在GKE之上,启用了自动缩放。随着更多学生登录,更多节点将动态添加到池中以处理增加的需求。
我遇到了一个问题,节点池正在耗尽外部IP的项目配额,有效地将池的大小限制为8个并发节点。确切的错误是this one。节点位于反向代理之后,用于与最终用户通信;据我所知,这些公共IP的唯一用途是启用直接SSH到每个单独的节点。我不需要甚至不想要这个功能,因为它提供了一个不必要的攻击面。
如何禁用临时IP自动分配给这些工作节点?一定有办法,因为GKE的文档建议自动扩展可以增长到1000个节点。我不明白如果它们都受到相同的微小外部IP配额的影响,这是如何可能的。
4条答案
按热度按时间6vl6ewon1#
您正在寻找的解决方案只是在控制台中为您的GCP项目增加配额(IAM & admin -〉Quotas)。只需点击几下,通常只需几分钟即可获得批准。
现在不可能在没有公共IP的情况下创建GKE节点。即使是这样,它也不会帮助你,因为你刚刚达到了其他配额(cpu/disk),所以也要提高这些配额。
wpcxdonn2#
1.属于private cluster的节点不会分配外部IP地址。
ar7v8xwq3#
不幸的是,每个节点连接到主节点都需要外部IP地址。为了避免将来的问题,您应该请求外部IP地址和CPU的配额,以便集群可以自动扩展。
关于表面攻击,您可以检查您的防火墙规则,当创建群集时,会创建新规则,并且默认情况下,仅允许对一系列IP地址的节点进行SSH。
bt1cpqcv4#
我知道这篇文章很旧了,但以防万一它能帮助到别人...来自
gcloud container node-pools create
帮助页面:我不确定如何通过UI来完成这一点,但通过
gcloud
CLI命令似乎相当简单。