首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏技术杂记

    etcd 基础8

    创建序列 因为是使用的etcd序列,所以确保了有序性 [root@docker ~]# curl http://127.0.0.1:2379/v2/keys/queue -XPOST -d value=

    40420编辑于 2022-01-20
  • 来自专栏技术杂记

    etcd 集群8

    /etcdctl member list 1b80a88a471eb4b8: name=h104 peerURLs=http://192.168.100.104:2380 clientURLs=http -linux-amd64]# [root@h104 etcd-v2.2.4-linux-amd64]# . ,new-h102=http://192.168.100.102:2380" ETCD_INITIAL_CLUSTER_STATE="existing" [root@h104 etcd-v2.2.4-linux-amd64 ]# 执行完后,终端反馈出几个关键的环境变量 要使用这些环境变量来运行新加入的节点,当前情况下新节点还没运行 [root@h104 etcd-v2.2.4-linux-amd64]# . /etcdctl member list 1b80a88a471eb4b8: name=h104 peerURLs=http://192.168.100.104:2380 clientURLs=http

    35320编辑于 2022-01-19
  • 来自专栏深度学习与python

    Etcd 客户端缓存实践

    Etcd Watch 机制 在启用缓存之后就会面临本地缓存更新的问题,因为 etcd 是一个分布式的 KV 存储,允许多个客户端并发操作并保证一致性,那么如果其他客户端更新了 etcd 中的数据,那么如何更新本客户端本地缓存中的数据呢 etcd客户端的负担。 幸运的是 etcd 提供了 watch 机制可以克服轮询方案的弊端。etcd 的 watch 机制允许客户端告诉 etcd 它要关注的 key,如果该 key 有任何修改,etcd 会通知客户端。 lru_queue: Mutex<PriorityQueue<Vec<u8>, u64>>,} Get 请求 当客户端执行 Get 请求,它会先查找本地缓存,如果本地缓存命中则直接返回给用户。 6 月 8 日是 InfoQ 中国成立 15 周年的日子,十五周年里离不开各位读者朋友们的支持!

    1.4K20编辑于 2023-03-29
  • 来自专栏北风IT之路

    推荐一款ETCD桌面客户端——Etcd Workbench

    Etcd Workbench我相信很多人在开始管理ETCD的时候都去搜了Etcd客户端工具,然后找到了官方的Etcd Manager,但用完之后发现它并不好用,还不支持多连接和代码格式化,并且已经好几年不更新了 ,于是市面上就有了好多其他客户端工具,Etcd Workbench就是其中为数不多好用且免费的一个,下面来介绍一下。 App版支持了常规的身份认证和SSL连接,这个没什么说的,你按照提示添加相应证书就好了,这里需要提一下它同时还支持SSH Tunnel功能,这个是很多其他Etcd客户端没有的。 如果你有一些连接信息需要迁移到别的设备的Etcd Workbench,可以在这里导出连接配置为一个文件,到另一台电脑里面打开Etcd Workbench同样在这里选择导入配置即可完成配置迁移。 有什么需求或者Bug可以在GitHub提交issue,也可以直接联系这个客户端的作者。注:这篇文章是从本人 CSDN 原创文章搬运而来,如需转载请注明出处

    3.4K20编辑于 2024-11-16
  • 来自专栏容器计算

    K8S ETCD Keeper

    原生的 etcd-keeper 需要 etcd 开 auth 模式,但是 k8s 的 etcd 如果开启了 auth 是有可能有问题的(亲测有问题),为了观察 etcd 的 kv 所以小改了一下这个项目 ,增加了一个 -k8sMode true 的参数,可以允许 etcd-keeper 通过 tls 的模式连接 k8s 的 etcd 集群。 https://github.com/runzhliu/k8s-etcdkeeper Refer: “etcdctl auth enable” command breaks Kubernetes cluster 从安全的角度谈谈etcd 效果如下:

    1.1K30编辑于 2022-06-08
  • 来自专栏技术文献

    k8s etcd 的实现原理

    image.png 我们可以简单看一下 etcd 和 Zookeeper 在定义上有什么不同: etcd is a distributed reliable key-value store for the etcd 的使用其实非常简单,它对外提供了 gRPC 接口,我们可以通过 Protobuf 和 gRPC 直接对 etcd 中存储的数据进行管理,也可以使用官方提供的 etcdctl 操作存储的数据。 的使用方法,这一小节将逐步介绍几大核心模块的实现原理,包括 etcd 使用 Raft 协议同步各个节点数据的过程以及 etcd 底层存储数据使用的结构。 Raft 在每一个分布式系统中,etcd 往往都扮演了非常重要的地位,由于很多服务配置发现以及配置的信息都存储在 etcd 中,所以整个集群可用性的上限往往就是 etcd 的可用性,而使用 3 ~ 5 个 etcd 节点构成高可用的集群往往都是常规操作。

    1.8K11发布于 2020-09-29
  • 来自专栏aoho求索

    etcd通信接口:客户端 API 实践与核心方法

    学习客户端etcd 服务端的通信以及 etcd 集群节点的内部通信接口对于我们更好地使用和掌握 etcd 组件很有帮助,也是所必需了解的内容。 本文我们将会介绍 etcd 的 gRPC 通信接口以及客户端的实践。 etcd clientv3 客户端 etcd 客户端 clientv3 接入的示例将会以 Go 客户端为主,读者需要准备好基本的开发环境。 首先是 etcd clientv3 的初始化,我们根据指定的 etcd 节点,建立客户端etcd 集群的连接。 etcd 客户端初始化 解决完包依赖之后,我们初始化 etcd 客户端

    2.1K30编辑于 2022-06-23
  • 来自专栏实战docker

    查看k8s的etcd数据

    \ > get / --prefix --keys-only /registry/apiregistration.k8s.io/apiservices/v1. /registry/apiregistration.k8s.io/apiservices/v1.apps /registry/apiregistration.k8s.io/apiservices/v1 .authentication.k8s.io /registry/apiregistration.k8s.io/apiservices/v1.authorization.k8s.io /registry /apiregistration.k8s.io/apiservices/v1.autoscaling /registry/apiregistration.k8s.io/apiservices/v1.batch /registry/apiregistration.k8s.io/apiservices/v1.networking.k8s.io ...

    4.8K50发布于 2019-05-27
  • 来自专栏运维小路

    Kubernetes(k8s)-备份&Etcd介绍

    Kubernetes的的数据经过我们前面多个小节的介绍,我们已经知道他数据都存储在Etcd数据库里面,哪我们应该怎么备份数据库呢? Etcd由于我们这里是容器部署的,所以在Master里面默认是没有备份工具的,我们需要先准备备份工具。 1.备份工具准备 #按照帮助,但是这个命令会执行失败 kubectl cp kube-system/etcd-master01:/usr/local/bin/etcdctl . /ca.crt \ --cert=/etc/kubernetes/pki/etcd/server.crt \ --key=/etc/kubernetes/pki/etcd/server.key /etcd/snapshot.db 这里多说一点,在Kubernetes里面所有服务端都是带证书的,所以我们操作数据库也需要带上证书,实际上把最后的备份命令换成其他查询命令,也可以查看Etcd里面的数据

    56000编辑于 2025-03-03
  • 来自专栏Redis管理

    Etcd 可视化管理工具,GUI 客户端

    Etcd Assistant——Etcd 可视化管理工具,GUI 客户端下载地址:http://www.redisant.cn/etcd主要功能:支持多标签页,同时连接到多个集群以漂亮的格式显示JSON 、XML、MessagePack、十六进制等数据格式浏览、创建、编辑、删除键导出和导出数据键的展示支持多种视图:树状视图或列表视图支持基于用户名和密码的基本身份验证、HTTPS客户端证书认证支持 HTTP 和 HTTPS 连接显示 etcd 集群及其节点的基本信息管理租约:列出和撤销租约,查看详细信息管理用户:创建、更新或删除用户管理角色和权限:创建、更新删除角色软件截图快速连接到您的 Etcd 集群并开始工作 Etcd Assistant 可以连接 etcd v3 集群,支持基本认证、TLS证书认证、支持 SSL/TLS 安全连接;随时查看您的 etcd 健康指标图片支持丰富的数据格式Etcd Assistant 会自动识别并格式化不同的数据格式,包括Text、JSON、XML、HEX、MessagePack,以及各种整数、浮点类型图片管理集群成员、租约和用户通过 Etcd Assistant 查看及群里所有节点的详细信息

    4.4K40编辑于 2023-04-26
  • 来自专栏Kubernetes

    【K8S】etcd 常用命令

    本文基于 kubernetes 集群介绍 etcd 相关命令,先通过以下命令获取相关信息作为变量: # 获取当前 Master 节点主机名称 host=$(hostname) # 获取 etcd 节点 pod 名称 etcd=$(kubectl get pod -n kube-system | grep 'Running' | grep etcd | head -n 1 | awk '{print $1}') # 获取 etcd 目录 cert_dir="/etc/kubernetes/pki/etcd" # 以上信息也可以从 /etc/kubernetes/manifests/etcd.yaml /data/etcd/restore,保存后 etcd 自动重启 2、方式二 cd /etc/kubernetes/manifests # 停止服务 mv etcd.yaml etcd.yaml-b kube-apiserver.yaml-b # 清除 etcd 数据 mv /data/etcd/member /tmp # 启动服务 mv etcd.yaml-b etcd.yaml &&

    72210编辑于 2024-09-02
  • 来自专栏架构师成长之路

    k8s实践(2) etcd集群安装

    k8s实践系列的相关文件都在github:https://github.com/huangguisu/k8s.git etcd分布式键值存储系统,用于保持集群状态,比如Pod、Service等对象信息 因此我们在k8s集群安装之前,先把搭建好etcd集群。 (类PAXOS协议),前者容易理解,方便工程实现; 维护方面:ETCD方便,有管理界面,ZK难以运维; API:ETCD提供HTTP+JSON, gRPC接口,跨平台跨语言,ZK需要使用其客户端; 访问安全方面 ://node2.etcd.k8-cluster.com:2380,etcd-node3=http://node3.etcd.k8-cluster.com: 2380", "initial-cluster-state node2.etcd.k8-cluster.com 192.168.10.23 node3.etcd.k8-cluster.com 四、ETCD命令 $ cd /mnt/app//etcd/

    3.4K10编辑于 2022-04-14
  • 来自专栏solate 杂货铺

    etcd v2文档(4) -- 客户端http请求管理etcd 版本号和节点状态

    ,赢百万奖金......了解更多详情>>> 获得etcd 版本号 可以从/version端点获取特定实例的etcd版本。 curl -L http://127.0.0.1:2379/version etcd 2.0.12 检查一个etcd成员节点的健康状况 etcd提供了一个/health端点来验证特定成员的运行状况。

    1.2K20发布于 2019-07-19
  • 来自专栏aoho求索

    etcd Lease:etcd 如何实现租约?

    它类似 TTL(Time To Live),用于 etcd 客户端与服务端之间进行活性检测。在到达 TTL 时间之前,etcd 服务端不会删除相关租约上绑定的键值对;超过 TTL 时间,则会删除。 因此我们需要在到达TTL时间之前续租,以实现客户端与服务端之间的保活。 Lease 也是 etcd v2 与 v3 版本之间的重要变化之一。 下图是客户端创建一个指定 TTL 的租约流程,当 etcd 服务端的 gRPC Server 接收到创建 Lease 的请求后,Raft 模块首先进行日志同步;接着 MVCC 调用 Lease 模块的 客户端创建一个指定 TTL 租约流程图 那么 Lease 与键值对是如何绑定的呢? 客户端根据返回的 LeaseID,在执行写入和更新操作时,可以绑定该 LeaseID。 小结 这一篇文章我们主要介绍了 etcd Lease 的实现,首先通过 etcdctl 命令行工具介绍了客户端如何使用 Lease 的使用方法;接着介绍了 Lease 实现的主要架构,描述了 Lease

    2.3K21编辑于 2022-12-03
  • 来自专栏山山仙人的专栏

    基于k8s集群部署prometheus监控etcd

    etcd内置了metrics接口供收集数据,在etcd集群任意一台节点上可通过ip:2379/metrics检查是否能正常收集数据。 curl -L http://localhost:2379/metrics 2、修改prometheus配置 修改prometheus的配置,增加对etcd的监控配置,配置中指定etcd集群的ip:port ,并指定后端协议类型和配置跳过CA验证 vim prometheus-configmap.yaml - job_name: "etcd" scheme: https tls_config : ['172.16.1.100:2379','172.16.1.101:2379','172.16.1.110:2379'] 3、检查是否生效 打开prometheus界面,查看target中是否有etcd 至此,prometheus监控etcd完成。

    2.1K30发布于 2020-04-28
  • 来自专栏mysql

    hhdb客户端介绍(8

    本软件采用桌面应用程序经常使用的MVC架构,MVC(Model-View-Controller)架构是一种用于分离关注点的软件设计模式,它将应用程序分成三个主要组件:模型(Model)、视图(View)和控制器(Controller)。这种分离使得开发和维护变得更加容易。

    41210编辑于 2024-12-26
  • 来自专栏加菲的博客

    etcdetcd使用与集群搭建

    etcd就能充当一个服务字典的角色,服务上线去往etcd进行注册,etcd与服务之间维持一个心跳,保证服务是否可用。 ; 数据持久化:etcd默认数据一更新就进行持久化; 安全:etcd支持SSL客户端安全认证。 3.etcd架构 etcd分为四个部分: HTTP Server:用于处理用户发送的API请求以及其他etcd节点的同步与心跳请求; Store:用于处理etcd所支持的各类功能的事务,包括 数据索引 ,同龄人,所以指代的是节点之间 --advertise-client-urls 2379 客户端连接 --initial-cluster:初始化一个集群 在n2节点执行命令以启动etcd etcd - initial-cluster-state ${CLUSTER_STATE} --initial-cluster-token ${TOKEN} 使用集群 集群就算搭建好了,集群中的节点通过2380端口彼此通信,通过2379与客户端通信

    1.7K21编辑于 2022-06-23
  • 来自专栏python3

    搭建etcd集群,python调etcd

    etcd/etcd.conf 修改内容如下: # [member] ETCD_NAME=master1      #本机的主机名 ETCD_DATA_DIR="/var/lib/etcd/default.etcd "    #etcd的数据存储路径 #ETCD_WAL_DIR="" #ETCD_SNAPSHOT_COUNT="10000" #ETCD_HEARTBEAT_INTERVAL="100" #ETCD_ELECTION_TIMEOUT /0.0.0.0:2379,http://0.0.0.0:4001"  #监听etcd客户端的地址 #ETCD_MAX_SNAPSHOTS="5" #ETCD_MAX_WALS="5" #ETCD_CORS 启动etcd集群 并设置开机启动 systemctl start etcd && systemctl enable etcd python调etcd的接口 安装etcd3的模块 pip install  etcd3 import etcd3 #往etcd中存数据 client = etcd3.client(host='192.168.133.140')   #连接etcd r  = client.put

    3.4K11发布于 2020-01-08
  • 来自专栏千里行走

    etcd-1:部署etcd集群

    目录 (1).下载 (2).etcd配置文件与启动 1.etcd启动参数说明 2.启动脚本模版 3.启动etcd集群 (3).验证etcd集群 (4).参考资料 一共3台机器。 每台机器部署一个etcd实例:etcd-master1、etcd-master2、etcd-master3。 统一在用户app下操作,这是良好习惯。 \ #和集群内其他节点通信的地址, http://ip:2380 --listen-peer-urls=http://etcd-current-master-node:2380 \ #节点与客户端通信的地址 ,比如 http://ip:2379,http://127.0.0.1:2379,客户端会连接到这里和 etcd 交互 --listen-client-urls=http://etcd-current-master-node :2379,http://127.0.0.1:2379 \ #对外通告的该节点客户端监听地址,http://ip:2379,这个值会通知集群中其他节点 --advertise-client-urls=http

    1.5K30发布于 2021-10-18
  • 来自专栏LinkinStar's Blog

    浅入深出ETCD之【集群部署与golang客户端使用】

    之前说了etcd的简介,命令行使用,一些基本原理。这次来说说现实一点的集群部署和golang版本的客户端使用。 # 供外部客户端使用的url listen-client-urls: http://192.168.4.225:2379,http://127.0.0.1:2379 # 广播给外部客户端使用的url advertise-client-urls https://doczhcn.gitbook.io/etcd/index/index-1/clustering Golang客户端使用 这里来实际用代码操作一下etcd,还是和之前使用命令行一样,get /put/del/watch/lease用一下这些操作,其他操作请查看doc https://godoc.org/github.com/coreos/etcd/clientv3 客户端下载 这里不建议使用 main() { // 配置客户端连接 client, err := clientv3.New(clientv3.Config{ // Endpoints: []string

    1.3K20编辑于 2022-09-01
领券