Description
A Linux system is needed that meets the following criteria:
- Docker/Podman installed
- Access to the Container Registry hosting the NetBackup images
- Access to the Kubernetes cluster hosting the NetBackup deployment
- Provide the LinuxR BYO EEB, which will be used to create a new image.
NOTE: nbbuilder script is provided here.
Pre-requisite Steps:
Download the
nbbuilder.shscript from the referenced article and place it in an empty folder.Copy the LinuxR BYO EEB file into the same folder where the
nbbuilder.shscript is located.
To view EEBs installed on an image:
- Use this command to list the EEBs installed inside each container image.
bash nbbuilder.sh
-registry_name <Container Registry URL>
-list_installed_eebs
-msdp_src_tag <MSDP image tag>
- Note that MSDP as a Service consists of three separate container images: uss-controller, uss-engine, and uss-mds, and it is rare for an EEB to apply to all three images at the same time. When an EEB is applied to any one of the MSDP as a Service images, the unaffected images will also be re-tagged such that there is a full set of three images sharing the same tag.
To install an EEB:
NOTE: Always use the base image when creating new images to prevent any EEB conflicts. In scenarios where both MSDP EEB and OCSD EEB bundles need to be installed, first create a new image from the base image by installing the MSDP EEB, and then use this newly created image to install the OCSD EEB.
- Log into the container registry so the system can pull down existing NetBackup images and push up new NetBackup images.
- For Azure Container Registry:
az acr login -n <Azure Container Registry name>
- For Azure Container Registry:
- Upload and extract the EEB file archive onto the Linux system
- Run the nbbuilder.sh script provided within the archive. This script identifies the container images targeted by the EEB, creates new images by installing the EEB into those images, and pushes the new images to the specified container registry.
bash nbbuilder.sh
-registry_name <Container Registry URL>
-msdp_src_tag <Current MSDP tag>
-msdp_dest_tag <New MSDP tag>
-verbose-msdp_src_tagrefers to the tag for the MSDP image currently being used in the NetBackup deployment.-msdp_dest_tagis a user-specified string for tagging the resulting MSDP images. These are optional, and only required if the EEB applies to MSDP.
- Update your Kubernetes custom resources for the NetBackup deployment to use the new image tags.
- The new MSDP tag should replace the existing value for spec.msdpScaleouts.tag in the NetBackup Environment custom resource.
- Steps to update the tags:
- Run the following command to retrieve the environment name: kubectl get environment -n <namespace>
- Run the following command to create a backup of the current environment configuration: kubectl get environment <environment> -n <namespace> -o yaml > environment_backup.yaml
- Run the following command to edit the environment configuration: kubectl edit environment <environment> -n <namespace>
- Within the editor, navigate to the
msdpScaleoutssection under the specs and make the required changes.- Example of how spec will be seen:
-
msdpScaleouts:
- credential:
autoDelete: true
secretName: msdp-secret1
skipPrecheck: false
ipList:
- fqdn: test.com
ipAddr: x.x.x.x.x
kms:
keyGroup: example-key-group
keySecret: example-key-secret
loadBalancerAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"
name: dedupe1-test-00
nodeSelector:
labelKey: storage-pool
labelValue: storagepool
paused: false
replicas: 1
storage:
dataVolumes:
- autoVolumeExpansion: false
capacity: 1536Gi
storageClassName: aws-storage
log:
autoVolumeExpansion: false
capacity: 100Gi
storageClassName: aws-storage
tag: 21.0.0.1-0038
tcpIdleTimeout: 30
tcpKeepAliveTime: 120
-
- Example of how spec will be seen:
- Within the editor, navigate to the
- In the spec we need to update tag: 21.0.0.1-0038 to the new tag which was created when running nbbuilder script.
- Example of Current tag: tag: 21.0.0.1-0038
- Example of New tag: tag: 21.0.0.1-0038-<EEBnumber>
- Then, save the configuration. Once saved, all the MSDP pods will automatically restart to apply the changes.
- Validate that the pods are starting with the new image tags by running the following command:: kubectl describe pod <msdp pod name> -n <namespace> | grep -i image
- Steps to update the tags:
- The new MSDP tag should replace the existing value for spec.msdpScaleouts.tag in the NetBackup Environment custom resource.
- Store the EEB file archive in a safe location for future use, such as uninstalling or reinstalling the EEB.
To uninstall an EEB:
To uninstall the EEB, simply update the tag in the environment to the original or previous tag that was being used.
Follow the same steps mentioned in the installation section to edit the environment and update the tag accordingly.