How to migrate the file share from Azure SMB Fileshare to NFS Fileshare?
This documentation describes how to migrate the file share from Azure SMB Fileshare to NFS Fileshare and deploy Bold BI using the NFS file share.
Migrating the app_data from an Azure SMB fileshare to an NFS fileshare with the help of a Linux VM.
Step 1: Stop Bold BI Services.
To prevent any data changes during the migration, temporarily stop the Bold BI services by running the following Helm uninstall command:
helm uninstall releasename -n namespace
Step 2: Create an NFS Fileshare and Mount it to a Linux VM.
Follow the documentation below to create an NFS fileshare and mount it to a Linux VM:
Create and Mount an NFS Fileshare on a Linux VM
Note: Please ensure to set the file share size as 100 GB or as per your requirement. By default, the file share is created using 1 TB, which consumes more cost for NFS.
Step 3: Mount the SMB Fileshare on the Linux VM.
After mounting the NFS fileshare to the Linux virtual machine, you can also mount the SMB fileshare by following these steps:
-
Access the storage account and go to the fileshare.
-
In the fileshare, click the three dots located on the right edge of the fileshare, and then click “Connect” as shown below.
-
In the
Connect
panel, switch toLinux
and clickShow script
and run the script in your Linux VM to mount the SMB fileshare. -
After successfully mounting the SMB fileshare in the virtual machine directory, ensure that the app_data is available in the mounted directory.
-
You can copy the files to the NFS mounted directory using the
cp
command, like this.sudo cp -r smb_fileshare_mounting_dir/* nfs_fileshare_mounting_directory Example: sudo cp -r /mnt/boldbi/* /mount/premiumstorage1234/boldbi
-
Once the data copy is complete, verify the data integrity on the NFS share to ensure that all files and directories were successfully transferred. Then,
unmount
the directories using the umount command.umount dir Example: umount /mnt/boldbi umount /mount/premiumstorage1234/boldbi
Note: If you encounter any issues while unmounting the directory and face a “directory busy” issue, please navigate to the root directory using the “cd” command. Then, run the “umount” command to umount.
- Now, the app_data has been successfully copied from the SMB fileshare to the NFS fileshare.
Reinstall Bold BI with NFS Fileshare Mounting Using Helm Chart.
Step 1: Update the values.yaml File.
Download the values.yaml file for here and update the NFS fileshare details by specifying the fileShareName
and hostName
in the following fields:
persistentVolume:
# persistent volumes were global resources.
# so if you already have Bold BI installed in your cluster, then the previous persistent volume name will conflict with current installation.
# Change this name to avoid conflicts with previous Bold BI persistent volumes.
name: bold-fileserver
capacity: 3Gi
aks:
# If you have an Azure Storage secret you can use the same by mentioning the secret name below. The default name is 'bold-azure-secret'
secretName: ''
# Mention the Azure file share name.
fileShareName: ''
# You can ignore the following values if you are using an azure existing secret.
# base64 string
azureStorageAccountName: ''
# base64 string
azureStorageAccountKey: ''
# To configure persistent volume using NFS fileshare, provide the following values:
nfs:
# fileshare name as 'storageaccountname/filesharename' Ex:premiumstorage1234/boldbi.
fileShareName: ''
# hostname of the fileshare Ex:premiumstorage1234.file.core.windows.net.
hostName: ''
Note: Ensure you update the
appBaseUrl
and other configuration details in your existing values.yaml file to match your current setup or append the provided persistent volume fields to your existing values.yaml file. Additionally, ensure that the SMB fileshare fields are left empty when configuring NFS.
Step 2: Install Bold BI with NFS Fileshare.
- After updating the NFS fileshare details in the values.yaml file, Add the Bold BI helm repository.
helm repo add boldbi https://boldbi.github.io/boldbi-kubernetes
helm repo update
- Run the Helm install command to install Bold BI with the NFS fileshare:
helm install {Releasename} boldbi/boldbi -f values.yaml -n {Namespace}
Example:
helm install boldbi boldbi/boldbi -f values.yaml -n bold-services
Note: To avoid issues with volume mounting, ensure that the AKS cluster and NFS file share are either in the same virtual network or connected through peered virtual networks.
Step 3: Verify the Installation
Ensure the Bold BI site is accessible in your browser after successfully installing Bold BI with the NFS fileshare.
Conclusion
By following the above steps, you can seamlessly migrate Bold BI app data from an Azure SMB file share to an NFS file share using the Helm Chart.