云网牛站
所在位置:首页 > Linux云服务器 > 在Ubuntu 18.04/Ubuntu 16.04服务器上安装etcd的方法

在Ubuntu 18.04/Ubuntu 16.04服务器上安装etcd的方法

2019-01-05 11:30:52作者:戴进稿源:云网牛站

本文介绍如何在Ubuntu 18.04/Ubuntu 16.04服务器上安装etcd的方法。

 

简介

Etcd是一个用Go编写的简单,可靠,快速和安全的开源键值存储,它使用Raft一致性算法来管理高度可用的复制日志。

在Ubuntu 18.04/Ubuntu 16.04服务器上安装etcd的方法

 

相关链接

etcd下载地址

 

在Ubuntu 18.04/Ubuntu 16.04服务器上安装etcd的方法

Etcd作为二进制包分发,但你可以从源代码安装它。在本文中我们将下载预先构建的二进制包,目前最新版本是3.3.10。

在Ubuntu 18.04/Ubuntu 16.04上下载最新版本的etcd:

sudo apt -y install wget

wget https://github.com/etcd-io/etcd/releases/download/v3.3.10/etcd-v3.3.10-linux-amd64.tar.gz

提取下载的etcd-v3.3.10-linux-amd64.tar.gz文件:

tar xvf etcd-v3.3.10-linux-amd64.tar.gz

切换到新文件目录

cd etcd-v3.3.10-linux-amd64

将etcd和etcdctl二进制文件移动到/usr/local/bin目录:

sudo mv etcd etcdctl /usr/local/bin

确认etcd版本,如下:

$ etcd --version

etcd Version: 3.3.10

Git SHA: 27fc7e2

Go Version: go1.10.4

Go OS/Arch: linux/amd64

创建Etcd配置文件和数据目录:

sudo mkdir -p /var/lib/etcd/

sudo mkdir /etc/etcd

创建etcd系统用户:

sudo groupadd --system etcd

sudo useradd -s /sbin/nologin --system -g etcd etcd

将/var/lib/etcd/目录所有权设置为etcd用户:

sudo chown -R etcd:etcd /var/lib/etcd/

 

配置Systemd并启动etcd服务

为etcd创建一个新的systemd服务文件:

sudo vim /etc/systemd/system/etcd.service

将以下数据粘贴到etcd.service文件中:

[Unit]

Description=etcd key-value store

Documentation=https://github.com/etcd-io/etcd

After=network.target

[Service]

User=etcd

Type=notify

Environment=ETCD_DATA_DIR=/var/lib/etcd

Environment=ETCD_NAME=%m

ExecStart=/usr/local/bin/etcd

Restart=always

RestartSec=10s

LimitNOFILE=40000

[Install]

WantedBy=multi-user.target

重新加载systemd服务并在Ubuntu 18.04/Ubuntu 16.04系统上启动etcd:

sudo systemctl  daemon-reload

sudo systemctl  start etcd.service

检查服务状态,请运行sudo systemctl  status etcd.service命令,返回的信息如下图所示:

在Ubuntu 18.04/Ubuntu 16.04服务器上安装etcd的方法

该服务将在localhost地址端口2379上启动:

$ ss -tunelp | grep 2379

tcp   LISTEN 0 128 127.0.0.1:2379 0.0.0.0:*  uid:998 ino:72981 sk:45c <-> 

$ etcdctl member list

8e9e05c52164694d: name=5fbf3d068d6c491eb687a7a427fc2263 peerURLs=http://localhost:2380 clientURLs=http://localhost:2379 isLeader=true

 

关于部署etcd集群的参考文章

基于DNS动态发现方式部署etcd集群

基于已有集群动态发现方式部署etcd集群

Ubuntu 16.04下通过静态发现方式部署etcd集群

 

相关主题

CoreOS团队开源项目etcd的使用入门

精选文章
热门文章