package main import ( "context" "fmt" "go.etcd.io/etcd/client/v3" "time" ) func main() { cli, err := clientv3.New(clientv3.Config{ Endpoints: []string{"43.143.245.135:2379"}, DialTimeout: 5 * time.Second, }) if err != nil { //handle error! fmt.Println("connect etcd server failed,error:", err) } defer cli.Close() //put ctx, cancel := context.WithTimeout(context.Background(), time.Second) _, err = cli.Put(ctx, "wangao", "freedom") cancel() if err != nil { fmt.Println("put to etcd failed,error:", err) } //get ctx, cancel = context.WithTimeout(context.Background(), time.Second) resp, err := cli.Get(ctx, "wangao") cancel() if err != nil { fmt.Println("get from etcd failed,error:", err) } for _, ev := range resp.Kvs { fmt.Println(string(ev.Key), string(ev.Value)) } }