NetBackup™ Web UI Kubernetes 管理指南

Last Published:
Product(s): NetBackup & Alta Data Protection (10.1.1)
  1. 适用于 Kubernetes 的 NetBackup 概述
    1.  
      概述
    2.  
      Kubernetes 支持的 NetBackup 功能
  2. 部署和配置 NetBackup Kubernetes Operator
    1.  
      在 NetBackup Kubernetes Operator 上部署服务软件包
    2.  
      Kubernetes Operator 部署的端口要求
    3.  
      升级 NetBackup Kubernetes Operator
    4.  
      删除 NetBackup Kubernetes Operator
    5.  
      配置 NetBackup Kubernetes datamover
    6. 配置 NetBackup 快照操作的设置
      1.  
        受 Kubernetes Operator 支持的配置参数
      2.  
        从快照备份和从备份还原操作的前提条件
      3.  
        Kubernetes 中支持的 DTE 客户端设置
      4.  
        自定义 datamover 属性
    7.  
      对具有短名称的 NetBackup 服务器进行故障排除
  3. 管理映像组
    1. 关于映像组
      1.  
        映像失效
      2.  
        映像副本
  4. 在 NetBackup Kubernetes Operator 上部署证书
    1.  
      在 Kubernetes Operator 上部署证书
    2.  
      执行基于主机 ID 的证书操作
    3.  
      执行 ECA 证书操作
    4.  
      标识证书类型
  5. 管理 Kubernetes 资产
    1.  
      添加 Kubernetes 群集
    2. 配置设置
      1.  
        配置资源限制设置
      2.  
        配置自动发现频率
      3.  
        配置权限
    3.  
      为资产添加保护
    4.  
      文件模式卷支持
  6. 管理 Kubernetes 智能组
    1.  
      关于智能组
    2.  
      创建智能组
    3.  
      删除智能组
    4.  
      编辑智能组
  7. 保护 Kubernetes 资产
    1.  
      保护智能组
    2.  
      从智能组中删除保护
    3.  
      配置备份计划
    4.  
      配置备份选项
    5.  
      配置备份
    6.  
      配置自动映像复制 (AIR) 和复制
    7.  
      配置存储单元
    8.  
      文件模式卷支持
  8. 恢复 Kubernetes 资产
    1.  
      浏览并验证恢复点
    2.  
      从快照还原
    3.  
      从备份副本还原
  9. 对 Kubernetes 问题进行故障排除
    1.  
      主服务器升级期间出错:NBCheck 失败
    2.  
      旧映像还原期间出错:操作失败
    3.  
      永久卷恢复 API 期间出错
    4.  
      还原期间出错:最终作业状态显示部分失败
    5.  
      在同一命名空间上进行还原时出错
    6.  
      datamover pod 超过 Kubernetes 资源限制
    7.  
      还原期间出错:高负载群集上的作业失败
    8.  
      为特定群集创建的自定义 Kubernetes 角色无法查看作业
    9.  
      从 OperatorHub 还原安装的应用程序时,Openshift 会创建空白非选定的 PVC
    10.  
      从 OperatorHub 还原安装的应用程序时,Openshift 会创建空白非选定的 PVC
    11.  
      如果超过 Kubernetes 节点上的 PID 限制,NetBackup Kubernetes Operator 将变得无响应
    12.  
      在 NetBackup Kubernetes 10.1 中编辑群集时失败
    13.  
      对于大型 PVC,从快照还原失败
    14.  
      将命名空间文件模式 PVC 还原到不同文件系统时部分失败
    15.  
      从备份副本还原失败并显示映像不一致错误

执行 ECA 证书操作

在执行外部证书颁发机构 (ECA) 的创建、更新和删除操作之前,必须在 ECA 模式下配置备份服务器。

要检查 ECA 模式是否处于打开状态,请运行以下命令:/usr/openv/netbackup/bin/nbcertcmd -getSecConfig -caUsage

输出如下所示:

NBCA: ON
ECA: ON

要在 ECA 模式下配置备份服务器,请参考《NetBackup™ 安全和加密指南》中的“关于 NetBackup 中的外部 CA 支持”部分

ECA 证书规范如下所示:

apiVersion: netbackup.veritas.com/v1
kind: BackupServerCert
metadata:
  name: backupservercert-sample-eca
  namespace: kops-ns
spec:
  clusterName: cluster.sample.com:port
  backupServer: primaryserver.sample.domain.com
  certificateOperation: Create | Update | Remove
  certificateType: ECA
  ecaAttributes:
    ecaCreateOptions:
      ecaSecretName: "Secret name consists of cert, key, passphrase, cacert"
      copyCertsFromSecret: true | false
      isKeyEncrypted: true | false
    ecaUpdateOptions:
      ecaCrlCheck: DISABLE | LEAF | CHAIN
      ecaCrlRefreshHours: range[0,4380]

表:ECA 证书操作

操作类型

选项和注释

创建

  • secretName:包含证书、密钥、密码、cacert 的密钥的名称。

  • copyCertsFromSecret:可能的值为 true 和 false。添加此选项的原因是,外部 CA 在所有主服务器中通用。可在 Kubernetes Operator 中注册相同证书,供所有主服务器使用。

    因此,无需每次都复制证书和密钥。可以使用此选项控制证书和密钥的复制。

    如果 ECAHealthCheck 由于证书和密钥有问题而失败,则必须再次复制证书。

  • isKeyEncrypted:如果私钥已加密,请将此字段设置为 true,否则将其设置为 false。

删除

不适用

更新

  • ecaCrlCheck:可指定外部证书的吊销检查级别。

    可能的值为 DISABLE、LEAF 和 CHAIN。

  • ecaCrlRefreshHours 指定下载证书吊销列表的时间间隔(以小时为单位)。

    可能的值范围在 0-4380 之间

创建 ECA 签名证书

NetBackup 支持在 Kubernetes Operator 中注册 ECA,以供多个主服务器使用。如果外部 CA 在主服务器中是通用的。在通信期间,必须使用证书吊销列表分发点动态获取证书吊销列表。

创建 ECA 签名证书

  1. 使用证书吊销列表分发点获取证书吊销列表。
  2. 在主目录中准备好 ECA 签名证书链、私钥和密码(如果需要)。
  3. 明确步骤 2 中提到的每个文件支持的不同格式(如 DER、PEM 等)。有关更多信息,请参考《NetBackup™ 安全和加密指南》中的“用于外部 CA 签名证书的配置选项”部分。
  4. 使用步骤 3 中提到的文件创建密钥。
    • 要在私钥未加密的情况下创建密钥,请运行以下命令:kubectl create secret generic <Name of secret>

      --from-file=cert_chain=<File path to ECA signed certificate chain> --from-file=key=<File path to private key>

      --from-file=cacert=<File path to External CA certificate> -n <Namespace where kops is deployed>

    • 要在私钥已加密的情况下创建密钥,请运行以下命令:kubectl create secret generic <Name of secret>

      --from-file=cert_chain=<File path to ECA signed certificate chain> --from-file=key=<File path to private key>

      --from-file=cacert=<File path to External CA certificate> --from-file=passphrase=<File path to passphrase

      of encrypted private key> -n <Namespace where kops is deployed>

    目录结构如下所示:

    ├── cert_chain.pem
    ├── private
    |  |___key.pem
    |  |___passphrase.txt
    |___trusted
         |__cacerts.pem
    

    cert_chain.pem 是 ECA 签名证书链

    private/key.pem 是私钥

    private/passphrase.txt 是私钥的密码

    trusted/cacerts.pem 是外部 CA 证书

    • 要在私钥未加密的情况下创建名为 eca-secret 的密钥,请运行以下命令:

      kubectl create secret generic eca-secret--from-file=cert_chain=cert_chain.pem

      --from-file=key=private/key.pem

      --from-file=cacert=trusted/cacerts.pem -n kops-ns

    • 要在私钥已加密的情况下创建名为 eca-secret 的密钥,请运行以下命令:

      kubectl create secret generic eca-secret

      --from-file=cert_chain=cert_chain.pem

      --from-file=key=private/key.pem

      --from-file=cacert=trusted/cacerts.pem

      --from- file=passphrase=private/passphrase.txt

      -n kops-ns

  5. 创建密钥后,接下来创建 backupservercert 对象自定义资源。

    eca-create-backupservercert.yaml 文件如下所示:

    apiVersion: netbackup.veritas.com/v1
    kind: BackupServerCert
    metadata:
      name: backupservercert-eca-create
      namespace: kops-ns
    spec:
      clusterName: cluster.sample.com:port
      backupServer: backupserver.sample.domain.com
      certificateOperation: Create
      certificateType: ECA
      ecaAttributes:
        ecaCreateOptions:
          ecaSecretName: eca-secret
          copyCertsFromSecret: true
          isKeyEncrypted: false
    • 复制 eca-create-backupservercert.yaml 文件文本。

    • 打开文本编辑器并粘贴 yaml 文件文本。

    • 然后,使用 yaml 文件扩展名将文本保存到可以访问 Kubernetes 群集的主目录中。

  6. 要将证书和密钥复制到 Kubernetes Operator,请执行以下任一操作:
    • copyCertsFromSecret 设置为 true

    • copyCertsFromSecret 设置为 false,以避免复制 Kubernetes Operator 上现有的证书和密钥。

    注意:

    ECA 在所有主服务器中是通用的,因此 Kubernetes Operator 需要一组证书和密钥,可根据需要在所有主服务器中注册这些证书和密钥。除非之前复制的证书和密钥出现问题,否则无需每次都复制证书和密钥。

    注意:

    如果由于与证书和密钥相关的任何原因(ECA 已损坏、已失效或已更改)导致 ecaHealthCheck 失败,则可以使用标志确定失败原因并复制有效证书。

  7. 如果私钥已加密,则将 isKeyEncrypted 标志设置为 true,而对于未加密的密钥,则将其设置为 false。如果私钥已加密,请确保以私密方式提供密码。
  8. 使用在步骤 5 中创建的密钥名称 backupservercert yaml 设置 ecaSecretName
  9. 要创建 eca-create-backupservercert.yaml 文件,请运行以下命令:kubectl create -f eca-create-backupservercert.yaml
  10. 创建 backupservercert 自定义资源后,检查自定义资源状态。
  11. 要在 NetBackup Web UI 上查看外部证书详细信息,请参考《NetBackup™ Web UI 管理指南》中的“查看域中 NetBackup 主机的外部证书信息”部分。
删除 ECA 签名证书

可以从主服务器删除 ECA 签名证书。

删除 ECA 签名证书

  1. 创建 backupservercert,其操作为“删除”,证书类型为 ECA。

    eca-remove-backupservercert.yaml 文件如下所示:

    apiVersion: netbackup.veritas.com/v1
    kind: BackupServerCert
    metadata:
      name: backupservercert-eca-remove
      namespace: kops-ns
    spec:
      clusterName: cluster.sample.com:port
      backupServer: backupserver.sample.domain.com
      certificateOperation: Remove
      certificateType: ECA
    • 复制 eca-remove-backupservercert.yaml 文件文本。

    • 打开文本编辑器并粘贴 yaml 文件文本。

    • 然后,使用 yaml 文件扩展名将文本保存到可以访问 Kubernetes 群集的主目录中。

  2. 要创建 eca-remove-backupservercert.yaml 文件,请运行以下命令:kubectl create -f eca-remove-backupservercert.yaml
  3. 创建对象后,需要检查自定义资源状态。如果失败,则可以采取必要操作。

这些步骤可从本地证书存储库中删除有关指定主服务器的外部证书详细信息。不会从系统或 NetBackup 数据库中删除证书。

如果要禁用 ECA,请参考《NetBackup™ 安全和加密指南》中的“在 NetBackup 域中禁用外部 CA”部分。

如果在 Kubernetes Operator 上为备份服务器注册了 ECA,但后来重新安装了仅支持 NBCA 的备份服务器,那么,必须从 Kubernetes Operator 中删除 ECA 注册,因为与备份服务器进行 nbcertcmd 通信期间,可能会对 CA 支持情况进行比较,如果不匹配,则会发生错误。

更新 ECA 签名证书

ECA 中有一些可配置的选项。可以通过更新操作配置这些选项。

更新 ECA 签名证书

  1. 创建操作类型为“更新”的 backupservercert 对象。

    eca-update-backupservercert.yaml 文件如下所示:

    apiVersion: netbackup.veritas.com/v1
    kind: BackupServerCert
    metadata:
      name: backupservercert-eca-update
      namespace: kops-ns
    spec:
      clusterName: cluster.sample.com:port
      backupServer: backupserver.sample.domain.com
      certificateOperation: Update
      certificateType: ECA
      ecaAttributes:
        ecaUpdateOptions:
          ecaCrlCheck: DISABLE | LEAF | CHAIN 
          ecaCrlRefreshHours: [0,4380]
    • 复制 eca-update-backupservercert.yaml 文件文本。

    • 打开文本编辑器并粘贴 yaml 文件文本。

    • 然后,使用 yaml 文件扩展名将文本保存到可以访问 Kubernetes 群集的主目录中。

  2. 要创建 eca-update-backupservercert.yaml 文件,请运行以下命令:kubectl create -f eca-update-backupservercert.yaml
  3. 您可以使用 ECA_CRL_CHECK 选项指定主机外部证书的吊销检查级别。还可以对外部证书禁用吊销检查。在主机通信期间,基于检查,根据证书吊销列表 (CRL) 验证证书的吊销状态。有关更多信息,请参考《NetBackup™ 安全和加密指南》中的“NetBackup 服务器和客户端的 ECA_CRL_CHECK”部分
  4. ECA_CRL_REFRESH_HOURS 选项指定从对等主机证书的证书吊销列表分发点 (CDP) 中指定的 URL 下载 CRL 的时间间隔(以小时为单位)。有关更多信息,请参考《NetBackup™ 安全和加密指南》中的“NetBackup 服务器和客户端的 ECA_CRL_REFRESH_HOURS”部分