欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

etcd搭建及使用

程序员文章站 2022-07-13 22:34:21
...

etcd搭建

version: '3.5'
services:
  etcd1:
    image: quay.io/coreos/etcd
    container_name: etcd1
    restart: always
    volumes:
      - ./data:/etcd-data
    command: etcd -name etcd1 - --data-dir=/etcd-data -advertise-client-urls http://0.0.0.0:2379 -listen-client-urls http://0.0.0.0:2379 -listen-peer-urls http://0.0.0.0:2380 -initial-cluster-token etcd-cluster -initial-cluster "etcd1=http://etcd1:2380" -initial-cluster-state new
    ports:
      - 2379:2379
      - 2380:2380
    networks:
      - byfn
networks:
  byfn:

#/usr/local/bin/etcd #启动命令
#data-dir=/etcd-data  #指定节点的数据存储目录,这些数据包括节点ID,集群ID,集群初始化配置
#name etcd # 节点名称
#initial-advertise-peer-urls http://${NODE}:2380 #告知集群其他节点url
#listen-peer-urls http://0.0.0.0:2380 #监听URL,用于与其他节点通讯
#advertise-client-urls http://${NODE1}:2379 #告知客户端url, 也就是服务的url
#listen-client-urls http://0.0.0.0:2379 #监听客户端地址
#initial-cluster etcd=http://${NODE1}:2380 #集群中所有节点

etcd使用

#就是很简单的key value
etcdctl put "hello" "world"
etcdctl get "hello"

# 顺序存储的键可以使用前缀模糊查询,目的是:比如查询订单服务的所有接口,不用一个一个的查询
etcdctl put "/users/user1" "zs"
etcdctl put "/users/user2" "ls"
etcdctl get "/users/" --prefix   # 查询全部该
etcdctl del "/users/user2"

//watch机制的作用是和服务端和客户端建立一个socket链接,当服务端数据发生变化时将消息推送给客户端

#客户端1
watch "/users/" --prefix    # 监听该前缀数据变化,此时另起命令行操作数据,则当前命令行能监听到
PUT
/users/add
Hello1

#客户端2
etcdctl put  /users/add Hello1 watch
相关标签: Etcd学习篇