我将kubernetes配置为有3个图像(我的API、弹性搜索和Kibana)
这是我的deployment.yml文件
apiVersion: apps/v1
kind: Deployment
metadata:
name: tooseeweb-deployment
spec:
selector:
matchLabels:
app: tooseeweb-pod
template:
metadata:
labels:
app: tooseeweb-pod
spec:
containers:
- name: tooseewebcontainer
image: tooseewebcontainer:v1
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 80
- name: elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:6.2.4
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 9200
- name: kibana
image: docker.elastic.co/kibana/kibana:6.2.4
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 5601当我运行kubectl get deployments时,我看到了这个

它卡在0/1上准备好了。我试着重新启动码头,等等。这没什么用。我怎么才能解决这个问题?
更新
我运行kubectl describe pod并出现以下错误
Warning FailedScheduling 19s default-scheduler 0/1 nodes are available: 1 Insufficient cpu.我怎么才能解决这个问题?
发布于 2019-12-01 11:37:21
删除每个豆荚中的这些资源限制。
resources:
limits:
memory: "128Mi"
cpu: "500m"如果希望限制资源,请在成功应用部署一次之后再执行。
发布于 2019-12-02 10:07:09
我看你在安排豆荚的时候遇到麻烦了。Kubernetes错误消息:0/1 nodes are available: 1 Insufficient cpu,意味着您没有足够的资源来运行您的吊舱。
每个容器都需要0.5个cpu核心,所以整个吊舱需要1.5个cpu核心才能运行。Kubernetes无法找到一个具有1.5CPU核心的节点,因此它无法调度。如果您想运行它,您需要降低向节点添加更多资源的限制/请求。
我还注意到,你把所有的容器放在同一个吊舱里,这不是一个好的做法。只要你能把每个容器放在单独的货舱里。这还将允许更好地在节点之间进行负载分配。把几个容器放在同一个吊舱里,只有当这些容器必须放在一起,而且没有其他方法。
还请注意,elasticsearch是一个java应用程序,因此将其内存限制在128 so可能会导致频繁重新启动,这对于数据库来说是非常不可取的行为。
发布于 2020-01-22 03:36:36
分析:
,
中。
解决办法:
减少分配给现有豆荚的资源/删除不必要的pods
中可用的资源
https://stackoverflow.com/questions/59123709
复制相似问题