Kubernetes 调度失败:0/3个节点可用:3个POD不足
我正在尝试将我的NodeJS应用程序部署到EKS,并使用完全相同的容器运行3个pod 以下是错误消息:Kubernetes 调度失败:0/3个节点可用:3个POD不足,kubernetes,kubectl,amazon-eks,Kubernetes,Kubectl,Amazon Eks,我正在尝试将我的NodeJS应用程序部署到EKS,并使用完全相同的容器运行3个pod 以下是错误消息: $ kubectl get pods NAME READY STATUS RESTARTS AGE cm-deployment-7c86bb474c-5txqq 0/1 Pending 0 18s cm-deployment-7c86bb4
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
cm-deployment-7c86bb474c-5txqq 0/1 Pending 0 18s
cm-deployment-7c86bb474c-cd7qs 0/1 ImagePullBackOff 0 18s
cm-deployment-7c86bb474c-qxglx 0/1 ImagePullBackOff 0 18s
public-api-server-79b7f46bf9-wgpk6 0/1 ImagePullBackOff 0 2m30s
$ kubectl describe pod cm-deployment-7c86bb474c-5txqq
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 23s (x4 over 2m55s) default-scheduler 0/3 nodes are available: 3 Insufficient pods.
所以它说,0/3节点可用
但是,如果我运行
kubectl获取节点——观察
$ kubectl get nodes --watch
NAME STATUS ROLES AGE VERSION
ip-192-168-163-73.ap-northeast-2.compute.internal Ready <none> 6d7h v1.14.6-eks-5047ed
ip-192-168-172-235.ap-northeast-2.compute.internal Ready <none> 6d7h v1.14.6-eks-5047ed
ip-192-168-184-236.ap-northeast-2.compute.internal Ready <none> 6d7h v1.14.6-eks-5047ed
我应用了两个.yaml文件
我怎样才能解决这个问题?
谢谢我猜,如果不运行清单,您得到的是图像上的图像标签1
不存在,因此您得到的是ImagePullBackOff
,这通常意味着容器运行时找不到要提取的图像
看看Docker Hub,那里没有1
标签,只有最新的
因此,移除标签或将1
替换为latest
都可以解决您的问题
aws-auth-cm.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: aws-auth
namespace: kube-system
data:
mapRoles: |
- rolearn: [MY custom role ARN]
username: system:node:{{EC2PrivateDNSName}}
groups:
- system:bootstrappers
- system:nodes
deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: cm-deployment
spec:
replicas: 3
selector:
matchLabels:
app: cm-literal
template:
metadata:
name: cm-literal-pod
labels:
app: cm-literal
spec:
containers:
- name: cm
image: docker.io/cjsjyh/public_test:1
imagePullPolicy: Always
ports:
- containerPort: 80
#imagePullSecrets:
# - name: regcred
env:
[my environment variables]