--- title: 特定于节点的卷数限制 content_template: templates/concept --- {{% capture overview %}} 此页面描述了各个云供应商可关联至一个节点的最大卷数。 谷歌、亚马逊和微软等云供应商通常对可以关联到节点的卷数量进行限制。 Kubernetes 需要尊重这些限制。 否则,在节点上调度的 Pod 可能会卡住去等待卷的关联。 {{% /capture %}} {{% capture body %}} ## Kubernetes 的默认限制 The Kubernetes 调度器对关联于一个节点的卷数有默认限制:
云服务每节点最大卷数
Amazon Elastic Block Store (EBS)39
Google Persistent Disk16
Microsoft Azure Disk Storage16
## 自定义限制 您可以通过设置 `KUBE_MAX_PD_VOLS` 环境变量的值来设置这些限制,然后再启动调度器。 如果设置的限制高于默认限制,请谨慎使用。请参阅云提供商的文档以确保节点可支持您设置的限制。 此限制应用于整个集群,所以它会影响所有节点。 ## 动态卷限制 {{< feature-state state="beta" for_k8s_version="v1.12" >}} Kubernetes 1.11 引入了基于节点类型的动态卷限制的支持作为 Alpha 功能。 在 Kubernetes 1.12 中,此功能升级到 Beta 版,将默认开启。 以下卷类型支持动态卷限制。 - Amazon EBS - Google Persistent Disk - Azure Disk - CSI 启用动态卷限制功能后,Kubernetes 会自动确定节点类型并确保节点上可关联的卷数目合规。 例如: * 在 Google Compute Engine环境中, [根据节点类型](https://cloud.google.com/compute/docs/disks/#pdnumberlimits)最多可以将128个卷关联到节点。 * 对于 M5、C5、R5、T3 和 Z1D 类型实例的 Amazon EBS 磁盘,Kubernetes 仅允许 25 个卷关联到节点。 对于 ec2 上的其他实例类型 Amazon Elastic Compute Cloud (EC2), Kubernetes 允许 39 个卷关联至节点。 * 在 Azure 环境中, 根据节点类型,最多 64 个磁盘可以关联至一个节点。 更多详细信息,请参阅[Azure 虚拟机的数量大小](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sizes)。 * 对于 CSI,任何符合 CSI 规范中卷关联限制的驱动都将这些限制作为 Node 的 allocatable 属性。调度器不会往已经达到其容量限制的任何节点上调度具有卷的Pod。 参考 [CSI 规范](https://github.com/container-storage-interface/spec/blob/master/spec.md#nodegetinfo) 获取更多详细信息。 {{% /capture %}}