apache / apache/cloudstack

Implement Progress Bar + Estimated Time Remaining + Cancel Button for Volume Snapshots

オープン
#9,269 コメント 3 件 リアクション 3 件 担当者 0 名 GitHub で見る
component:api component:UI status:needs-functional-definition type:new-feature
主要言語
Java
スター
3.1k
フォーク
1.4k
平均マージ
6日 19時間
マージ済み PR(30日)
32

説明

##### ISSUE TYPE

* Improvement Request

##### COMPONENT NAME

~~~
Volume Snapshots
~~~

##### CLOUDSTACK VERSION

~~~
4.19.0
~~~

##### CONFIGURATION

##### OS / ENVIRONMENT

##### SUMMARY

Currently when taking Volume Snapshots, users have no idea how long the operation takes.
Cloudstack will just show a circle loading animation, with no indication on progress or time left.
As a result, user does not know if there is a bug in the snapshot process, or its actually in progress.
This becomes even worse for large volumes (eg. 10TB) where it can take hours to complete.
And if the user waits too long, they will think the system hanged and would then attempt to create a new Volume Snapshot, resulting in 2 on going copies, which will slow down the entire system.

Volume Snapshot seems to be a very intensive operation. In this case, user should be allowed to cancel an ongoing volume snapshot if desired, to save system resources from an unmeaningful operation.

My suggestion is to add a progress bar to the following UI for better user experience:
![Screenshot 2024-06-18 at 11 11 35 pm](https://github.com/apache/cloudstack/assets/147712084/b2c10cc4-e567-43ee-a055-a5f455c95e76)
![Screenshot 2024-06-18 at 11 10 25 pm](https://github.com/apache/cloudstack/assets/147712084/0664d06a-6ae3-42c1-9632-f4d623b81679)
![Screenshot 2024-06-18 at 11 12 00 pm](https://github.com/apache/cloudstack/assets/147712084/f2a388a4-ff93-4511-b8a8-65db02e88bb0)

This implementation should be neutral to the underlying storage, such as NFS, Object Storage, Ceph, Linstor etc

##### STEPS TO REPRODUCE

~~~

~~~

##### EXPECTED RESULTS

~~~
Better user experience for volume snapshots
~~~

##### ACTUAL RESULTS

~~~
- Cant tell if Volume Snapshot hanged, or is in progress (especially large Volumes)
- Cant monitor progress of snapshot
- Cant cancel Volume Snapshot
~~~

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、リンクされたスクリーンショットに示されている Volume Snapshots UI と、既存の snapshot 操作フローを確認します。NFS、Object Storage、Ceph、Linstor 全体で、進捗、推定時間、キャンセルをどのように機能させるかを定義します。ユーザーがストレージ固有の動作なしに snapshot を監視およびキャンセルできれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java
領域
backend, cloud, frontend, infrastructure
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。