Etcd实战(二)-k8s集群中Etcd数据存储

1 介绍

k8s中所有对象的manifest都需要保存到某个地方,这样他们的manifest在api server重启和失败的时候才不会丢失,因此引入了etcd。在k8s中只有api server和etcd直接交互,其它组件都通过api server间接和etcd交互,这样做的好处如下。

  • 增强乐观锁系统及验证系统的健壮性
  • 方便后续存储的替换,只需修改api server组件的相关接口。

etcd是一个响应快、分布式、一致的KV存储,也是k8s存储集群状态和元数据的唯一地方。

2 查看k8s中etcd存储的数据

复制代码
$ kubectl get pod -n kube-system |grep etcd
etcd-ops-master-1                          1/1     Running   0          135m
$ kubectl exec -it -n kube-system etcd-ops-master-1 -- /bin/sh
sh-5.0#  
sh-5.0# etcdctl member list --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key
97937da5f040d7bc, started, ops-master-1, https://10.220.43.203:2380, https://10.220.43.203:2379, false

k8s中的etcd需要使用到证书进行认证。

查看etcd中存储的数据,可以手动在master节点上安装etcdctl命令。

复制代码
sh-5.0# exittcdctl get --prefix "" --endpoints=10.220.43.203:2379 --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key

--endpoints指定etcd节点,另外要使用到k8s证书,证书通常在/etc/kubernetes/pki/目录下,以下输出可以看到etcd中存储的k8s相关的键值数据。

相关推荐
雪碧聊技术10 分钟前
组合查询(union)
数据库·sql
杨云龙UP17 分钟前
ODA运维实战:Oracle 19c YJXT PDB表空间在线扩容全过程_20260503
linux·运维·服务器·数据库·oracle
BENA ceic25 分钟前
Spring 的三种注入方式?
java·数据库·spring
2401_8955213425 分钟前
MySQL中的count函数
数据库·mysql
雪碧聊技术26 分钟前
IO流-07:缓冲流
数据库
.小小陈.35 分钟前
MySQL 入门到实战:从基础概念到核心存储引擎
数据库·mysql
IT邦德43 分钟前
Oracle 26ai 首发季度补丁 23.26.2.0.0 来了!单机版升级
数据库·oracle
yoyo_zzm1 小时前
Laravel10.x新特性全解析
数据库·mysql·架构
许彰午1 小时前
CacheSQL(五):桥接篇
java·数据库·缓存·系统架构
七夜zippoe1 小时前
# DolphinDB分区策略:RANGE分区详解
数据库·策略·分区·range·dolphindb