在按照网上教程学习学k8s的时候,发现创建了pod之后,想获取pod的deployment却失败了。
[root@master1 ~]# kubectl get deployment -n dev
No resources found in dev namespace.
并且按照教程中说的,直接delete pod会重建一个pod,因为有pod管理器的存在。
然而我直接delete pod却成功了。
[root@master1 ~]# kubectl delete pod nginx -n dev
pod "nginx" deleted
这是什么原因?
经过查阅,在k8s 1.18版本之后,取消了这种关联创建的方法,所以建议直接创建deployment的方式来创建pod。(暂时没找到准确官方文档说明)
所以以前的创建命令:
[root@master ~]# kubectl run nginx --image=nginx:1.17.1 --port=80 --namespace dev
pod/nginx created
修改成现在的命令:
[root@master1 ~]# kubectl create deployment nginx1 --image=nginx:1.17.1 --port=80 --namespace dev
deployment.apps/nginx1 created
从返回的命令中就可以看出,两条命令的创建是不一样的。
直接将run改成create deployment即可创建pod的管理器。
这个时候再查询即可查询到:
[root@master1 ~]# kubectl get deployment -n dev
NAME READY UP-TO-DATE AVAILABLE AGE
nginx1 1/1 1 1 3m42s
----------------------------
小白新学k8s,如果有说的不对,或者不恰当的地方,希望帮忙指正,万分感谢!