mol*_*hui 2 kubernetes minikube
three services在我的本地运行一个应用程序,minikube同时安装在一个有16 个 cpu 和 64 GB 内存的服务器上,其中一个replicas是 2,我只为每个服务设置了 resources.limits,如下所示
resources:
limits:
cpu: "2"
memory: "209715200"
Run Code Online (Sandbox Code Playgroud)
所有服务资源限制都是一样的。
但是,pending出现了一些服务。
待处理的Pod描述部分输出如下
Limits:
cpu: 2
memory: 209715200
Requests:
cpu: 2
memory: 209715200
...
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling <unknown> default-scheduler 0/1 nodes are available: 1 Insufficient cpu.
Warning FailedScheduling <unknown> default-scheduler 0/1 nodes are available: 1 Insufficient cpu.
Run Code Online (Sandbox Code Playgroud)
结果
kubectl get pod如下
kubectl get pod
NAME READY STATUS RESTARTS AGE
test1-777f54bcdb-pvfn5 1/1 Running 0 4m49s
test2-75ccb875b-lj9xl 1/1 Running 0 4m48s
test2-75ccb875b-s7xht 1/1 Running 0 4m48s
test3-797f6b795f-z9qv5 0/1 Pending 0 4m48s
Run Code Online (Sandbox Code Playgroud)
结果
kubectl top node如下
kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
test 1057m 13% 31675Mi 50%
Run Code Online (Sandbox Code Playgroud)
minikube 版本
# minikube version
minikube version: v1.9.2
commit: 93af9c1e43cab9618e301bc9fa720c63d5efa393
Run Code Online (Sandbox Code Playgroud)
kubectl 版本
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:36:53Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:27:17Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Run Code Online (Sandbox Code Playgroud)
我很困惑我的服务器配置应该能够运行这个应用程序,但由于CPU 不足而挂起
任何意见将不胜感激,在此先感谢您!
使用库存配置运行 minikube 不会利用您所有的硬件潜力。Minikube 允许您根据需要创建尽可能大的节点,这非常重要,因为除了其他应用程序之外,大多数人还在他们的工作站上使用 minikube,他们不希望 minikube 可以不受限制地访问使用您的硬件。
要使用自定义规范启动 minikube,您可以按照Radek 的描述进行操作,您可以在启动 minikube 时指定 CPU 和内存的数量。
$ minikube start --cpus N --memory N
Run Code Online (Sandbox Code Playgroud)
另一种选择是将这些参数设置为默认值:
$ minikube config set cpus N
$ minikube config set memory N
Run Code Online (Sandbox Code Playgroud)
要检查所有可配置的参数,您可以运行minikube config.
使用有限资源的节点的另一个原因是,您可以拥有一个包含多个节点的 minikube 集群,也可以在一台机器上拥有多个集群。要创建具有多个节点的 minikube 集群,您可以运行:
$ minikube start -n X
Run Code Online (Sandbox Code Playgroud)
其中 X 是所需节点的数量。
如果您有一个正在运行的 minikube 集群并想向其中添加另一个节点,您可以运行:
$ minikube node add
Run Code Online (Sandbox Code Playgroud)
要创建辅助 minikube 集群,您可以运行:
$ minikube start -p cluster-name
Run Code Online (Sandbox Code Playgroud)
其中 cluster-name 是您选择的名称。
| 归档时间: |
|
| 查看次数: |
2256 次 |
| 最近记录: |