我已经使用说明在 Ubuntu 服务器中安装了 Kubernetes here .我正在尝试使用 kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --hostport=8000 --port=8080
创建 Pod如示例中所列。但是,当我这样做时 kubectl get pod
我得到容器的状态为 pending
.我还做了 kubectl describe pod
用于调试,我看到消息:FailedScheduling pod (hello-minikube-3383150820-1r4f7) failed to fit in any node fit failure on node (minikubevm): PodFitsHostPorts
.
我进一步尝试通过 kubectl delete pod hello-minikube-3383150820-1r4f7
删除此 pod但是当我进一步做 kubectl get pod
我看到另一个带有前缀“hello-minikube-3383150820-”的 pod,我还没有创建。有谁知道如何解决这个问题?先感谢您。
最佳答案
PodFitsHostPorts
谓词失败,因为您的节点上还有其他使用端口 8000 的东西。您可以通过运行 kubectl describe svc
找到它是什么。 .kubectl run
创建一个 deployment
对象(您可以使用 kubectl describe deployments
看到它),这确保您始终保持运行的 pod 的预期副本数量(在本例中为 1)。当您删除 Pod 时,部署 Controller 会自动为您创建另一个。如果要删除部署及其不断创建的 Pod,可以运行 kubectl delete deployments hello-minikube
.
关于kubernetes - 在 Kubernetes 中创建 Pod 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38301724/