为 IBM® Cloud Private Cloud Foundry 配置备份

根据配置,将备份发送至主机托管的客户 NFS(网络文件系统)服务器,或者将备份保留在 nfs_WAL_server 上。 在可用空间方面,您可以管理托管在 NFS 上的备份。 如果这是其安全规则的一部分,您也可以对备份进行加密。

关于备份

调度 UAADB、CCDB、Director 的备份和部署。 在 nfs_WAL_server 上进行本地备份和发布。 配置可以指定备份是否需要被移动到主机托管的客户 NFS 服务器。

请参阅组件:用户帐户和认证 (UAA) 服务器 在新选项卡中打开组件:云控制器 在新选项卡中打开 以获取更多信息。 如果实施 BOSH 备份和复原 在新选项卡中打开 中所描述的脚本,您还可以备份自己的部署。

UAADB/CCDB 备份

nfs_WAL_server 上持续 6 小时,每小时进行一次备份。 在 uiconfig 文件中设置 db_nfs_copy 属性以复制主机托管的客户 NFS 服务器上的备份。 请参阅安装 IBM Cloud Private Cloud Foundry 以获取详细信息。 复制进程每小时运行一次,7 天内的备份保留在客户托管的 NFS 上。

Director 备份

uiconfig 文件中设置 bbr_backup 属性以配置备份调度。 请参阅安装 IBM Cloud Private Cloud Foundry 以获取详细信息,并且 bbr_backup 属性具有缺省值。 如果在 bbr_backup 属性中已提供缺省值,那么可以将其移动到主机托管的客户 NFS 服务器。 传输至主机托管的客户 NFS 服务器之后,将其从 nfs_WAL_server 中移除。

如果未提供主机托管的客户 NFS 服务器,或者主机托管的客户 NFS 服务器不可用,那么 bbr_backup 属性中定义的备份数量将保留在 nfs_WAL_server 上。

通过检查 /var/vcap/store/bbr_backup/director 目录或 NFS 服务器(如果针对 director 备份设置了一个 NFS 服务器),您可以验证备份是否正在工作。

复原过程:

  1. 确保您已具有备份 .tgz 文件。 如果备份位于 nfs_WAL_server 上,将其传输至 Inception 容器。
  2. 删除 director 虚拟机。
  3. 重命名 /data/gen-vmware_micro_boshinit-state.json 文件
  4. 重新安装 Director。 运行以下命令:
    ./cm engine reset
    ./cm states set-status-by-range -f deploy-director --status SKIP #This set all states after deploy-director to SKIP
    launch_deployment.sh...
    
  5. 从 inception 或 nfs_wal_server 启动复原。 如果备份不再在 nfs_WAL_server 上启动,那么从 Inception 启用很有用。

    • 要从 nfs_wal_server 启动复原,请完成以下过程:

      1. 使用以下命令远程登录 nfs_wal_serverssh vcap@<nfs_WAL_ip>bosh -e IBMCloudPrivate -d Bluemix ssh <nfs_WAL_server_name>。 运行 bosh -e IBMCloudPrivate vms 以查找 <nfs_WAL_ip><nfs_WAL_server_name>
      2. 运行 tar xvf <file> 以从 nfs /local_backup/director 目录或从本地磁盘 /var/vcap/store/cfp-backup/director 解压备份.
      3. 要复原,请运行以下命令: /var/vcap/packages/bbr-1.2.0/bbr director --host 192.168.247.2 --username director_backup --private-key-path /var/vcap/sys/run/cfp-backup/director_backup.key restore --artifact-path <uncompressed file>.
    • 要从 Inception 启动复原,请完成以下过程:

      1. 使用例如 docker cp <backup_file> cfp-inception-<environment_name>:/tmp 将备份复制到 Inception
      2. 使用以下命令连接至 Inception:./connect.sh -n <your environment name>
      3. 运行以下命令来安装 bbr 1.2.0:

        wget https://github.com/cloudfoundry-incubator/bosh-backup-and-restore/releases/download/v1.2.0/bbr-1.2.0.tar
        tar xvf bbr-1.2.0.tar
        chmod +x releases/bbr
        
      4. 运行以下命令来检索专用密钥:

        cat /data/CloudFoundry/certificates.yml
        
      5. 搜索 director_backup 组属性。

      6. 在文件中复制 key->data 内容。 请确保每一行从第一列开始。
      7. 运行 tar xvf <file> 以从复制备份的目录解压备份。
      8. 要复原,请运行以下命令:
        <BBR_INSTALLATION_PATH>/bbr director --host 192.168.247.2 --username director_backup --private-key-path <BACKUP_KEY_PATH>/director_backup.key restore --artifact-path <uncompressed file>.
        

部署备份

Bluemix 部署

作为 director 备份,Bluemix(调度、主机托管的客户 NFS 服务器和要保留的备份数量)备份可在 bbr_backup 属性中进行配置。 仅备份 Bluemix 清单。

通过检查目录 /var/vcap/store/bbr_backup/deployments/Bluemix 或 NFS 服务器(如果针对 director 备份设置了一个 NFS 服务器),您可以验证备份是否正在工作。

您的定制部署

如果部署实现了 BOSH 备份和复原 在新选项卡中打开,那么可以设置 cf_custom 属性以自动和阶段性地备份部署。

  cf_custom: |+
    properties:
      bbr_backup:
        deployment_backup:
          deployments:
          - (( grab bmxconfig.bbr_backup.deployments_backup.deployments.0 )) #This to continue to backup the Bluemix
          - name: YourDeployment
            schedule: "* 3 * * *"
            nb_backups: 15
            nb_logs: 15
            max_log_size: 10000

通过检查目录 /var/vcap/store/bbr_backup/deployments/<YourDeploymentName> 或 NFS 服务器(如果针对 director 备份设置了一个 NFS 服务器),您可以验证备份是否正在工作。