Linux下ETCD安装、配置、命令

ETCD 是一个分布式的键值存储系统,主要用于分布式系统中的配置共享和服务发现。它是 Kubernetes 的核心组件之一。以下是关于在 Linux 下安装、配置和使用 ETCD 的指南。

1. 安装 ETCD

在 Linux 系统上安装 ETCD 有几种方式,可以通过包管理器安装或者直接下载二进制文件。

1.1 通过包管理器安装

对于基于 Debian 的系统(如 Ubuntu):

sudo apt-get update
sudo apt-get install etcd

对于基于 RedHat 的系统(如 CentOS):

sudo yum install etcd

1.2 通过二进制文件安装
  1. 下载 ETCD 二进制文件

    首先,检查最新版本的 ETCD 并下载:

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

  2. 解压并安装

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

    sudo mv etcd-v3.5.0-linux-amd64/etcd* /usr/local/bin/

  3. 验证安装

    etcd --version

2. 配置 ETCD

ETCD 的配置可以通过配置文件或者命令行参数传递。配置文件通常位于 /etc/etcd/etcd.conf

2.1 配置文件示例

创建或编辑 /etc/etcd/etcd.conf 文件:

[Member]
name: 'default'
data-dir: '/var/lib/etcd/default.etcd'
listen-peer-urls: 'http://localhost:2380'
listen-client-urls: 'http://localhost:2379'

[Clustering]
initial-advertise-peer-urls: 'http://localhost:2380'
advertise-client-urls: 'http://localhost:2379'
initial-cluster: 'default=http://localhost:2380'
initial-cluster-token: 'etcd-cluster'
initial-cluster-state: 'new'

2.2 命令行参数示例

启动 ETCD 时,可以直接使用命令行参数进行配置:

etcd --name default \
     --data-dir /var/lib/etcd/default.etcd \
     --listen-peer-urls http://localhost:2380 \
     --listen-client-urls http://localhost:2379 \
     --initial-advertise-peer-urls http://localhost:2380 \
     --advertise-client-urls http://localhost:2379 \
     --initial-cluster default=http://localhost:2380 \
     --initial-cluster-token etcd-cluster \
     --initial-cluster-state new

3. 启动 ETCD

ETCD 可以作为系统服务启动,也可以手动启动。

3.1 作为系统服务启动
  1. 创建 systemd 服务文件 /etc/systemd/system/etcd.service

    [Unit]
    Description=etcd key-value store
    Documentation=https://github.com/coreos/etcd
    After=network.target
    
    [Service]
    Type=notify
    ExecStart=/usr/local/bin/etcd --config-file=/etc/etcd/etcd.conf
    Restart=always
    RestartSec=5s
    LimitNOFILE=40000
    
    [Install]
    WantedBy=multi-user.target
    
  2. 启动服务并设置开机自启动

    sudo systemctl daemon-reload
    sudo systemctl start etcd
    sudo systemctl enable etcd

3.2 手动启动

直接在终端中运行 etcd 命令:

etcd --config-file=/etc/etcd/etcd.conf

4. 使用 ETCD

4.1 基本命令
  • 写入键值

    etcdctl put foo "Hello, ETCD"

  • 读取键值

    etcdctl get foo

  • 列出所有键值

    etcdctl get "" --prefix --keys-only

  • 删除键值

    etcdctl del foo

  • 监控键值变化

    etcdctl watch foo

4.2 集群相关命令
  • 查看集群状态

    etcdctl endpoint status --write-out=table

  • 查看集群成员

    etcdctl member list

5. 进阶配置

  • 数据持久化:确保 data-dir 参数指向一个稳定的存储位置,以保证ETCD在重启或崩溃后能够恢复数据。
  • 安全性:使用TLS证书配置 client-transport-securitypeer-transport-security 来加密通信。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

愿时光不负.

爱意随风起,风止意难平。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值