使用go初步調用etcd
package main
import (
"context"
"go.etcd.io/etcd/clientv3"
"time"
)
func main() {
config := clientv3.Config{
Endpoints: []string{"106.12.72.181:23791", "106.12.72.181:23792"},
DialTimeout: 10 * time.Second,
}
client, _ := clientv3.New(config)
defer client.Close()
kv := clientv3.NewKV(client)
ctx := context.Background() //需要放入一个context,看自己需求选择合适的ctx
kv.Put(ctx,"/services/user","user1") //插入一条数据
}
可以看到etcd集群中两个节点都可以查询到这个key
root@instance-emh5jlpa:~# docker exec -it etcd1 sh
/go # etcdctl get /services/user
/services/user
user1
/go # exit
root@instance-emh5jlpa:~# docker exec -it etcd2 sh
/go # etcdctl get /services/user
/services/user
user1