如何在 Ubuntu 上安装 etcd如何在 Ubuntu 上安装 etcd如何在 Ubuntu 上安装 etcd如何在 Ubuntu 上安装 etcd
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 上安装 etcd

Etcd 是一个免费开源的分布式安全键值存储,用于存储给定分布式系统的最关键信息。 Etcd 是用 Go 编写的,使其在分布式系统中速度极快,而不会产生集群机器的性能开销。在本指南中,您将了解在 Ubuntu 系统上安装和设置 etcd 集群的基础知识。

在本教程中您将学习:

  • etcd 和 Redis 有什么区别

  • 如何使用官方二进制文件安装 etcd

  • 如何从源代码安装 ectd

  • 如何从标准 Ubuntu 存储库安装 etcd

  • 如何管理etcd服务

Redis 与 Etcd

Etcd 和 Redis 都是在分布式环境中存储和管理数据的分布式系统,但存在一些关键差异,这使得它们适用于不同的用例。

你知道吗?
分布式键值存储是一种使用分布式架构将数据存储在多个服务器上的数据存储系统。此类系统可以提供高水平的可扩展性和可靠性,同时保持低延迟。

等

etcd 的主要特点之一是其强一致性模型,它确保集群中的所有节点同时看到相同的数据。因此,它非常适合需要强一致性的应用程序,例如需要协调多个节点的操作的应用程序。

Etcd 还具有高可用性,支持领导者选举和自动故障转移,这意味着即使某些集群节点发生故障,它也可以继续运行。 etcd 的另一个关键特性是它对分布式事务的支持。该功能允许多个节点以协调的方式对存储中的数据进行更改,确保数据保持一致

雷迪斯

另一方面,Redis 具有高性能。因此,它通常用于存储需要快速访问的数据,例如实时分析或高速消息处理。

与 etcd 不同,Redis 不提供强一致性保证。相反,它使用“最后写入获胜”模型,这意味着最近对数据存储的写入将覆盖任何以前的写入。这使得它更适合容忍一定程度的不一致的应用程序,例如缓存系统或实时分析。

在 Ubuntu 上安装 etcd

正如我们将在本教程中发现的,在 Ubuntu 系统上安装 etcd 有多种方法。

使用包管理器在 Ubuntu 上安装 etcd

我们还可以使用 APT 包管理器在 Ubuntu 上安装 etcd 数据库。我们可以首先使用以下命令刷新系统包:

$ sudo apt-get update

接下来,安装 etcd 数据库:

$ sudo apt-get install etcd

预构建的二进制安装

最常见的方法是使用预构建的二进制包。

  1. 我们可以从更新包存储库并安装所需的工具开始。
    打开命令并运行命令:

    $ sudo apt-get update
    $ sudo apt-get install wget curl -y
    

  2. 导航到 GitHub 上的 etcd 二进制文件发布页面并选择最新版本。确保选择 3.5 及更高版本。

    使用以下命令通过 cURL 或 wget 下载二进制文件:

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

    下载后,使用以下命令解压缩下载的存档:

    $ tar xvf etcd-v3.5.6-linux-amd64.tar.gz
    

  3. 接下来,重命名提取的目录:

    $ mv etcd-v3.5.6-linux-amd64 etcd
    

    导航到目录:

    $ cd etcd
    

    将所有二进制文件移动到 /usr/local/bin 文件夹中,如下所示:

    $ sudo mv etcd etcdctl etcdutl /usr/local/bin/
    
  4. 通过检查已安装的版本来验证已安装的二进制文件是否可以在您的系统上运行:

    $ etcd --version
    etcd Version: 3.5.6
    Git SHA: cecbe35ce
    Go Version: go1.16.15
    Go OS/Arch: linux/amd64
    

    上面的命令应该返回有关已安装的 etcd 版本的详细信息。您还可以检查 etcdctl 和 etcdutl 实用程序的已安装版本,如下所示:

    $ etcdctl version
    Resulting output:
    etcdctl version: 3.5.6
    API version: 3.5
    

    要检查 etcdutl 的安装版本,请运行:

    $ etcdutl version
    etcdutl version: 3.5.6
    API version: 3.5
    

从源代码在 Ubuntu 上安装 etcd

在某些情况下,您可能希望从源代码构建自定义 etcd 二进制文件。

  1. 首先使用以下命令在系统上安装 Go 编译器和 git:

    $ sudo apt-get install golang git -y
    

    接下来,使用以下命令克隆 etcd 存储库:

    $ git clone https://github.com/etcd-io/etcd.git
    

  2. 切换到 etcd 目录:

    $ cd etcd
  3. 接下来,使用以下命令运行构建脚本:

    $ ./scripts/build.sh

  4. 构建过程完成后,您可以在 etcd 主文件夹的 bin 目录中找到二进制文件。

    将 etcd 二进制文件的路径添加到系统路径中,如下所示:

    $ export PATH="$PATH:`pwd`/bin"
  5. 您可以通过检查版本来验证您是否有权访问 etcd 命令:

    $ etcd --version

管理 ETCD 服务

根据安装方法,您将需要启动、停止或重新启动系统上的 etcd 服务。如果您通过包管理器安装了 etcd 数据库,则可以运行下面提供的命令。 启动etcd服务:

$ sudo service etcd start

停止etcd服务:

$ sudo service etcd stop

重启etcd服务:

$ sudo service etcd restart

您还可以使用以下命令检查服务状态:

$ sudo service etcd status

手动 Etcd 服务设置

如果您手动或编译安装了etcd数据库,则需要手动设置etcd服务。本节将引导您完成在计算机上设置 etcd 服务的过程。 首先为 etcd 服务创建配置和数据目录。

$ sudo mkdir -p /var/lib/etcd/default
$ sudo mkdir /etc/etcd/

将 /var/lib/etcd 目录的所有权更改为您的目标用户。在下面的命令中,将目录的所有权设置为 ubuntu 用户:

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

接下来,创建一个 etcd 单元文件,以允许您使用 service 命令管理 etcd 守护进程:

$ sudo touch /etc/systemd/system/etcd.service

编辑该文件并添加以下服务配置。

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

添加以下数据:

[Unit]
Description=etcd - highly-available key value store
Documentation=https://etcd.io/docs
Documentation=man:etcd
After=network.target
Wants=network-online.target

[Service]
Environment=DAEMON_ARGS=
Environment=ETCD_NAME=%H
Environment=ETCD_DATA_DIR=/var/lib/etcd/default
EnvironmentFile=-/etc/default/%p
Type=notify
User=ubuntu
PermissionsStartOnly=true
#ExecStart=/bin/sh -c "GOMAXPROCS=$(nproc) /usr/bin/etcd $DAEMON_ARGS"
ExecStart=/usr/bin/etcd $DAEMON_ARGS
Restart=on-abnormal
#RestartSec=10s
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
Alias=etcd2.service

将用户替换为您希望运行 etcd 服务的目标用户名。如果您在安装过程中指定了自定义目录,还可以更改 bin 目录的位置。 接下来,重新加载 systemd 守护进程

$ sudo systemctl daemon-reload

启用该服务在启动时启动:

$ sudo systemctl enable etcd.service

接下来,使用 systemd 命令启动 etcd 服务:

$ sudo systemctl start etcd.service

最后查看服务状态:

$ sudo systemctl status etcd.service

上面的命令将输出服务状态。

结论

本文提供了在 Ubuntu 系统上安装和设置 etcd 服务的详细指南。我们讨论了三种不同的安装方法:预构建的二进制包、从源代码构建和使用包管理器。我们还介绍了如何管理 etcd 服务,无论是通过包管理器安装还是手动安装。通过遵循本指南中概述的步骤,您应该能够在 Ubuntu 系统上成功安装和设置 etcd 集群。

©2015-2025 艾丽卡 support@alaica.com