kubernetes-notes
  • 目录
    • 序言
  • 云原生体系
    • 12-Factor
    • K8S知识体系
  • 安装与配置
    • 部署k8s集群
      • 使用kubeadm安装生产环境kubernetes
      • 使用kubespray安装kubernetes
      • 使用minikube安装kubernetes
      • 使用kind安装kubernetes
    • k8s证书及秘钥
    • k8s版本说明
  • 基本概念
    • kubernetes架构
      • Kubernetes总架构图
      • 基于Docker及Kubernetes技术构建容器云(PaaS)平台概述
    • kubernetes对象
      • 理解kubernetes对象
      • kubernetes常用对象说明
    • Pod
      • Pod介绍
      • Pod定义文件
      • Pod生命周期
      • Pod健康检查
      • Pod存储卷
      • Pod控制器
      • Pod伸缩与升级
    • 配置
      • ConfigMap
    • Workload
  • 核心原理
    • 核心组件
      • Api Server
      • Controller Manager
      • Scheduler
      • Kubelet
    • 流程图
      • Pod创建流程
      • PVC创建流程
  • 容器网络
    • Docker网络
    • K8S网络
    • 网络插件
      • Flannel介绍
    • CNI
      • CNI接口介绍
      • Macvlan介绍
  • 容器存储
    • 存储卷概念
      • Volume
      • Persistent Volume
      • Persistent Volume Claim
      • Storage Class
      • Dynamic Volume Provisioning
    • CSI
      • csi-cephfs-plugin
      • 部署csi-cephfs
      • 部署cephfs-provisioner
      • FlexVolume介绍
  • 资源隔离
    • 资源配额
    • Pod限额
    • 资源服务质量
    • Lxcfs资源视图隔离
  • 运维指南
    • kubectl工具
      • kubectl安装与配置
      • kubectl命令说明
      • kubectl命令别名
    • kubernetes集群问题排查
    • 节点调度
      • 安全迁移节点
      • 指定Node调度与隔离
    • 镜像仓库配置
      • 配置私有的镜像仓库
      • 拉取私有镜像
  • 开发指南
    • client-go的使用及源码分析
    • CSI插件开发
      • nfs-client-provisioner源码分析
      • csi-provisioner源码分析
    • operator开发
      • kubebuilder的使用
  • 问题排查
    • 节点相关问题
      • keycreate permission denied
      • Cgroup不支持pid资源
      • Cgroup子系统无法挂载
    • Pod驱逐
    • 镜像拉取失败问题
    • PVC Terminating
  • 源码分析
    • Kubernetes源码分析笔记
    • kubelet
      • NewKubeletCommand
      • NewMainKubelet
      • startKubelet
      • syncLoopIteration
      • syncPod
    • kube-controller-manager
      • NewControllerManagerCommand
      • DeploymentController
      • Informer机制
    • kube-scheduler
      • NewSchedulerCommand
      • registerAlgorithmProvider
      • scheduleOne
      • findNodesThatFit
      • PrioritizeNodes
      • preempt
    • kube-apiserver
      • NewAPIServerCommand
  • Runtime
    • Runtime
      • Runc和Containerd概述
    • Containerd
      • 安装Containerd
    • Docker
      • Docker学习笔记
    • Kata Container
      • kata容器简介
      • kata配置
    • GPU
      • nvidia-device-plugin介绍
  • Etcd
    • Etcd介绍
    • Raft算法
    • Etcd启动配置参数
    • Etcd访问控制
    • etcdctl命令工具
      • etcdctl命令工具-V3
      • etcdctl命令工具-V2
    • Etcd中的k8s数据
    • Etcd-Operator的使用
  • 多集群管理
    • k8s多集群管理的思考
    • Virtual Kubelet
      • Virtual Kubelet介绍
      • Virtual Kubelet 命令
    • Karmada
      • Karmada介绍
  • 边缘容器
    • KubeEdge介绍
    • KubeEdge源码分析
      • cloudcore
      • edgecore
    • OpenYurt部署
  • 虚拟化
    • 虚拟化相关概念
    • KubeVirt
      • KubeVirt的介绍
      • KubeVirt的使用
  • 监控体系
    • 监控体系介绍
    • cAdvisor介绍
    • Heapster介绍
    • Influxdb介绍
由 GitBook 提供支持

www.huweihuang.com

在本页
  • 1. etcdctl介绍
  • 2. Etcd常用命令
  • 2.1. 数据库操作命令
  • 2.1.1. 对象为键值
  • 2.1.2. 对象为目录
  • 2.2. 非数据库操作命令
  • 2.3. 常用配置参数

这有帮助吗?

在GitHub上编辑
  1. Etcd
  2. etcdctl命令工具

etcdctl命令工具-V2

1. etcdctl介绍

etcdctl是一个命令行的客户端,它提供了一下简洁的命令,可理解为命令工具集,可以方便我们在对服务进行测试或者手动修改数据库内容。etcdctl与其他xxxctl的命令原理及操作类似(例如kubectl,systemctl)。

用法:etcdctl [global options] command [command options][args...]

2. Etcd常用命令

2.1. 数据库操作命令

etcd 在键的组织上采用了层次化的空间结构(类似于文件系统中目录的概念),数据库操作围绕对键值和目录的 CRUD [增删改查](符合 REST 风格的一套操作:Create, Read, Update, Delete)完整生命周期的管理。

具体的命令选项参数可以通过 etcdctl command --help来获取相关帮助。

2.1.1. 对象为键值

  1. set[增:无论是否存在]:etcdctl set key value

  2. mk[增:必须不存在]:etcdctl mk key value

  3. rm[删]:etcdctl rm key

  4. update[改]:etcdctl update key value

  5. get[查]:etcdctl get key

2.1.2. 对象为目录

  1. setdir[增:无论是否存在]:etcdctl setdir dir

  2. mkdir[增:必须不存在]: etcdctl mkdir dir

  3. rmdir[删]:etcdctl rmdir dir

  4. updatedir[改]:etcdctl updatedir dir

  5. ls[查]:etcdclt ls

2.2. 非数据库操作命令

  1. backup[备份 etcd 的数据]

    etcdctl backup

  2. watch[监测一个键值的变化,一旦键值发生更新,就会输出最新的值并退出]

    etcdctl watch key

  3. exec-watch[监测一个键值的变化,一旦键值发生更新,就执行给定命令]

    etcdctl exec-watch key --sh -c "ls"

  4. member[通过 list、add、remove、update 命令列出、添加、删除 、更新etcd 实例到 etcd 集群中]

    etcdctl member list;etcdctl member add 实例;etcdctl member remove 实例;etcdctl member update 实例。

  5. etcdctl cluster-health[检查集群健康状态]

2.3. 常用配置参数

设置配置文件,默认为/etc/etcd/etcd.conf。

配置参数
参数说明

配置参数

参数说明

-name

节点名称

-data-dir

保存日志和快照的目录,默认为当前工作目录,指定节点的数据存储目录

-addr

公布的ip地址和端口。 默认为127.0.0.1:2379

-bind-addr

用于客户端连接的监听地址,默认为-addr配置

-peers

集群成员逗号分隔的列表,例如 127.0.0.1:2380,127.0.0.1:2381

-peer-addr

集群服务通讯的公布的IP地址,默认为 127.0.0.1:2380.

-peer-bind-addr

集群服务通讯的监听地址,默认为-peer-addr配置

-wal-dir

指定节点的was文件的存储目录,若指定了该参数,wal文件会和其他数据文件分开存储

-listen-client-urls

-listen-peer-urls

监听URL,用于与其他节点通讯

-initial-advertise-peer-urls

告知集群其他节点url.

-advertise-client-urls

告知客户端url, 也就是服务的url

-initial-cluster-token

集群的ID

-initial-cluster

集群中所有节点

-initial-cluster-state

-initial-cluster-state=new 表示从无到有搭建etcd集群

-discovery-srv

用于DNS动态服务发现,指定DNS SRV域名

-discovery

用于etcd动态发现,指定etcd发现服务的URL [https://discovery.etcd.io/],用环境变量表示

上一页etcdctl命令工具-V3下一页Etcd中的k8s数据

最后更新于2年前

这有帮助吗?