在帶有 kind 的 Mac 上,我創建了一個單節點集群,然后嘗試按照https://kind.sigs.k8s.io/docs/user/ingress/中的說明安裝 nginx ingress
kind create cluster --name devops
kubectl apply --filename https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/kind/deploy.yaml
kubectl wait --namespace ingress-nginx --for=condition=ready pod --selector=app.kubernetes.io/component=controller --timeout=180s
超時;對于節點,沒有污點
kubectl get node
NAME STATUS ROLES AGE VERSION
devops-control-plane Ready control-plane 16m v1.25.2
kubectl describe node devops-control-plane | grep Taint
Taints: <none>
超時是由于未能在主節點上放置 pod
kubectl -n ingress-nginx describe pod ingress-nginx-controller-7d68cdddd8-tkzzz
...
Node-Selectors: ingress-ready=true
kubernetes.io/os=linux
Tolerations: node-role.kubernetes.io/control-plane:NoSchedule
node-role.kubernetes.io/master:NoSchedule
node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 104s default-scheduler 0/1 nodes are available: 1 node(s) didn't match Pod's node affinity/selector. preemption: 0/1 nodes are available: 1 Preemption is not helpful for scheduling.
我在這里做錯了什么?
uj5u.com熱心網友回復:
請閱讀有關將 Pod 分配給節點的檔案!我看到您的 pod 上有一些節點選擇器。這可能是調度失敗的原因。您可以洗掉節點選擇器或將所需的標簽添加到您的節點(我猜缺少入口就緒標簽):
kubectl label nodes devops-control-plane ingress-ready=true
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/518433.html
