繁体   English   中英

Azure Kubernetes 服务 (AKS) 和主节点池

[英]Azure Kubernetes Service (AKS) and the primary node pool

前言

在 AKS 上创建 Kubernetes 集群时,您可以指定要用于节点的 VM 类型 ( --node-vm-size )。 我读到您在创建 Kubernetes 集群后无法更改此设置,这意味着无论何时添加资源,您都将进行垂直扩展而不是水平扩展。

但是,您可以在 AKS 群集中创建不同的节点池,为您的节点使用不同类型的 VM。 所以,我想,如果您想“更改”最初选择的 VM 类型,是否可以添加一个新节点池并删除旧节点池(“nodepool1”)?

我通过以下步骤尝试过:

  • 创建一个名为“stda1v2”的节点池,虚拟机类型为“Standard_A1_v2”
  • 删除“nodepool1”( az aks nodepool delete --cluster-name ... -g ... -n nodepool1

不幸的是我遇到了Primary agentpool cannot be deleted

无法删除的“主代理池”的目的是什么,当我创建 AKS 集群时(在现实世界的场景中),我选择什么类型的 VM 很重要吗?

我可以创建其他节点池并让主要节点继续其生命吗? 例如,如果我的节点池使用更大的 VM 作为其节点,但主要节点仍然使用“Standard_A1_v2”,它会不会在将来造成麻烦?

主节点池是集群中的第一个节点池,您不能删除它,因为它目前不受支持。 您可以创建和删除其他节点池,让主要节点保持原样。 它不会造成任何麻烦。

对于主节点池,我建议选择从长远来看更有意义的 VM 大小(因为您无法更改它)。 B 系列将是一个不错的选择,因为它们很便宜,而且 CPU\\mem 比率适合平均工作负载。

附: 您始终可以将主节点池扩展到 0 个节点,封锁该节点并将其关闭。 您将不得不重复此后升级,否则它将起作用

看起来此功能是在您提出问题时引入的,允许您添加新的系统节点池并删除旧的节点池,包括初始节点池。 在尝试整理集群时遇到相同的错误消息后,我发现我必须将另一个节点池设置为系统类型才能删除第一个。

有一个关于它的详细信息在这里,但在短期,天青nodepools分成两种类型(“模式”,因为他们称呼它):系统和用户。 创建单个池开始时,它将属于系统类型(有利于系统 pod 调度——因此最好有一个或两个节点的专用池供系统使用,然后是第二个用户节点池供实际使用)应用程序荚)。

因此,如果您希望删除唯一的系统池,则需要首先创建另一个节点池,并将 --mode 开关设置为“系统”(使用您首选的 VM 大小等),然后您就可以删除第一个(并且节点池模式不能在事后更改,只能在创建时更改)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM