记一次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
重新启动服务
相关推荐
SelectDB11 分钟前
高并发 BI 看板怎么撑住:隔离与加速配置速查
大数据·数据库·数据分析
杨杨杨大侠19 分钟前
DeepSeek Harness:连 Agent Loop 都能替换的插件架构
java·人工智能·agent
SL_staff19 分钟前
私有化低代码运维三重雷区:JVS开源栈中的Kafka/ES/RabbitMQ治理实践
java·低代码·全栈
yuniko-n20 分钟前
【算法】约瑟夫环问题
java·算法
郝亚军29 分钟前
manifest 中 `sha256` 与 `signValue` 的作用
java·开发语言·数据结构
l1t43 分钟前
测试DuckDB v2.1.0-alpha49002的bignum乘法
数据库·sql·算法·duckdb
譕痕44 分钟前
stripe 实例
java·开发语言·stripe·checksession
墨子夕1 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(前言篇)
java·开发语言·设计模式
骇客野人1 小时前
Linux 全套实操方案(含目录详解、文件传输、日志、文件规范、环境变量、Java 应用部署运维)
java·linux·运维
麦壳饼1 小时前
SonnetDB:向量召回率评估中的精确基线与参数记录
数据库·sonnetdb