macos快速搭建一个etcd集群

macos快速搭建一个etcd集群

要在mac os(或windows)上搭建一个etcd集群用做开发环境,现将搭建过程记录下:

1.先要把最新的镜像拉下来

docker pull quay.io/coreos/etcd

查看了下版本是3.3.8版本

2.在一台机器配置了3个容器,在机器上创建了子网络,三台容器在一个网络里

docker network create --subnet=192.167.0.0/16 etcdnet

3.启动节点:

启动第一个节点:

docker run -d -p 2379:2379 -p 2380:2380 --restart=always --net etcdnet --ip 192.167.0.168 --name etcd0 quay.io/coreos/etcd /usr/local/bin/etcd --name autumn-client0 -advertise-client-urls http://192.167.0.168:2379 -listen-client-urls http://0.0.0.0:2379 -initial-advertise-peer-urls http://192.167.0.168:2380 -listen-peer-urls http://0.0.0.0:2380 -initial-cluster-token etcd-cluster -initial-cluster autumn-client0=http://192.167.0.168:2380,autumn-client1=http://192.167.0.170:2480,autumn-client2=http://192.167.0.172:2580 -initial-cluster-state new

启动第二个节点:

docker run -d -p 2479:2479 -p 2480:2480 --restart=always --net etcdnet --ip 192.167.0.170 --name etcd1 quay.io/coreos/etcd /usr/local/bin/etcd --name autumn-client1 -advertise-client-urls http://192.167.0.170:2479 -listen-client-urls http://0.0.0.0:2479 -initial-advertise-peer-urls http://192.167.0.170:2480 -listen-peer-urls http://0.0.0.0:2480 -initial-cluster-token etcd-cluster -initial-cluster autumn-client0=http://192.167.0.168:2380,autumn-client1=http://192.167.0.170:2480,autumn-client2=http://192.167.0.172:2580 -initial-cluster-state new

启动第三个节点:

docker run -d -p 2579:2579 -p 2580:2580 --restart=always --net etcdnet --ip 192.167.0.172 --name etcd2 quay.io/coreos/etcd /usr/local/bin/etcd --name autumn-client2 -advertise-client-urls http://192.167.0.172:2579 -listen-client-urls http://0.0.0.0:2579 -initial-advertise-peer-urls http://192.167.0.172:2580 -listen-peer-urls http://0.0.0.0:2580 -initial-cluster-token etcd-cluster -initial-cluster autumn-client0=http://192.167.0.168:2380,autumn-client1=http://192.167.0.170:2480,autumn-client2=http://192.167.0.172:2580 -initial-cluster-state new

配置项说明:
–listen-client-urls:
用于监听客户端通讯的URL列表。这个标记告诉 etcd 在特定的 scheme://IP:port 组合上从客户端接收进来的请求。scheme 可是 http 或者 https。

–advertise-client-urls:
列出这个成员的客户端URL,通告给集群中的其他成员。这些 URL 可以包含域名。

–initial-advertise-peer-urls:
列出这个成员的伙伴 URL 以便通告给集群的其他成员。这些地方用于在集群中通讯 etcd 数据。至少有一个必须对所有集群成员可以路由的。这些 URL 可以包含域名。

–listen-peer-urls
用于监听伙伴通讯的URL列表。这个标记告诉 etcd 在特定的 scheme://IP:port 组合上从它的伙伴接收进来的请求。scheme 可是 http 或者 https

进入docker实例:
docker exec -it d48b21a7e439 /bin/sh
添加一个key:
ETCDCTL_API=3 etcdctl put mykey “this is awesome”

查询:
ETCDCTL_API=3 etcdctl get mykey

etcd连接地址即为:
“etcd”: [
“127.0.0.1:2379”,
“127.0.0.1:2479”,
“127.0.0.1:2579”
]

增加账号

ETCDCTL_API=3 etcdctl --endpoints http://172.16.130.130:2379,http://172.16.130.130:2479,http://172.16.130.130:2579 user add root

根据提示设置密码,将root账号设置为root角色

ETCDCTL_API=3 etcdctl --endpoints http://172.16.130.130:2379,http://172.16.130.130:2479,http://172.16.130.130:2579 user grant root root

开启身份验证:

ETCDCTL_API=3 etcdctl --endpoints http://172.16.130.130:2379,http://172.16.130.130:2479,http://172.16.130.130:2579 auth enable

创建其它账号:

ETCDCTL_API=3 etcdctl --user root --endpoints http://172.16.130.130:2379,http://172.16.130.130:2479,http://172.16.130.130:2579 user add hhq
前两次是输入hhq的密码xxxxxx,第三次是输入root密码

ETCDCTL_API=3 etcdctl --user root --endpoints http://172.16.130.130:2379,http://172.16.130.130:2479,http://172.16.130.130:2579 user grant hhq root
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值