Backup provider improvements
- 主要語言
- Java
- 星號
- 3.1k
- 分支
- 1.4k
- 平均合併
- 6 天 19 小時
- 30 天內合併 PR
- 32
描述
### The required feature described as a wish
Currently, with the backup implementation, I found the following issues/limitations
**Issue 1**
**Allow multiple backup framework providers at zone level**
**Steps to reproduce the issue**
1. Have a CloudStack environment with One zone and multiple clusters ( KVM. VMware)
2. Configure VEEAM for vmare cluster
https://docs.cloudstack.apache.org/en/4.22.0.0/adminguide/veeam_plugin.html
3. Configure NAS for KVM cluster
https://docs.cloudstack.apache.org/en/4.22.0.0/adminguide/nas_plugin.html#nas-backup-and-recovery-plugin
4. Configure the Global setting "backup.framework.provider.plugin" = veeam.nas
5. Navigate to Service offering > Backup offering
```
2025-12-17 07:24:28,644 ERROR [c.c.a.AlertManagerImpl] (CapacityChecker:[ctx-96786e18]) (logid:0203c46c) Exception in CapacityChecker com.cloud.utils.exception.CloudRuntimeException: Failed to find backup provider by the name: veeam,nas
at org.apache.cloudstack.backup.BackupManagerImpl.getBackupProvider(BackupManagerImpl.java:1656)
at org.apache.cloudstack.backup.BackupManagerImpl.getBackupProvider(BackupManagerImpl.java:1648)
at org.apache.cloudstack.backup.BackupManagerImpl.getBackupStorageUsedStats(BackupManagerImpl.java:2262)
at org.apache.cloudstack.backup.BackupManagerImpl.getBackupStorageUsedStats(BackupManagerImpl.java:176)
at jdk.internal.reflect.GeneratedMethodAccessor417.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
```
**Current behaviour**
Currently, only one Backup framework is allowed per zone, it would be
**Expected behaviour**
It would be great if we could configure the "backup.framework.provider.plugin" at cluster level rather than zone level or support multiple backup providers at zone level
---------------
**Issue 2**
**Associate the backup offerings based on the hypervisor or cluster**
**Steps to reproduce the issue**
1. Have multiple backup offerings one for kvm and one for vmware
2. Navigate to deploy vm form Compute > Select a KVM host or KVM template , all the backup offering are displayed
Similarly, select a VMWare host or vmware template , all the backup offering are displayed
3. Similarly, in the instance view all the backup offerings are displayed
**Expected behaviour**
It would be great if we could display the backup offerings based on the hypervisor or cluster type ( KVM or vmware)
貢獻指南
研究方向
從堆疊追蹤中顯示的 BackupManagerImpl.java 位置開始,並閱讀連結的 Veeam 和 NAS 外掛程式文件。重現 zone 設定,並檢查 issue 中描述的 Compute 部署檢視和執行個體檢視。當多個 provider 能夠依需求共存,且 backup offerings 會依 hypervisor 或 cluster 類型進行篩選時,即表示完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- java
- 領域
- backend, cloud, infrastructure
- Issue 類型
- 功能
- 難度
- 5/5
- 預估耗時
- 一週以上
- 活躍度
- 活躍
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100