k8s中ectd中存的数据都是啥

一,k8s用得etcd运行在自带pod中

 

 

二,我们进入到这个pod中:kubectl exec -it etcd-izbp12lq02mc4cz0rt0ce9z -n kube-system -- /bin/sh

 

 

 

 

三,设置环境变量:export ETCDCTL_API=3

 

 

 

四,查看kube-system下全部的key:  etcdctl --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt --key=/etc/kubernetes/pki/etcd/healthcheck-client.key get /registry/pods/kube-system --prefix --keys-only

 

 

 

五,通过对比,我们发现,和kubectl get pods -n kube-system得到的pod名字一样,这里名字作为key存储在etcd中

 

 

 

 六,我们随便找一个key,来看下它的value是什么样子:etcdctl --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt --key=/etc/kubernetes/pki/etcd/healthcheck-client.key get /registry/pods/kube-system/kube-proxy-jznfg

 

 

 

七,value和kubectl get pod -n kube-system kube-proxy-jznfg -oyaml 得到的信息是一致的

 

 

 

总结: etcd中,pod和其他一些对象,比如deployments ,将这些对象以键值对的形式存储在数据库中

posted @ 2022-10-12 01:43  年轻人——001  阅读(623)  评论(0)    收藏  举报