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