我正在学习Kubernetes,只是遇到了一个问题,想检查是否有其他人遇到过它,
user@ubuntu:~/rc$ kubectl get rs ### don’t see any replica set
user@ubuntu:~/rc$
user@ubuntu:~/rc$
user@ubuntu:~/rc$ kubectl get pod
NAME READY STATUS RESTARTS AGE
bigwebstuff-673k9 1/1 Running 0 7m
bigwebstuff-cs7i3 1/1 Running 0 7m
bigwebstuff-egbqd 1/1 Running 0 7m
user@ubuntu:~/rc$
user@ubuntu:~/rc$
user@ubuntu:~/rc$ kubectl delete pod bigwebstuff-673k9 bigwebstuff-cs7i3 #### delete pods
pod "bigwebstuff-673k9" deleted
pod "bigwebstuff-cs7i3" deleted
user@ubuntu:~/rc$
user@ubuntu:~/rc$ kubectl get pod #### the deleted pods regenerated
NAME READY STATUS RESTARTS AGE
bigwebstuff-910m9 1/1 Running 0 6s
bigwebstuff-egbqd 1/1 Running 0 8m
bigwebstuff-fksf6 1/1 Running 0 6s
您会看到已删除的pod已重新生成,但我找不到副本集,就好像隐藏的复制集存在于某处。
3个pod从rc.yaml文件启动,如下所示,
user@ubuntu:~/rc$ cat webrc.yaml
apiVersion: v1
kind: ReplicationController
metadata:
name: bigwebstuff
labels:
name: bigwebstuff
spec:
replicas: 3
selector:
run: testweb
template:
metadata:
labels:
run: testweb
spec:
containers:
- name: podweb
image: nginx
ports:
- containerPort: 80
但是在我使用yams文件创建pod之后它没有显示出来。
有关如何找到隐藏副本集的任何想法?或者为什么豆荚会再生?
答案 0 :(得分:3)
“ReplicaSet”与“ReplicationController”不同(尽管它们相似)。 kubectl get rs
命令列出副本集,而问题中的清单文件创建复制控制器。相反,使用kubectl get rc
命令列出复制控制器(或者,更改清单文件以创建ReplicaSet而不是ReplicationController)。
关于ReplicaSet和ReplicationControllers之间的区别,让我引用documentation:
副本集是下一代复制控制器。现在副本集和复制控制器之间的唯一区别是选择器支持。副本集支持标签用户指南中描述的新的基于集合的选择器要求,而复制控制器仅支持基于相等的选择器要求。
答案 1 :(得分:2)
副本集和复制控制器不是一回事。请尝试以下方法:
kubectl get rc
然后相应地删除。