Commit Graph

73 Commits

Author SHA1 Message Date
Dominik Csapak
7748b41fa1 ui: ceph/Pools: defuse min_size warning
we should not warn for ceph's built-in default value for min_size as
having the min_size half of the size (rounded up) is ok and even the
default for ceph

Since there seems to be no 'quorum based' pg inconsistency recovery[0],
only a copy from the authoritative osd, there is nothing wrong
with setting that.

0: https://docs.ceph.com/en/latest/rados/operations/pg-repair/

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-06-18 17:18:02 +02:00
Thomas Lamprecht
d7eb3e2282 ui: ceph: pool edit: set emptyValue to 0 for target-size field
ensure it gets "deleted" (ceph resets it on setting this to zero)
when modified to empty.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-26 14:25:02 +02:00
Thomas Lamprecht
6bcb88cf53 ui: ceph: pool edit: drop allowZero from numberfield
not a thing there, so do not be misleading and suggest this is
required

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-26 14:25:02 +02:00
Thomas Lamprecht
519d9f3fee ui: ceph pools: fixup class names, drop extry xtype definition
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-24 19:23:04 +02:00
Thomas Lamprecht
5da1b6d0db ui: ceph: pool creation: default auto-scale value to "on"
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-24 19:18:51 +02:00
Thomas Lamprecht
261bb63356 ui: ceph: pool: eslint fixes and code cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-24 18:44:23 +02:00
Thomas Lamprecht
13786fb021 ui: ceph: factor out installation mask store monitoring
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-24 18:43:07 +02:00
Thomas Lamprecht
cd99757bdf ui: ceph pools: avoid resetting crush rule hwne editing a pool
we are only allowed to set autoselect the first record after load on
creation, else we may change the value by mistake which, if the admin
does not notices when changing some other setting, can be quite fatal
as it can trigger a huge rebalance, where the cause may then not even
be obvious and thus an admin be quite baffled.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-23 18:52:00 +02:00
Thomas Lamprecht
5a34ccd6b2 ui: ceph pools: do not grey-out name field when editing
The displayEdit field already shows it as display field in this case,
which is enough.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-23 18:00:13 +02:00
Thomas Lamprecht
ad33cfd53a ui: ceph pools: fix target size column renderer
Moved to widget toolkit recently..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-23 17:59:13 +02:00
Dominik Csapak
1bd7bcdbf1 ui: Utils: use render functions from widget-toolkit
they live there now, so we can delete them here and use the ones from
widget-toolkit instead

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-22 18:34:34 +02:00
Fabian Ebner
b9635c9b99 ui: use safe destroy window from proxmox-widget-toolkit
for the remaining (i.e. non-guests) users.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-22 13:02:45 +02:00
Thomas Lamprecht
86a5da839a ui: ceph/pool: fix setting target ratio/size (back) to zero
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 15:44:47 +02:00
Thomas Lamprecht
0e0f861a04 ui: ceph/pool: fix minWidths for columns to support 720p without scrolling
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 15:41:03 +02:00
Thomas Lamprecht
00c0fc4bb5 ceph: pool: make min_size constrain check more general
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 14:19:50 +02:00
Thomas Lamprecht
5c2c2a6db9 ceph: pool: min_size should be auto-set to > size/2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 14:18:36 +02:00
Thomas Lamprecht
4d7acd65bf ceph: pool edit: improve UX of target size/ratio fields
s/Target Size Ratio/Target Ratio/, shorter and ceph docs call it also
that way, allows do drop the non-standard label width.

Add tooltips to explain both, target size and ratio, a bit.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 13:31:06 +02:00
Thomas Lamprecht
18a5845e34 ceph: pools: use sizeField, nicer UX and less code
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 13:15:32 +02:00
Thomas Lamprecht
ec455ed049 ui: ceph/pools: refactor to more declarative style
no semantic changes intended, fixes a few eslint issues along the
way.

This could be further improved by using a ViewController, but lets
keep it at this compromise for now due to work time ROI.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-21 12:56:53 +02:00
Dominik Csapak
cc0734fc9f ui: ceph/Pool: show progress on pool edit/create
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-04-20 18:20:35 +02:00
Dominik Csapak
17b90534d4 ui: ceph/Pools: improve number checking for target_size
the field gives us a string, so the second condition could never
be true, instead parse to a float instead

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-04-20 18:20:35 +02:00
Alwin Antreich
ae79323250 ceph: gui: add min num of PG
this is used to fine-tune the ceph autoscaler

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-04-20 18:20:35 +02:00
Alwin Antreich
4618a86964 ceph: gui: rework pool input panel
* add the ability to edit an existing pool
* allow adjustment of autoscale settings
* warn if user specifies min_size 1
* disallow min_size 1 on pool create
* calculate min_size replica by size

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-04-20 18:20:35 +02:00
Alwin Antreich
11ce9e1a1d ceph: gui: add autoscale & flatten pool view
Letting the columns flex needs a flat column head structure.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-04-20 18:20:35 +02:00
Thomas Lamprecht
8058410f40 ui: eslint: fix various spacing related issues
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-01-19 17:39:15 +01:00
Thomas Lamprecht
f6710aac38 ui: eslint: fix trailing comma and comma related whitespaces errors
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-01-19 17:31:03 +01:00
Dominik Csapak
9493ac144b ui: remove sum for percentages of ceph pools
because different pools can have different crush rules, etc.
the sum of the 'percentage used' column makes no real sense, so we
remove it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-11-16 10:12:03 +01:00
Alwin Antreich
384132c3ab ceph: gui: add autoscale mode to pool create
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2020-10-22 18:18:35 +02:00
Thomas Lamprecht
3bbce3b8cd drop jslint lines
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-06-06 18:11:47 +02:00
Thomas Lamprecht
23b316a325 ui: ceph/pool: allow autoscale on create
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-06-03 16:15:55 +02:00
Alwin Antreich
06bd1c5215 ceph: extend the pool view
to add the pg_autoscale_mode since its activated in Ceph Octopus by
default and emmits a waring (ceph status) if a pool has too many PGs.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2020-06-03 16:08:27 +02:00
Thomas Lamprecht
6386068d0e ui: call more update store functions in the store scope
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-09 16:45:22 +02:00
Thomas Lamprecht
59e330805d ui: ceph/pool: enable add_storages by default and add tooltip
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-11 14:55:26 +02:00
Thomas Lamprecht
5b7b4b7623 ui: ceph/pool: rework status grid a bit
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-11 14:21:51 +02:00
Dominik Csapak
ac1308a79d gui: ceph pools: fix pool % used display
nautilus uses values from 0 to 1 instead of 0 to 100

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-02 10:40:16 +02:00
Tim Marx
4616a55b37 added basic ability to install ceph via gui
Signed-off-by: Tim Marx <t.marx@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-08 12:33:31 +01:00
Thomas Lamprecht
6ad70a2bb8 ceph: update all pg_num defaults to 128
As the last patch missed a few places. see pg calc or also:
http://docs.ceph.com/docs/luminous/rados/operations/placement-groups/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-29 12:36:25 +01:00
Thomas Lamprecht
cb638dba65 ui: ceph pools: we now add only one storage, so signular
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-28 12:06:54 +01:00
Thomas Lamprecht
56a353b9e7 use RestProxy from widget toolkit
Split PVE specific models, which where not moved to the general
widget toolkit, in a separate folder: data/models/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-25 13:36:38 +01:00
Thomas Lamprecht
eaa018d71e use DiffStore from widget toolkit
The alias stayed the same (store.diff) so we need to change direct
usage of 'PVE.data.DiffStore' only.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-25 13:36:38 +01:00
Thomas Lamprecht
9fccc702ec use windowEdit from widget toolkit
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-25 13:36:38 +01:00
Thomas Lamprecht
896c0d5019 use Checkbox from widget toolkit
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-25 13:36:38 +01:00
Dominik Csapak
e7ade592e3 use Proxmox.Utils instead of PVE.Utils
some function are now in Proxmox.Utils instead, so we have to use that

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-01-25 13:36:38 +01:00
Dominik Csapak
5720fafabc use Button from widget toolkit
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-01-25 13:36:37 +01:00
Dominik Csapak
0c7c0d6bcf use UpdateStore from widget toolkit
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-01-25 13:36:37 +01:00
Dominik Csapak
bf96f60deb use IntegerField from widget toolkit
there we implemented deleteEmpty, which we can use in some cases.
this also fixes a bug in the ControllerSelector where
an empty field would be allowed (but should not)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-01-25 13:36:37 +01:00
Thomas Lamprecht
35085f4ae8 ui: ceph: add some help buttons
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-10-19 08:51:34 +02:00
Fabian Grünbichler
4358abfdf4 rename 'Remove' ceph pool button to 'Destroy'
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
7244f4bfb6 enable showProgress for create/destroy pool
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Dominik Csapak
cb852a4dcd add remove_storages parameter to the pool destruction
automatically remove the pveceph managed storages when deleting the
pool on the gui

this is ok because we cannot delete the pool anyway when we have images
on it, and recreating them when creating a pool is now trivial

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 11:38:20 +02:00