gpt4 book ai didi

kubernetes - Kubernetes-Pod仍处于ContainerCreating状态

转载 作者:行者123 更新时间:2023-12-03 20:48:51 26 4
gpt4 key购买 nike

我对Kubernetes的所有事物都是陌生的,因此仍然有很多东西需要学习。

已经创建了两个节点的Kubernetes集群,并且两个节点(主节点和工作节点)都准备好进行工作了:

[monkey@k8s-dp1 nginx-test]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-dp1 Ready master 2h v1.9.1
k8s-dp2 Ready <none> 2h v1.9.1

此外,所有Kubernetes Pod看起来都不错:
[monkey@k8s-dp1 nginx-test]# kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system etcd-k8s-dp1 1/1 Running 0 2h
kube-system kube-apiserver-k8s-dp1 1/1 Running 0 2h
kube-system kube-controller-manager-k8s-dp1 1/1 Running 0 2h
kube-system kube-dns-86cc76f8d-9jh2w 3/3 Running 0 2h
kube-system kube-proxy-65mtx 1/1 Running 1 2h
kube-system kube-proxy-wkkdm 1/1 Running 0 2h
kube-system kube-scheduler-k8s-dp1 1/1 Running 0 2h
kube-system weave-net-6sbbn 2/2 Running 0 2h
kube-system weave-net-hdv9b 2/2 Running 3 2h

但是,如果我尝试在集群中创建一个新的部署,则会创建该部署,但是其pod无法进入适当的RUNNING状态。例如
[monkey@k8s-dp1 nginx-test]# kubectl apply -f https://k8s.io/docs/tasks/run-application/deployment.yaml
deployment "nginx-deployment" created

[monkey@k8s-dp1 nginx-test]# kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default nginx-deployment-569477d6d8-f42pz 0/1 ContainerCreating 0 5s
default nginx-deployment-569477d6d8-spjqk 0/1 ContainerCreating 0 5s
kube-system etcd-k8s-dp1 1/1 Running 0 3h
kube-system kube-apiserver-k8s-dp1 1/1 Running 0 3h
kube-system kube-controller-manager-k8s-dp1 1/1 Running 0 3h
kube-system kube-dns-86cc76f8d-9jh2w 3/3 Running 0 3h
kube-system kube-proxy-65mtx 1/1 Running 1 2h
kube-system kube-proxy-wkkdm 1/1 Running 0 3h
kube-system kube-scheduler-k8s-dp1 1/1 Running 0 3h
kube-system weave-net-6sbbn 2/2 Running 0 2h
kube-system weave-net-hdv9b 2/2 Running 3 2h

我不确定如何找出问题所在,但是如果例如执行 kubectl get ev,我会看到以下可疑事件:
<invalid>   <invalid>    1         nginx-deployment-569477d6d8-f42pz.15087c66386edf5d   Pod
Warning FailedCreatePodSandBox kubelet, k8s-dp2 Failed create pod sandbox.

但是我不知道从这里去哪里。我还可以看到,nginx docker镜像本身从未出现在 docker images中。

我如何查找有关该问题的更多信息?我是否在kubernetes设置中缺少基本知识?

-新信息-

有关背景信息,以防万一...

Kubernetes节点在Windows 10 hyper-v上托管的CentOS 7 VM上运行。

-新信息-

运行 kubectl describe pods将显示以下警告:
Warning  NetworkNotReady         1m                             kubelet, k8s-dp2  network is not ready: [runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized]

-新信息-

在白天工作时间结束后的夜晚关闭了运行Kubernetes的Hyper-v VM,今天早晨我回到办公室后,我再次启动Kubernetes VM的电源以继续操作,并执行了大约15分钟的命令:
kubectl get pods --all-namespaces仍与昨天一样显示这些nginx容器的 ContainerCreating,但是现在,命令现在将所有容器显示为 Running,包括nginx容器...即在主节点和工作节点VM完全重新引导后问题得以解决。

现在,我再次进行了一次完全重新引导,所有pod均显示为Running,这很好。

最佳答案

对同时运行Kubernetes主节点和Kubernetes工作节点的两个VM进行完全重启,所有Pod都显示为Running(注意:第一次重启后,需要讨论的Pod大约需要15-20分钟进入Running状态,并在随后的重新启动时,有问题的 bean 荚相对更快进入了Running状态(3-5分钟)。

关于kubernetes - Kubernetes-Pod仍处于ContainerCreating状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48190928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com