NetBackup™ Web UI Kubernetes 管理指南
- 适用于 Kubernetes 的 NetBackup 概述
- 部署和配置 NetBackup Kubernetes Operator
- NetBackup Kubernetes Operator 部署的前提条件
- 在 NetBackup Kubernetes Operator 上部署服务软件包
- Kubernetes Operator 部署的端口要求
- 升级 NetBackup Kubernetes Operator
- 删除 NetBackup Kubernetes Operator
- 配置 NetBackup Kubernetes 数据移动器
- 自动为 Kubernetes 配置 NetBackup 保护
- 配置 NetBackup 快照操作的设置
- 对具有短名称的 NetBackup 服务器进行故障排除
- datamover pod 调度机制支持
- 验证加速器存储类
- 在 NetBackup Kubernetes Operator 上部署证书
- 管理 Kubernetes 资产
- 管理 Kubernetes 智能组
- 保护 Kubernetes 资产
- 管理映像组
- 在 NetBackup 中保护 Rancher 管理的群集
- 恢复 Kubernetes 资产
- 关于增量式备份和还原
- 启用基于加速器的备份
- 在 Kubernetes 中启用 FIPS 模式
- 对 Kubernetes 问题进行故障排除
- 主服务器升级期间出错:NBCheck 失败
- 旧映像还原期间出错:操作失败
- 永久卷恢复 API 期间出错
- 还原期间出错:最终作业状态显示部分失败
- 在同一命名空间上进行还原时出错
- datamover pod 超过 Kubernetes 资源限制
- 还原期间出错:高负载群集上的作业失败
- 为特定群集创建的自定义 Kubernetes 角色无法查看作业
- 从 OperatorHub 还原安装的应用程序时,Openshift 会创建空白非选定的 PVC
- 如果超过 Kubernetes 节点上的 PID 限制,NetBackup Kubernetes Operator 将变得无响应
- 在 NetBackup Kubernetes 10.1 中编辑群集时失败
- 对于大型 PVC,从快照还原失败
- 将命名空间文件模式 PVC 还原到不同文件系统时部分失败
- 从备份副本还原失败并显示映像不一致错误
- NetBackup 主服务器、介质服务器和 Kubernetes 服务器之间的连接检查。
- 没有可用于跟踪日志的空间时,加速器备份过程中出错
- 由于跟踪日志 PVC 创建失败导致加速器备份期间出错
- 由于加速器存储类无效导致加速器备份期间出错
- 启动跟踪日志 pod 时出错
- 设置跟踪日志 PVC 操作的数据移动器实例失败
- 从 configmap 读取跟踪日志存储类时出错
执行 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 证书操作
操作类型 | 选项和注释 |
|---|---|
创建 |
|
删除 | 不适用 |
更新 |
|
NetBackup 支持在 Kubernetes Operator 中注册 ECA,以供多个主服务器使用。如果外部 CA 在主服务器中是通用的。在通信期间,必须使用证书吊销列表分发点动态获取证书吊销列表。
创建 ECA 签名证书
- 使用证书吊销列表分发点获取证书吊销列表。
- 在主目录中准备好 ECA 签名证书链、私钥和密码(如果需要)。
- 明确步骤 2 中提到的每个文件支持的不同格式(如 DER、PEM 等)。有关更多信息,请参考《NetBackup™ 安全和加密指南》中的“用于外部 CA 签名证书的配置选项”部分。
- 使用步骤 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.pemcert_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
- 创建密钥后,接下来创建
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 群集的主目录中。
- 要将证书和密钥复制到 Kubernetes Operator,请执行以下任一操作:
将
copyCertsFromSecret设置为 true将
copyCertsFromSecret设置为 false,以避免复制 Kubernetes Operator 上现有的证书和密钥。
注意:
ECA 在所有主服务器中是通用的,因此 Kubernetes Operator 需要一组证书和密钥,可根据需要在所有主服务器中注册这些证书和密钥。除非之前复制的证书和密钥出现问题,否则无需每次都复制证书和密钥。
注意:
如果由于与证书和密钥相关的任何原因(ECA 已损坏、已失效或已更改)导致
ecaHealthCheck失败,则可以使用标志确定失败原因并复制有效证书。 - 如果私钥已加密,则将
isKeyEncrypted标志设置为 true,而对于未加密的密钥,则将其设置为 false。如果私钥已加密,请确保以私密方式提供密码。 - 使用在步骤 5 中创建的密钥名称
backupservercert yaml设置ecaSecretName。 - 要创建
eca-create-backupservercert.yaml文件,请运行以下命令:kubectl create -f eca-create-backupservercert.yaml - 创建
backupservercert自定义资源后,检查自定义资源状态。 - 要在 NetBackup Web UI 上查看外部证书详细信息,请参考《NetBackup™ Web UI 管理指南》中的“查看域中 NetBackup 主机的外部证书信息”部分。
可以从主服务器删除 ECA 签名证书。
删除 ECA 签名证书
- 创建
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 群集的主目录中。
- 要创建
eca-remove-backupservercert.yaml文件,请运行以下命令:kubectl create -f eca-remove-backupservercert.yaml - 创建对象后,需要检查自定义资源状态。如果失败,则可以采取必要操作。
这些步骤可从本地证书存储库中删除有关指定主服务器的外部证书详细信息。不会从系统或 NetBackup 数据库中删除证书。
如果要禁用 ECA,请参考《NetBackup™ 安全和加密指南》中的“在 NetBackup 域中禁用外部 CA”部分。
如果在 Kubernetes Operator 上为备份服务器注册了 ECA,但后来重新安装了仅支持 NBCA 的备份服务器,那么,必须从 Kubernetes Operator 中删除 ECA 注册,因为与备份服务器进行 nbcertcmd 通信期间,可能会对 CA 支持情况进行比较,如果不匹配,则会发生错误。
ECA 中有一些可配置的选项。可以通过更新操作配置这些选项。
更新 ECA 签名证书
- 创建操作类型为“更新”的
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 群集的主目录中。
- 要创建
eca-update-backupservercert.yaml文件,请运行以下命令:kubectl create -f eca-update-backupservercert.yaml - 您可以使用 ECA_CRL_CHECK 选项指定主机外部证书的吊销检查级别。还可以对外部证书禁用吊销检查。在主机通信期间,基于检查,根据证书吊销列表 (CRL) 验证证书的吊销状态。有关更多信息,请参考《NetBackup™ 安全和加密指南》中的“NetBackup 服务器和客户端的 ECA_CRL_CHECK”部分。
- ECA_CRL_REFRESH_HOURS 选项指定从对等主机证书的证书吊销列表分发点 (CDP) 中指定的 URL 下载 CRL 的时间间隔(以小时为单位)。有关更多信息,请参考《NetBackup™ 安全和加密指南》中的“NetBackup 服务器和客户端的 ECA_CRL_REFRESH_HOURS”部分