rancher2.0-2.4备份和恢复
**说明:**此文按照rancher官网实战操作
url: https://docs.rancher.cn/docs/rancher2/backups/2.0-2.4/single-node-backups/_index
一、备份前准备
修改rancher密码:
docker exec -it <容器id> reset-password
docker run --volumes-from rancher-data-<DATE> -v $PWD:/backup busybox tar pzcvf /backup/rancher-data-backup-<RANCHER_VERSION>-<DATE>.tar.gz /var/lib/rancher
占位符 | 值 | 描述 |
---|---|---|
<RANCHER_CONTAINER_TAG> | registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.4.11 | 当前安装的 Rancher Server 镜像 |
<RANCHER_CONTAINER_NAME> | stoic_fermi | 当前 Rancher 容器名称 |
<RANCHER_VERSION> v2.4.11 | 您正在为其创建备份的 Rancher 版本 | |
2-1-21 | 创建数据卷容器或备份的日期 |
1、创建备份
1.1、查出运行的rancher-server停止当前运行的容器
在这里我的rancher-server的端口是8443,我是根据端口检索的。
docker ps -a|grep 8443
docker stop stoic_fermi
1.2、使用下面的命令替换每个占位符,从刚刚停止的 Rancher 容器中创建一个数据容器
docker create --volumes-from <RANCHER_CONTAINER_NAME> --name rancher-data-<DATE> rancher/rancher:<RANCHER_CONTAINER_TAG>
docker create --volumes-from stoic_fermi --name rancher-data-2-1-2021 registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.4.11
1.3、从刚刚创建的数据容器(rancher-data-),创建一个备份包(rancher-data-backup-<RANCHER_VERSION>-.tar.gz)。使用以下命令,请替换每个占位符。
docker run --volumes-from rancher-data-<DATE> -v $PWD:/backup:z busybox tar pzcvf /backup/rancher-data-backup-<RANCHER_VERSION>-<DATE>.tar.gz /var/lib/rancher
docker run --volumes-from rancher-data-2-1-2021 -v $PWD:/backup:z busybox tar pzcvf /backup/rancher-data-backup-v2.4.11-2-1-2021.tar.gz /var/lib/rancher
二、恢复准备
docker run --volumes-from <RANCHER_CONTAINER_NAME> -v $PWD:/backup \
busybox sh -c "rm /var/lib/rancher/* -rf && \
tar pzxvf /backup/rancher-data-backup-<RANCHER_VERSION>-<DATE>"
占位符 | 值 | 描述 |
---|---|---|
<RANCHER_CONTAINER_TAG> | registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.4.11 | 当前安装的 Rancher Server 镜像 |
<RANCHER_CONTAINER_NAME> | stoic_fermi | 当前 Rancher 容器名称 |
<RANCHER_VERSION> v2.4.11 | 您正在为其创建备份的 Rancher 版本 | |
2-1-21 | 创建数据卷容器或备份的日期 |
1、关闭当前运行的容器
docker stop stoic_fermi
2、查看备份数据是否存在
3、替换占位符,输入以下命令以删除当前状态数据并将其替换为备份数据。不要忘记关闭引号。
警告! 此命令从 Rancher Server 容器中删除所有的数据,上一次创建备份后保存的所有更改都将丢失。
docker run --volumes-from <RANCHER_CONTAINER_NAME> -v $PWD:/backup \
busybox sh -c "rm /var/lib/rancher/* -rf && \
tar pzxvf /backup/rancher-data-backup-<RANCHER_VERSION>-<DATE>.tar.gz"
docker run --volumes-from rancher-data-2-1-2021 -v $PWD:/backup busybox sh -c "rm /var/lib/rancher/* -rf && tar pzxvf /backup/rancher-data-backup-v2.4.11-2-1-2021.tar.gz
4、重新启动 Rancher Server 容器。
docker start <RANCHER_CONTAINER_NAME>
docker start stoic_fermi