Kubernetes Ansible run“kubectl应用kube法兰绒.yml”不起作用
这是ansible yml,我在ansible控制节点上运行它以应用主节点的flannel网络。我是根用户Kubernetes Ansible run“kubectl应用kube法兰绒.yml”不起作用,kubernetes,flannel,Kubernetes,Flannel,这是ansible yml,我在ansible控制节点上运行它以应用主节点的flannel网络。我是根用户 - name: Apply flannel network shell: sudo kubectl apply -f /tmp/.ansible/files/kube-flannel.yml ansible告诉我这个错误: "unable to recognize \"/tmp/.ansible/files/kube-flannel.yml\": Get http://localho
- name: Apply flannel network
shell: sudo kubectl apply -f /tmp/.ansible/files/kube-flannel.yml
ansible告诉我这个错误:
"unable to recognize \"/tmp/.ansible/files/kube-flannel.yml\": Get http://localhost:8080/api?timeout=32s: dial tcp [::1]:8080: connect: connection refused"]}
但是,当我手动登录主节点并运行sudo kubectl apply-f/tmp/.ansible/files/kube-flannel.yml时,它不会出错
root@PC:~# kubectl apply -f /tmp/.ansible/files/kube-flannel.yml
clusterrole.rbac.authorization.k8s.io/flannel created
clusterrolebinding.rbac.authorization.k8s.io/flannel created
serviceaccount/flannel created
configmap/kube-flannel-cfg created
daemonset.extensions/kube-flannel-ds-amd64 created
daemonset.extensions/kube-flannel-ds-arm64 created
daemonset.extensions/kube-flannel-ds-arm created
daemonset.extensions/kube-flannel-ds-ppc64le created
daemonset.extensions/kube-flannel-ds-s390x created
最后一个问题是,如何修复ansible错误?我在ansible yml中添加了以下cmd,然后pod已成功应用。由于ansible访问主节点具有新的ssh会话,环境值已被丢弃
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
只需使用KUBECONFIG作为环境变量,如下所示:
- name: Apply flannel
shell: |
kubectl apply -f /home/ubuntu/kube-flannel.yml
environment:
KUBECONFIG: /home/ubuntu/.kube/config
when: inventory_hostname == "kube-master"
我已经完成了你上面提到的步骤,但仍然得到相同的错误。你还需要做什么吗?@pocky0719