记一次etcd数据恢复

使用官方示例

bash 复制代码
  etcd:
    image: bitnami/etcd:3.4.15
    restart: always
    volumes:
      - ./etcd_data:/bitnami/etcd
    environment:
      ALLOW_NONE_AUTHENTICATION: "yes"
      ETCD_ADVERTISE_CLIENT_URLS: "http://etcd:2379"
      ETCD_LISTEN_CLIENT_URLS: "http://0.0.0.0:2379"

    ports:
      - "2379:2379/tcp"
    networks:
      docker:

备份

ETCDCTL_API=3 docker exec -it etcd etcdctl --endpoints=":2379" snapshot save "/bitnami/etcd/snapshot.db"

这时snapshot.db文件在./etcd_data下面,可以复制到对应宿主机上的etcd映射目录下

恢复

bash 复制代码
1 
docker docker exec -it   api-etcd-1 bash
2
etcdctl snapshot restore /bitnami/etcd/snapshot.db --data-dir /bitnami/etcd/new_data
3
退出变更配置,指定新的数据目录 - ./etcd_data/new_data:/bitnami/etcd/data
4
重新启动服务
相关推荐
青山撞入怀111438 分钟前
sql题目练习——聚合函数
数据库·sql
摇滚侠43 分钟前
Spring Boot 3零基础教程,创建第一个 Spring Boot 3 应用,Spring Boot 3 外部配置,笔记03
java·spring boot·笔记
disanleya44 分钟前
MySQL默认端口为何是3306?修改后如何管理?
数据库·mysql·adb
没有bug.的程序员3 小时前
服务网格 Service Mesh:微服务通信的终极进化
java·分布式·微服务·云原生·service_mesh
川石课堂软件测试4 小时前
MySQL数据库之DBA命令
数据库·网络协议·mysql·http·单元测试·prometheus·dba
ybb_ymm5 小时前
mysql8在linux下的默认规则修改
linux·运维·数据库·mysql
南尘NCA86666 小时前
企业微信防封防投诉拦截系统:从痛点解决到技术实现
java·网络·企业微信
倔强的石头_6 小时前
Navicat Premium 与金仓数据库融合实践:高效管理国产数据库新方案
数据库
程序新视界7 小时前
为什么要尽量将MySQL表字段要设置为NOT NULL?
数据库·mysql·dba