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>
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>
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>
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>
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>
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>
to be able to automatically generate the ceph storages when creating a
pool
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
indentation was wrong on those lines, and js lint complains about
alias not being an array later, so make thoses lines not an array
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
whenever a window is closed (creation, deletion) we want to reload the
pool grid, for not having to wait on the next refresh
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we get the names in the backend, and give them as an additional field
in the api call, and use it in the grid
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this patch does a few things
1. we introduce a new api call /nodes/nodename/ceph/rules
which gets us a list of crush rules
2. we introduce a new CephRuleSelector which is a simple combobox
with the data from the api call ceph/rules
3. we use this in the create pool window
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
since ceph 12.1.1 the (deprecated) parameter 'crush_ruleset' is removed
and replaced with 'crush_rule' while changing this, change from
integer to string so that we can later use the names of the rules
instead of the id
(for now there seems to be a bug that you can only use the name and
not the id)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Some setups may want to use more replicas as three, while my proposed
maximal 7 replicas is also arbitrary it should cover all normal
usecases (i.e. 5 replicas) and a bit more, just to be sure.
size/min_size 2/1 is unsafe as it can result in split brains, so we
should not recommend it as default.
If the user really wants it he can still set it explicit.
this adds a subclass of Ext.form.field.Number with the settings for
Integers (allowDecimals: false and allowExponential: false and default
step size 1)
and use it where we only accept integers
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this patch moves the onlineHelp ids into the javascript classes, instead
of defining them where we use the classes
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
since we do not use tabpanels anymore,
the hide calls and listeners do nothing,
so we can drop them
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
before ECMA5 trailing commas in arrays and objects
are forbidden
in jslint this is an error and cannot be deactivated
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
fix various type confusion, for example:
items: {} and items: []
style: string and style: {}
also fix object['property'] access with
object.property
also fix /=/ with either '=' or /\=/ where appropriate
(/=/ can be confused with /= according to jslint)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
when switching from one node to another, we stop the wrong store
for the ceph tabs disk/monitor/pools because they have the same id,
so give them different ones
also the same applies for node/Services, fix it there too
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
the usual:
* move static conf. to class definition
* change "show" event to "activate"
special attention here to the bufferedRenderer: false value here:
if the grid panel has bufferedRenderer: true (default) and the
store is our Diffstore, it adds the Summary Row twice, once before
the store is loaded and once after.
because there probably will not be many pools in a ceph configuration
managed by the gui, we can safely deactivate bufferedRenderer
(according to extjs documentation, this is intended for gridpanels
with several thousand rows, which is not an issue with ceph pools
i think)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>