NetBackup™ Web UI Kubernetes Administrator's Guide

Last Published:
Product(s): NetBackup & Alta Data Protection (10.1.1)
  1. Overview of NetBackup for Kubernetes
    1.  
      Overview
    2.  
      Features of NetBackup support for Kubernetes
  2. Deploying and configuring the NetBackup Kubernetes operator
    1.  
      Deploy service package on NetBackup Kubernetes operator
    2.  
      Port requirements for Kubernetes operator deployment
    3.  
      Upgrade the NetBackup Kubernetes operator
    4.  
      Delete the NetBackup Kubernetes operator
    5.  
      Configure NetBackup Kubernetes datamover
    6. Configure settings for NetBackup snapshot operation
      1.  
        Kubernetes operators supported configuration parameters
      2.  
        Prerequisites for backup from snapshot and restore from backup operations
      3.  
        DTE client settings supported in Kubernetes
      4.  
        Customization of datamover properties
    7.  
      Troubleshooting NetBackup servers with short names
  3. Managing image groups
    1. About image groups
      1.  
        Image expire
      2.  
        Image copy
  4. Deploying certificates on NetBackup Kubernetes operator
    1.  
      Deploy certificates on the Kubernetes operator
    2.  
      Perform Host-ID-based certificate operations
    3.  
      Perform ECA certificate operations
    4.  
      Identify certificate types
  5. Managing Kubernetes assets
    1.  
      Add a Kubernetes cluster
    2. Configure settings
      1.  
        Configure resource limit settings
      2.  
        Configure autodiscovery frequency
      3.  
        Configure permissions
    3.  
      Add protection to the assets
    4.  
      FileMode volume support
  6. Managing Kubernetes intelligent groups
    1.  
      About intelligent group
    2.  
      Create an intelligent group
    3.  
      Delete an intelligent group
    4.  
      Edit an intelligent group
  7. Protecting Kubernetes assets
    1.  
      Protect an intelligent group
    2.  
      Remove protection from an intelligent group
    3.  
      Configure backup schedule
    4.  
      Configure backup options
    5.  
      Configure backups
    6.  
      Configure Auto Image Replication (AIR) and duplication
    7.  
      Configure storage units
    8.  
      FileMode volume support
  8. Recovering Kubernetes assets
    1.  
      Explore and validate recovery points
    2.  
      Restore from snapshot
    3.  
      Restore from backup copy
  9. Troubleshooting Kubernetes issues
    1.  
      Error during the primary server upgrade: NBCheck fails
    2.  
      Error during an old image restore: Operation fails
    3.  
      Error during persistent volume recovery API
    4.  
      Error during restore: Final job status shows partial failure
    5.  
      Error during restore on the same namespace
    6.  
      Datamover pods exceed the Kubernetes resource limit
    7.  
      Error during restore: Job fails on the highly loaded cluster
    8.  
      Custom Kubernetes role created for specific clusters cannot view the jobs
    9.  
      Openshift creates blank non-selected PVCs while restoring applications installed from OperatorHub
    10.  
      NetBackup Kubernetes operator become unresponsive if PID limit exceeds on the Kubernetes node
    11.  
      Failure during edit cluster in NetBackup Kubernetes 10.1
    12.  
      Restore from snapshot fails for large sized PVC
    13.  
      Restore of namespace file mode PVCs to different file system partially fails
    14.  
      Restore from backup copy fails with image inconsistency error

Prerequisites for backup from snapshot and restore from backup operations

  1. Label a valid storage class for NetBackup usage, add the following label:netbackup.veritas.com/default-csi-storage-class=true. If NetBackup labeled storage class is not found, then backup from snapshot job for metadata image and restore jobs fail with the error message No eligible storage classes found.

    To label the storage classes, run the following commands given in the examples:

    Example 1. Run the command:# kubectl get sc

    Name

    Provisioner

    ocs-storagecluster-ceph-rbd (default)

    openshift-storage.rbd.csi.ceph.com

    ocs-storagecluster-ceph-rgw

    openshift-storage.ceph.rook.io/bucket

    ocs-storagecluster-cephfs

    openshift-storage.cephfs.csi.ceph.com

    openshift-storage.noobaa.io

    openshift-storage.noobaa.io/obc

    thin

    kubernetes.io/vsphere-volume

    Reclaim policy

    Volume binding mode

    Allow volume expansion

    Age

    Delete

    Immediate

    True

    2d2h

    Delete

    Immediate

    False

    2d2h

    Delete

    Immediate

    True

    2d2h

    Delete

    Immediate

    False

    2d2h

    Delete

    Immediate

    False

    19h

    Example 2. Run the command:# kubectl get sc ocs-storagecluster-ceph-rbd --show-labels

    Name

    Provisioner

    Reclaim policy

    ocs-storagecluster-ceph-rbd (default)

    openshift-storage.rbd.csi.ceph.com

    Delete

    Volume binding mode

    Allow volume expansion

    Age

    Label

    Immediate

    True

    2d2h

    netbackup.veritas.com/default-csi-storage-class=true

    Example 3. Run the command:# kubectl label sc ocs-storagecluster-cephfs netbackup.veritas.com/default-csi-storage-class=true

    storageclass.storage.k8s.io/ocs-storagecluster-cephfs labeled

    Example 4. Run the command:kubectl get sc ocs-storagecluster-cephfs --show-labels

    Name

    Provisioner

    Reclaim policy

    ocs-storagecluster-cephfs

    openshift-storage.cephfs.csi.ceph.com 

    Delete

    Volume binding mode

    Allow volume expansion

    Age

    Label

    Immediate

    True

    2d2h

    netbackup.veritas.com/default-csi-storage-class=true

  2. Label a valid volume snapshot class for NetBackup usage, add the following label: netbackup.veritas.com/default-csi-volume-snapshot-class=true. If the NetBackup labeled VolumeSnapshotClass class is not found, then backup from snapshot job for metadata image and restore jobs fails with an error message: Failed to create snapshot of the Kubernetes namespace.

    To label the volume snapshot classes, run the following commands given the examples:

    Example 1. Run the command:# kubectl get volumesnapshotclass

    Name

    Driver

    ocs-storagecluster-cephfsplugin-snapclass

    openshift-storage.cephfs.csi.ceph.com

    ocs-storagecluster-rbdplugin-snapclass

    openshift-storage.rbd.csi.ceph.co

    Deletion policy

    Age

    Delete

    2d2h

    Delete

    2d2h

    Example 2. Run the command:# kubectl get volumesnapshotclass ocs-storagecluster-cephfsplugin-snapclass --show-labels

    Name

    Driver

    ocs-storagecluster-cephfsplugin-snapclass

    openshift-storage.cephfs.csi.ceph.com

    Deletion policy

    Age

    Delete

    2d2h

    Example 3. Run the command:# kubectl label volumesnapshotclass ocs-storagecluster-cephfsplugin-snapclass netbackup.veritas.com/default-csi-volume-snapshot-class=true

    volumesnapshotclass.snapshot.storage.k8s.io/ocs-storagecluster-cephfsplugin-snapclass labeled

    Example 4. Run the command:# kubectl get volumesnapshotclass ocs-storagecluster-cephfsplugin-snapclass --show-labels

    Name

    Driver

    ocs-storagecluster-cephfsplugin-snapclass

    openshift-storage.cephfs.csi.ceph.com

    Deletion policy

    Age

    Labels

    Delete

    2d2h

    netbackup.veritas.com/default-csi-volume-snapshot-class=true

  3. Each primary server which runs the backup from snapshot and restore from backup copy operations, needs to create a separate ConfigMap with the primary server's name.

    In the following configmap.yaml example,

    • backupserver.sample.domain.com and mediaserver.sample.domain.com are the hostnames of NetBackup primary and media server.

    • IP: 10.20.12.13 and IP: 10.21.12.13 are the IP addresses of NetBackup primary and media server.

    apiVersion: v1
    data:
      datamover.hostaliases: |
            10.20.12.13=backupserver.sample.domain.com
            10.21.12.13=mediaserver.sample.domain.com
      datamover.properties: |
            image=reg.domain.com/datamover/image:latest
      version: "1"
    kind: ConfigMap
    metadata:
      name: backupserver.sample.domain.com
      namespace: kops-ns
    
    • Copy the configmap.yaml file details.

    • Open the text editor and paste the yaml file details.

    • Then, save it with the yaml file extension to the home directory from where the Kubernetes clusters are accessible.

  4. Specify datamover.properties: image=reg.domain.com/datamover/image:latest with correct datamover image.

  5. Specify datamover.hostaliases, if the primary server and the media servers connected to the primary server have short names and host resolution failing from datamover. Provide a mapping of all hostnames to IPs for primary and media servers.

  6. Create a secret as described in detail in the Point 6 in the Deploy service package on NetBackup Kubernetes operator section to use a private docker registry.

    Once the secret is created, add the following attributes while creating a configmap.yaml file.

    • datamover.properties: |

    • image=repo.azurecr.io/netbackup/datamover:10.0.0049

    • imagePullSecret=secret_name

  7. Create the configmap.yaml file, run the command: kubectl create -f configmap.yaml.

  8. If Kubernetes operator is not able to resolve the primary server based on short names

    • While fetching the certificates, if you get a message:EXIT STATUS 8500: Connection with the web service was not established. Then, verify the hostname resolution state from the nbcert logs.

    • If the hostname resolution fails, then do the following:

      Update the kops deployment.yaml and add the hostAliases in the deployment.

    • In the following hostAliases example,

      • backupserver.sample.domain.com and mediaserver.sample.domain.com are the hostnames of NetBackup primary and media server.

      • IP: 10.20.12.13 and IP: 10.21.12.13 are the IP addresses of NetBackup primary and media server.

      hostAliases:
      - hostnames:
        - backupserver.sample.domain.com
        ip: 10.20.12.13
      - hostnames:
        -  mediaserver.sample.domain.com
        ip: 10.21.12.13
      

      Copy, paste the hostAliases example details in the text editor and add to the hostAliases in the deployment.

      Note:

      The hostAliases section must be added to the line 2104 in default ./netbackupkops-helm-chart/templates/deployment.yaml file.

      hostAliases example:

      2104	hostAliases;
      -	ip:10.15.206.7
      hostnames:
      -	lab02-linsvr-01.demo.sample.domain.com
      -	lab02-linsvr-01
      -	ip:10.15.206.8
      hostnames:
      -	lab02-linsvr-02.demo.sample.domain.com
      -	lab02-linsvr-02
      imagePullSecrets:
      -	name:  {{ .values.netbackupKops.imagePullSecrets.name}}
      
  9. Create a secret with fingerprint and authorization token.

  10. Create a backupservercert request to fetch certificates.

    For more information, refer to the NetBackup™ Security and Encryption Guide.