zoukankan      html  css  js  c++  java
  • etcd 单节点部署、备份与恢复

    etcd 部署
    wget https://github.com/etcd-io/etcd/releases/download/v3.3.13/etcd-v3.3.13-linux-amd64.tar.gz
    tar -zxvf etcd-v3.3.13-linux-amd64.tar.gz
    cd etcd-v3.3.13-linux-amd64
    目录下有两个可执行文件etcd 和 etcdctl
    cp etcd /usr/bin/
    cp etcdctl /usr/bin/
    添加以下内容:
    $ cat  /usr/lib/systemd/system/etcd.service 
    [Unit]
    Description=Etcd Server
    After=network.target
    [Service]
    Type=simple
    WorkingDirectory=/data/etcd
    EnvironmentFile=-/etc/etcd/etcd.conf
    ExecStart=/usr/bin/etcd
    [Install]
    WantedBy=multi-user.target
    
    
    mkdir -p /data/etcd
    mkdir -p /etc/etcd/
    添加以下内容:
    $ cat /etc/etcd/etcd.conf
    ETCD_NAME=default
    ETCD_DATA_DIR="/data/etcd/default.etcd/"
    ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
    ETCD_ADVERTISE_CLIENT_URLS="http://0.0.0.0:2379"
    
    systemctl start etcd.service
    
    备份操作:
    [root@xy-test05 ~]# cat /opt/etcdbak.sh 
    #!/bin/bash
    local_ip=`ip a | grep 172.24 | awk -F/ '{print $1}' | awk '{print $2}'`
    date=$(date +%Y-%m-%d)
    backup_path="/data/dataetcd_back"
    mkdir -p /data/dataetcd_back
    cd $backup_path
    备份如果出错的话执行以下操作:
     export ETCDCTL_API=3
    etcdctl --endpoints localhost:2379 snapshot save  $local_ip-snapshot-$date.db
    if [ $? -eq 0 ];then
      /usr/bin/rsync -av $local_ip-snapshot-$date.db  172.24.119.35::yunwei_etcd_backup/${local_ip}/$date
      rm -rf $local_ip-snapshot-$date.db
    fi
    
    etcd 恢复操作:
    etcd 恢复之前配置文件:
    $ cat /etc/etcd/etcd.conf
    ETCD_NAME=default
    ETCD_DATA_DIR="/data/etcd/default.etcd/"
    ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
    ETCD_ADVERTISE_CLIENT_URLS="http://0.0.0.0:2379"
    
    操作:
     export ETCDCTL_API=3
     cd /data/etcd/
     etcdctl snapshot restore  /data/etcdnew/172.24.119.41-snapshot-2019-08-30.db    --data-dir=./data/etcd/default.etcd 
     此时会在/data/etcd/ 下新建立 data目录,因此会改变存储路径,此时需要进行数据目录的修改
     mv default.etcd  default.etcd_bak
     mv /data/etcd/data/etcd/default.etcd   /data/etcd/
     rm -rf /data/etcd/data
    
    保持配置文件不变:
    $ cat /etc/etcd/etcd.conf
    ETCD_NAME=default
    ETCD_DATA_DIR="/data/etcd/default.etcd/"
    ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
    ETCD_ADVERTISE_CLIENT_URLS="http://0.0.0.0:2379"
    
    $ systemctl restart etcd
    

      

  • 相关阅读:
    代码重构~方法归子
    代码重构~代码注释
    VS2010安装帮助文档
    imagecreate()与imagecreatetruecolor()区别
    php cookie 和session详解
    horner's rule霍纳法则及综合除法
    php单引号和双引号的区别与用法
    php通过session判断用户是否登录
    php 产生验证码
    基于递归的整数幂的计算
  • 原文地址:https://www.cnblogs.com/lixinliang/p/12217292.html
Copyright © 2011-2022 走看看