打开命令行工具,输入命令,运行后即可保存 cluster config 文件内每个 etcd 节点的快照。RKE 会将节点快照保存在/opt/rke/etcd-snapshots路径下。运行上述命令时,RKE 会创建一个用于备份快照的容器。完成备份后,RKE 会删除该容器。您可以将一次性快照适配 S3 的后端主机。具体过程如下:

  1. 首先,运行以下命令,在本地创建一个一次性快照:

    结果: 创建了一个快照,保存在 /opt/rke/etcd-snapshots路径下。

  2. 然后,运行以下命令,将这个快照保存到 S3。

    结果: 保存在 /opt/rke/etcd-snapshots路径下的快照已经上传至 S3。

v0.2.0 或以上的版本可用

备份快照可以被存储在自定义S3备份机器,如上。如果 S3 Backend 使用的是自签名证书或自定义证书,需要使用--s3-endpoint-ca将自定义证书验证并连接到 S3 Backend。

RKE 支持使用 IAM 角色权限管理进行 S3 认证。集群的 etcd 节点必须分配有 IAM 角色,并且这个角色需要有读写 S3 存储节点快照的桶的权限。节点必须有权限访问 S3 端点。

以下是IAM 策略示例代码,给节点开放了在 S3 上读取和写入备份快照的权限。

打开命令行工具,输入rke etcd snapshot-save命令,运行后即可保存 cluster config 文件内每个 etcd 节点的快照。

运行上述命令时,RKE 会创建一个用于备份快照的容器。完成备份后,RKE 会删除该容器。

RKE 会为证书生成备份,在同一路径下将证书保存为pki.bundle.tar.gz文件。恢复集群时,会用到快照和 pki 文件。

运行以下命令,在本地创建一次性快照:

结果: RKE 会将节点快照保存在/opt/rke/etcd-snapshots路径下。

参数描述
—name指定快照名称
—config指定 YAML 文件名称,如果不指定,则会使用cluster.yml文件 [$RKE_CONFIG]
—ignore-docker-version禁用 Docker 版本检查