Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

备份 Etcd 数据库

使用此示例过程备份 etcd 数据库。

我们提供此示例过程纯出于信息目的。有关官方程序,请参阅 Red Hat OpenShift 文档 (https://docs.openshift.com/)。

Contrail 默认使用 etcd 数据库。Contrail 用作 CNI 插件不会影响备份和还原等数据库的方式。使用您最熟悉的工具管理数据库,如 etcdctl。

  1. 获取正在运行的节点列表。
  2. 以 root 身份登录到其中一个控制平面节点。
    您不能简单地通过 SSH 完成这一操作,因为默认情况下 root 登录是禁用的。您必须启动调试 Pod 并 chroot 到主机文件系统中。
    1. 在一个控制平面节点上启动调试 Pod。当您这样做时,系统会自动放入调试 Pod 的根 shell 中。此示例在 ocp1 上启动调试 Pod。
      调试 Pod 在 /host 安装主机(节点)文件系统,您可以在这里看到:
    2. 要以 root 身份更改为主机文件系统,请使用 chroot 命令。
      这样,您就会有效地以 root 身份登录到主机节点。
      您可以通过搜索之前作为 /host 安装的设备名称来验证自己在主机文件系统中。
  3. 备份 etcd 数据库。
    下面将数据库备份到 /home/core/assets/backup 目录。此目录是作为 cluster-backup.sh 脚本的一部分创建的。此脚本是作为 etcd 群集运算符的一部分提供的,是围绕 etcdctl 快照保存 命令的包装程序。您不必安装 etcdctl。脚本会自动安装 etcdctl。
    注意:

    正常情况下,在上述输出中看到 CNI 错误。

    脚本会创建两个文件:
    • snapshot_<timestamp>.db - 这是 etcd 快照
    • static_kuberesources_<timestamp>.tar.gz - 这包含静态 Pod 的资源
  4. 键入exit以退出 shell 并终止调试 Pod。