在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
from:https://www.toutiao.com/a6752699652321051147/ 所依赖软件各个软件及版本 PS:下文中所有软件安装均基于Linux系统。 安装GO(golang)下载go安装包: wget https://studygolang.com/dl/golang/go1.13.3.linux-amd64.tar.gz 解压安装包到/usr/local目录: tar -C /usr/local -zxvf go1.13.3.linux-amd64.tar.gz 配置环境变量: vim /etc/profile #新增以下内容 export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin export GOPATH=$HOME/go export GO111MODULE=on export GOPROXY=https://goproxy.cn,direct 保存之后,执行: source /etc/profile 验证go是否安装成功: go version 看到输出类似下列内容即可:
安装micro在任意目录执行: go get github.com/micro/micro 验证micro是否安装成功: micro --version 看到输出类似下列内容即可:
安装protobuf下载protobuf安装包: wget https://github.com/protocolbuffers/protobuf/releases/download/v3.10.0/protoc-3.10.0-linux-x86_64.zip 解压安装包到/usr/local目录: unzip -d /usr/local/protoc protoc-3.10.0-linux-x86_64.zip 配置环境变量: vim /etc/profile #新增以下内容 export PATH=$PATH:/usr/local/protoc/bin 验证是否安装成功: protoc --version 看到输出类似下列内容即可:
安装protoc-gen-go在任意目录执行: go get -u github.com/golang/protobuf/protoc-gen-go 安装ETCD下载etcd安装包: wget https://github.com/etcd-io/etcd/releases/download/v3.4.2/etcd-v3.4.2-linux-amd64.tar.gz 解压并将etcd和etcdctl两个二进制文件拷贝到/usr/local/bin 目录: #解压安装包至/tmp目录 tar -C /tmp -zxvf etcd-v3.4.2-linux-amd64.tar.gz #拷贝etcd和etcdctl至/usr/local/bin目录 cp /tmp/etcd-v3.4.2-linux-amd64/{etcd,etcdctl} /usr/local/bin #验证etcd是否安装成功: etcd --version 配置ETCD集群关于etcd集群配置,共有三种形式:静态启动、etcd服务发现、dns服务发现。 该系列教程重点在于go-micro的使用,所以etcd的集群配置不会详细讲解,本文采用相对便捷的etcd服务发现形式来配置集群。对于其他两种集群形式读者可自行查阅资料去实践一下。 etcd集群推荐采用奇数个节点,此处我们使用三个节点组成一个etcd集群: PS:因为笔者是在本地电脑上演示,所以使用同一个ip不同端口来模拟三台不同的机器。 模拟3个etcd节点
etcd常用配置项说明: etcd常用配置项说明 准备工作:
使用下列命令分别启动3个etcd节点: 启动节点1: etcd --name etcd1 \ --data-dir /tmp/etcd1 \ --initial-advertise-peer-urls http://192.168.49.234:2380 \ --listen-peer-urls http://192.168.49.234:2380 \ --listen-client-urls http://192.168.49.234:2379,http://127.0.0.1:2379 \ --advertise-client-urls http://192.168.49.234:2379 \ --discovery https://discovery.etcd.io/8692168162049f92ac053ade822284ff 启动节点2: etcd --name etcd2 \ --data-dir /tmp/etcd2 \ --initial-advertise-peer-urls http://192.168.49.234:2480 \ --listen-peer-urls http://192.168.49.234:2480 \ --listen-client-urls http://192.168.49.234:2479,http://127.0.0.1:2479 \ --advertise-client-urls http://192.168.49.234:2479 \ --discovery https://discovery.etcd.io/8692168162049f92ac053ade822284ff 启动节点3: etcd --name etcd3 \ --data-dir /tmp/etcd3 \ --initial-advertise-peer-urls http://192.168.49.234:2580 \ --listen-peer-urls http://192.168.49.234:2580 \ --listen-client-urls http://192.168.49.234:2579,http://127.0.0.1:2579 \ --advertise-client-urls http://192.168.49.234:2579 \ --discovery https://discovery.etcd.io/8692168162049f92ac053ade822284ff 以上命令都执行成功之后,我们需要验证集群状态,确保集群组建成功: #查看集群成员 etcdctl member list #查看集群状态 etcdctl --endpoints=http://192.168.49.234:2479,http://192.168.49.234:2379,http://192.168.49.234:2579 endpoint status #查看集群健康情况 etcdctl --endpoints=http://192.168.49.234:2479,http://192.168.49.234:2379,http://192.168.49.234:2579 endpoint health 服务。 |
请发表评论