我是新手,我可能会问一个愚蠢的问题,但我在 Kind 或 stackoverflow 上找不到答案,所以我敢问:
- 我在 Ubuntu 机器上运行 kind (Kubernestes-in-Docker),有 32GB 内存和 120GB 磁盘。
- 我需要在这个 Kind 集群上运行一个 Cassandra 集群,每个节点至少需要 0.5 个 CPU 和 1GB 内存。
当我查看节点时,它给出了这个:
Capacity:
cpu: 8
ephemeral-storage: 114336932Ki
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 32757588Ki
pods: 110
Allocatable:
cpu: 8
ephemeral-storage: 114336932Ki
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 32757588Ki
pods: 110
所以理论上,有足够的资源去。但是,当我尝试部署 cassandra 部署时,由于资源不足,第一个 Pod 保持在“待处理”状态。事实上,Node 资源看起来像这样:
Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
Resource Requests Limits
-------- -------- ------
cpu 100m (1%) 100m (1%)
memory 50Mi (0%) 50Mi (0%)
ephemeral-storage 0 (0%) 0 (0%)
hugepages-1Gi 0 (0%) 0 (0%)
hugepages-2Mi 0 (0%) 0 (0%)
该节点实际上无法访问可用资源:它被限制在 10% 的 CPU 和 50MB 内存。
因此,阅读上面的交流并阅读 #887,我了解到我需要在主机上实际配置 Docker,以便 Docker 允许模拟 Kind 节点的容器获取更多资源。但是然后......如何将这些参数提供给 Kind 以便在创建集群时将它们考虑在内?