etcd3.4集群安装并设置开机自启动

简介: --permanent永久生效,没有此参数重启后失效,防火墙打开2379和2380端口,同时刷新防火墙 firewall-cmd --zone=public --add-port=2379/tcp --permanentfirewall-cmd --zone=public --add-port=2.

192.172.0.84/85/86搭建etcd集群

--permanent永久生效,没有此参数重启后失效,防火墙打开2379和2380端口,同时刷新防火墙

firewall-cmd --zone=public --add-port=2379/tcp --permanent
firewall-cmd --zone=public --add-port=2380/tcp --permanent
firewall-cmd --reload

下载并解压etcd

cd /home/vitess/
wget https://github.com/etcd-io/etcd/releases/download/v3.4.1/etcd-v3.4.1-linux-amd64.tar.gz
tar -zxvf etcd-v3.4.1-linux-amd64.tar.gz -C /usr/local/
mv /usr/local/etcd-v3.4.1-linux-amd64 /usr/local/etcd

添加环境变量

vi /etc/profile

在最后添加一行

export ETCDCTL_API=3
执行source /etc/profile刷新环境变量

mkdir -p /var/lib/etcd/
mkdir -p /etc/etcd/

将etcd加入开机自启动中,创建对应的service文件

tee /usr/lib/systemd/system/etcd.service <<-'EOF'
[Unit]
Description=Etcd Server
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
Type=notify
WorkingDirectory=/var/lib/etcd/
EnvironmentFile=-/etc/etcd/etcd.conf
ExecStart=/bin/bash -c "GOMAXPROCS=$(nproc) /usr/local/etcd/etcd --name=${NAME} --data-dir=${DATA_DIR} --initial-advertise-peer-urls ${INITIAL_ADVERTISE_PEER_URLS} --listen-client-urls=${LISTEN_CLIENT_URLS} --listen-peer-urls=${LISTEN_PEER_URLS} --advertise-client-urls=${ADVERTISE_CLIENT_URLS} --initial-cluster-token=${INITIAL_CLUSTER_TOKEN} --initial-cluster=${INITIAL_CLUSTER} --initial-cluster-state=${INITIAL_CLUSTER_STATE} "
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
EOF

上面的开机启动文件中使用了/etc/etcd/etcd.conf文件,下面是具体的conf文件,每台机器对应的IP地址是不一样的

tee /etc/etcd/etcd.conf <<-'EOF'

84节点

NAME=etcd84
DATA_DIR="/var/lib/etcd/default.etcd"
LISTEN_PEER_URLS="http://192.172.0.84:2380"
LISTEN_CLIENT_URLS="http://192.172.0.84:2379,http://127.0.0.1:2379"
INITIAL_ADVERTISE_PEER_URLS="http://192.172.0.84:2380"
ADVERTISE_CLIENT_URLS="http://192.172.0.84:2379"
INITIAL_CLUSTER_STATE="new"
INITIAL_CLUSTER_TOKEN="etcd-cluster1"
INITIAL_CLUSTER="etcd85=http://192.172.0.85:2380,etcd86=http://192.172.0.86:2380,etcd84=http://192.172.0.84:2380"
EOF

tee /etc/etcd/etcd.conf <<-'EOF'

85节点

NAME=etcd85
DATA_DIR="/var/lib/etcd/default.etcd"
LISTEN_PEER_URLS="http://192.172.0.85:2380"
LISTEN_CLIENT_URLS="http://192.172.0.85:2379,http://127.0.0.1:2379"
INITIAL_ADVERTISE_PEER_URLS="http://192.172.0.85:2380"
ADVERTISE_CLIENT_URLS="http://192.172.0.85:2379"
INITIAL_CLUSTER_STATE="new"
INITIAL_CLUSTER_TOKEN="etcd-cluster1"
INITIAL_CLUSTER="etcd85=http://192.172.0.85:2380,etcd86=http://192.172.0.86:2380,etcd84=http://192.172.0.84:2380"
EOF

tee /etc/etcd/etcd.conf <<-'EOF'

86节点

NAME=etcd86
DATA_DIR="/var/lib/etcd/default.etcd"
LISTEN_PEER_URLS="http://192.172.0.86:2380"
LISTEN_CLIENT_URLS="http://192.172.0.86:2379,http://127.0.0.1:2379"
INITIAL_ADVERTISE_PEER_URLS="http://192.172.0.86:2380"
ADVERTISE_CLIENT_URLS="http://192.172.0.86:2379"
INITIAL_CLUSTER_STATE="new"
INITIAL_CLUSTER_TOKEN="etcd-cluster1"
INITIAL_CLUSTER="etcd85=http://192.172.0.85:2380,etcd86=http://192.172.0.86:2380,etcd84=http://192.172.0.84:2380"
EOF

通过systemctl start命令启动etcd服务,同时使用systemctl enable 命令将服务加入开机启动列表中

systemctl daemon-reload
systemctl enable etcd
systemctl start etcd
systemctl status etcd

查看集群信息

./etcdctl member list

目录
相关文章
|
安全 虚拟化 Docker
解决:VMware Workstation 与 Device/Credential Guard 不兼容
因为在官网下载了win版的docker,而会自带下载虚拟机Hyper-V,这个和我之前下载的vmware虚拟机造成冲突了,导致后者不能使用,所以打开vmware报错如下:
6895 0
解决:VMware Workstation 与 Device/Credential Guard 不兼容
|
应用服务中间件 nginx
安装nginx-rtmp-module模块与配置
安装nginx-rtmp-module模块与配置
|
NoSQL Serverless PHP
遇到报错但没有日志信息的情况,该如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
498 1
|
机器学习/深度学习 资源调度 算法
主动学习(Active Learning)简介综述汇总以及主流技术方案
3.主动学习(Active Learning)简介综述汇总以及主流技术方案
主动学习(Active Learning)简介综述汇总以及主流技术方案
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
649 3
|
存储 Cloud Native NoSQL
etcd 的简介以及发展历史
## 一、简介 etcd 是一个开源、分布式、一致性的键值存储系统。它是由 CoreOS(后来被 Red Hat 收购)开发的,旨在提供一个可靠的分布式协调服务。etcd 通常用于在分布式系统中进行配置管理、服务发现、分布式锁、选举等任务。 etcd 的特点包括: - **分布式一致性**:基于 Raft 共识算法,etcd 确保数据在分布式环境中的一致性和可靠性。 - **键值存储**:提供类似于 NoSQL 数据库的键值对存储功能。 - **高可用性**:通过多节点部署、自动故障转移等方式提高服务的可用性。 - **易于使用**:提供简单的 HTTP 和 gRPC API 进行数据操
586 1
|
存储 C语言
数据结构学习记录——图的遍历(深度优先搜索、广度优先搜索、为什么需要两种遍历、图不连通怎么办)
数据结构学习记录——图的遍历(深度优先搜索、广度优先搜索、为什么需要两种遍历、图不连通怎么办)
928 0
|
前端开发 Java 关系型数据库
详解Mybatis之分页插件【PageHelper】
详解Mybatis之分页插件【PageHelper】