我们正在尝试设置一个包含 25 个工作节点和 1 个主节点的集群。在此之前,我们需要选择硬件,尤其是主节点的硬件。
如何估计我们需要的硬件资源?主节点的硬件要求是否与集群的大小有关?是否有我们可以遵循的官方硬件建议或资源规则?
答案1
嗯,你的问题很笼统。一切都取决于许多因素,你想使用的资源,节点将如何使用,用于什么目的,是否有HorizontalPodAutoscaler
/ ClusterAutoscale
r,你想使用什么环境,配额设置,资源限制/要求等等。
然而,如果你要去Kubernetes 文档您将能够检查当前 Kubernetes 版本的功能:
在 v1.19 中,Kubernetes 支持最多 5000 个节点的集群。更具体地说,我们支持满足以下所有条件的配置:
- 不超过5000个节点
- Pod 总数不超过 150000 个
- 总容器数不超过 300000 个
- 每个节点不超过 100 个 Pod
如果你想在本地环境上运行 Kubernetes,你需要阅读大量有关kubeadm和高可用性集群。
但是,如果您决定使用Google Kubernetes Engine
、、、Amazon EKS
等云Azure Kubernetes Service
环境OpenShift
,您将能够在特定的云提供商文档中找到这些要求。
您Kubernetes documentation
将能够找到一些有关主件和主组件的尺寸在吉科和AWS
在 GCE/Google Kubernetes Engine 和 AWS 上,kube-up 会根据集群中的节点数自动为您的主服务器配置适当的 VM 大小。在其他提供商上,您需要手动配置它。作为参考,我们在 GCE 上使用的大小为:
- 1-5 个节点:n1-standard-1
- 6-10 个节点:n1-standard-2
- 11-100 个节点:n1-standard-4
- 101-250 个节点:n1-standard-8
- 251-500 个节点:n1-standard-16
- 超过 500 个节点:n1-standard-32
我们在 AWS 上使用的尺寸是
- 1-5 个节点:m3.medium
- 6-10 个节点:m3.large
- 11-100 个节点:m3.xlarge
- 101-250 个节点:m3.2xlarge
- 251-500 个节点:c4.4xlarge
- 超过 500 个节点:c4.8xlarge
还值得一提的是,一些云环境(如 GKE)主节点由 管理cloud provider
。因此,您无需担心主节点,而可以专注于其他方面,例如羟脯氨酸,加州或者Network configuration
。
最后你可以阅读Kubernetes 容量规划文章。