linux 安装etcd版本3.5.0

1,安装golang环境,参考连接https://blog.csdn.net/h394600493/article/details/120431561?spm=1001.2014.3001.5502https://blog.csdn.net/h394600493/article/details/120431561?spm=1001.2014.3001.5502

2,下载etcd 3.5.0版本 

git clone https://github.com/etcd-io/etcd.git -b v3.5.0
cd etcd

3,编译etcd

# 在etcd目录执行
make 
make install
cp ./bin/* /usr/local/bin/ -fr

执行过程中遇到问题

1,go: go.etcd.io/etcd/client/v2@v2.305.0 requires
        github.com/json-iterator/go@v1.1.11: Get "https://proxy.golang.org/github.com/json-iterator/go/@v/v1.1.11.mod": dial tcp 172.217.160.81:443: i/o timeout

解决方法:   

# 执行命令,换一个国内能访问的代理地址:https://goproxy.cn
go env -w GOPROXY=https://goproxy.cn

2, must be run from 'go.etcd.io/etcd/v3' module directory

在etcd目录编辑go.mod文件,加入了replace google.golang.org/grpc => google.golang.org/grpc v1.26.0,如下图,之后执行命令go mod tidy,在接着第3步编译etcd

vi go.mod
module go.etcd.io/etcd/v3

go 1.16

replace (
        go.etcd.io/etcd/api/v3 => ./api
        go.etcd.io/etcd/client/pkg/v3 => ./client/pkg
        go.etcd.io/etcd/client/v2 => ./client/v2
        go.etcd.io/etcd/client/v3 => ./client/v3
        go.etcd.io/etcd/etcdctl/v3 => ./etcdctl
        go.etcd.io/etcd/etcdutl/v3 => ./etcdutl
        go.etcd.io/etcd/pkg/v3 => ./pkg
        go.etcd.io/etcd/raft/v3 => ./raft
        go.etcd.io/etcd/server/v3 => ./server
        go.etcd.io/etcd/tests/v3 => ./tests
)

replace google.golang.org/grpc => google.golang.org/grpc v1.26.0

require (
        github.com/bgentry/speakeasy v0.1.0
        github.com/dustin/go-humanize v1.0.0
        github.com/spf13/cobra v1.1.3
        go.etcd.io/bbolt v1.3.6
        go.etcd.io/etcd/api/v3 v3.5.0
        go.etcd.io/etcd/client/pkg/v3 v3.5.0
        go.etcd.io/etcd/client/v2 v2.305.0
        go.etcd.io/etcd/client/v3 v3.5.0
        go.etcd.io/etcd/etcdctl/v3 v3.5.0
        go.etcd.io/etcd/etcdutl/v3 v3.5.0
        go.etcd.io/etcd/pkg/v3 v3.5.0
        go.etcd.io/etcd/raft/v3 v3.5.0
        go.etcd.io/etcd/server/v3 v3.5.0
        go.etcd.io/etcd/tests/v3 v3.5.0
        go.uber.org/zap v1.17.0
        golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba
        google.golang.org/grpc v1.38.0
        gopkg.in/cheggaaa/pb.v1 v1.0.28
)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Linux安装etcd,你可以按照以下步进行操作: 1. 首先,确保你的Linux系统已连接到互联网。 2. 打开终端,并使用curl命令下载etcd的二进制文件。你可以在etcd的官方GitHub页面(https://github.com/etcd-io/etcd/releases)上找到最新版本的下载链接。选择适合你系统架构的二进制文件下载。 ``` curl -L https://github.com/etcd-io/etcd/releases/download/v3.5.0/etcd-v3.5.0-linux-amd64.tar.gz -o etcd-v3.5.0-linux-amd64.tar.gz ``` 3. 解压下载的二进制文件: ``` tar xzvf etcd-v3.5.0-linux-amd64.tar.gz ``` 4. 进入解压后的etcd目录: ``` cd etcd-v3.5.0-linux-amd64 ``` 5. 将etcdetcdctl二进制文件复制到系统路径中: ``` sudo cp etcd /usr/local/bin sudo cp etcdctl /usr/local/bin ``` 6. 创建etcd的配置文件,例如etcd.conf: ``` sudo nano /etc/etcd.conf ``` 在配置文件中,你可以指定etcd的监听地址、数据目录等。根据需要进行配置。 7. 创建一个systemd服务单元文件,例如etcd.service: ``` sudo nano /etc/systemd/system/etcd.service ``` 在服务单元文件中,添加以下内容: ``` [Unit] Description=etcd After=network.target [Service] ExecStart=/usr/local/bin/etcd --config-file /etc/etcd.conf Restart=always Type=simple [Install] WantedBy=multi-user.target ``` 8. 启用并启动etcd服务: ``` sudo systemctl enable etcd.service sudo systemctl start etcd.service ``` 现在,etcd就已经成功安装在你的Linux系统上,并作为一个后台服务在运行。你可以根据需要进一步配置和使用etcd来实现分布式键值存储等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值