在服务器上,收到使用 k8s 命令正常。
使用 ansible shell 模块执行命令时,异常。
现象
在服务器上,收到使用 k8s 命令正常:
1 | $ sudo kubectl get svc |
使用 ansible shell 模块执行命令时,异常:
1 | $ ansible -i hosts NODE1 -m shell -a 'sudo kubectl get svc' |
解决过程
直接搜索异常,解决方案如下:
1 | mkdir -p $HOME/.kube |
但是,手动执行命令是正常的,所以不是这个问题。
在 so 上看到了这个方法:
解决方法
执行命令时,指定配置文件
1 | $ ansible -i hosts NODE1 -m shell -a 'sudo kubectl get svc --kubeconfig=/opt/conf/kubernetes/admin.conf' |
配置路径修改为自己的配置文件路径即可。
参考: