6357 Commits

Author SHA1 Message Date
Aaron Lauterer
ea4d55c99d report: add ceph device list
Can help a lot to identify which OSD is using which physical disk

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-06-02 09:09:58 +02:00
Matthias Heiserer
0fe712de01 ui: qemu disk edit: fix typo in view model variable name
Worked before because we always set the correct one manually in the
view controllers init and scsi-controller change handler.

Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
 [ T: added actual subject and reworded commit message ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-28 09:15:13 +02:00
Thomas Lamprecht
7658f01078 minor code style clenaup and comment wording
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-28 09:12:21 +02:00
Thomas Lamprecht
ba705571ea bump version to 7.2-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-12 17:36:46 +02:00
Fabian Ebner
7268fdf25c configs: vzdump: add notes-template default
so users can see that it can be configured here.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-12 17:17:56 +02:00
Fabian Ebner
c4dca88b5e ui: manual backup: also set notes-template default
like is done for other vzdump options already.

Requested in the community forum:
https://forum.proxmox.com/threads/108970/#post-468655

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-12 17:17:56 +02:00
Fabian Ebner
3f488b618b vzdump: avoid 'requires' constraint when parsing defaults
to avoid warnings like
parse error in '/etc/vzdump.conf' - 'storage': missing property -
'notes-template' requires this property
when there is no default for the required property configured.

In new(), the defaults are mixed in with the regular CLI/API
parameters, so re-check if the required property is set. If it's not,
the defaults do not apply to the current run, and can be dropped.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-12 17:17:56 +02:00
Fabian Ebner
03875d7ac4 ui: manual backup: list possible template variables directly
rather than as a tooltip.

Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-12 17:17:56 +02:00
Fabian Ebner
2078e35988 vzdump: generate notes: initialize potentially undef values
For VMs, $task->{hostname} might be undef and when running on a
stand-alone node, there is no cluster name.

Reported-by: Marco Gabriel <mgabriel@inett.de>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-12 17:17:56 +02:00
Fabian Ebner
facf65a6e0 vzdump: verify parameters: properly verify notes-template
instead of just checking for a newline, do a full check already.

Also do the check at the beginning of generate_notes() for consistency
and remove the check after expansion to avoid failing late for things
like '{{cl{{node}}er}}' (which can even expand to a valid variable
making the error even more confusing).

Co-developed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-12 17:17:48 +02:00
Thomas Lamprecht
1992003e00 ui: move new node options below hosts entry
avoid splitting the related DNS and Hosts settings in the middle

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-12 16:40:41 +02:00
Daniel Tschlatscher
5837726350 fix #3994: ui: add Options entry in the node System menu
Add the subentry "Options" in the "System" menu to expose some
options in the GUI which were not exposed before.

Added a new file for displaying and editing the node config options
which were not exposed through the GUI yet. Namely those are the
settings for wakeonlan and startall-on-boot-delay. Edited the
Makefile to include the newly created file.

Signed-off-by: Daniel Tschlatscher <d.tschlatscher@proxmox.com>
2022-05-12 16:38:07 +02:00
Daniel Tschlatscher
5ff695733f gui: VM Create wizard - display default scsi controller correctly
Fixed a cosmetic issue where in the VM creation wizard the SCSI
controller would not be displayed correctly if the default value
"Default (LSI 53C895A)" was selected. In this case, "__default__"
would be printed for the user after progressing into the next "Disks"
pane.

Signed-off-by: Daniel Tschlatscher <d.tschlatscher@proxmox.com>
2022-05-12 16:32:02 +02:00
Thomas Lamprecht
7390b45c34 d/control: bump versioned dependency for libpve-storage-perl
to ensure we can add and use namespaces for PBS storages

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-12 15:08:03 +02:00
Thomas Lamprecht
26f68e6534 ui: storage: add namespace support when creating PBS storage
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-12 15:07:38 +02:00
Thomas Lamprecht
c956508c7d fix # 4044: ui: hd move: avoid bogus progress bar, show task viewer
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-11 16:23:11 +02:00
Thomas Lamprecht
01231c34c4 bump version to 7.2-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-04 08:46:56 +02:00
Thomas Lamprecht
d0dfd9b87f vzdump: fix unknown variable name error, add newline
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-04 08:19:35 +02:00
Fabian Ebner
1f581ff78e vzdump: notes-template: improve check for unknown variable
so that '{{foo}}{{bar}}' is not detected as being an unknown variable
named 'foo}}{{bar', but as 'foo' (and 'bar').

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-04 07:58:50 +02:00
Fabian Ebner
4ed6e1b182 vzdump: notes-template: avoid escaping meta-characters upon replace
which is caused by the quoting operators \Q...\E. The actual intention
was to avoid such surprises.

Fixes: e01438a7 ("partially close #438: vzdump: support setting notes-template")
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-04 07:57:45 +02:00
Thomas Lamprecht
ea9eea012a api: ceph pool: reword ec desc full textwidth and reword slightly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-04 07:14:56 +02:00
Aaron Lauterer
1401cb4e43 ceph pools create: enhance erasure-code description
Mention which optional parameters will be used for the replicated
metadata pool but won't have an effect on the erasure coded data pool.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-05-04 07:12:00 +02:00
Aaron Lauterer
9569939a54 ceph pools create: remove crush_rule for ec pool data
The crush rule is an optional paramter which can be used for the
metadata pool, but the erasure coded data pool will always get its own
crush rule. Therefore this parameter can not be adapted.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-05-04 07:11:06 +02:00
Dominik Csapak
e5f94bc198 schedule-analyze: fix schedules with limited runs
When a schedule only has a limited amount of runs it can happen
(e.g. 2022-10-01 8:00/30), $next will be undef after the last run.
Exit early in that case.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2022-05-04 07:10:13 +02:00
Thomas Lamprecht
771d35e70e update aplinfo
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-03 07:23:22 +02:00
Thomas Lamprecht
4f0fd28759 bump version to 7.2-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-02 17:33:40 +02:00
Matthias Heiserer
719f1d3c6f ui: disk reassign: remove unused reference and bind
They are not used anywhere else, so I assume they were left over from
an earlier version.
Also, sometimes "[object object] flashes in the Target Guest field
when opening the reassign window, with this removed it doesn't occur.

Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
2022-05-02 16:44:44 +02:00
Fabian Ebner
ab0616aacb ui: snapshot tree: warn that current state is lost when confirming rollback
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-05-02 15:46:36 +02:00
Aaron Lauterer
a73f844d71 ui: ceph pools: add pool type column
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2022-05-02 15:43:19 +02:00
Aaron Lauterer
1a04202598 ui: ceph pool edit: disable size and crush rule for erasure pools
They cannot be changed after pool creation for erasure coded pools

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2022-05-02 15:43:15 +02:00
Aaron Lauterer
fca1900c76 api: ceph pools: add type to returned properties
The osd dump already contains the pool type in numerical format.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2022-05-02 15:43:11 +02:00
Aaron Lauterer
5f4efb8817 ceph tools: set_pools: filter settings for erasure code pools
Erasure code pools cannot change certain settings after creation.
Trying to set them will cause errors on Cephs side.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2022-05-02 15:43:06 +02:00
Dominik Csapak
2637f372fe ui: realm sync: let users set 'remove vanished options' independently
and label it correctly. The 'Properties' option was mislabeled,
it means 'remove vanished fields from synced users', not 'remove
fields from vanished users'.

So don't couple that with the 'Entries' option, and update the label
to convey the right meaning.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2022-05-02 15:28:27 +02:00
Thomas Lamprecht
5a912de3f3 ui: storage content: support filtering by notes for backups
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-05-02 15:26:21 +02:00
Thomas Lamprecht
0356688f28 d/copyright: update years
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-29 14:35:45 +02:00
Thomas Lamprecht
bac6d2b6df bump version to 7.2-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-29 14:29:33 +02:00
Thomas Lamprecht
ec63b237de api: ceph: fix description indentation style
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-29 14:28:12 +02:00
Thomas Lamprecht
07316e6d04 api: followup: code locality
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-29 14:26:32 +02:00
Aaron Lauterer
4605d6fd22 api: ceph ec pools: make add_storages overridable default
The behavior of always adding the storage config was lost in commit
23c407e. But it is more sensible to make it a default that can be
changed if needed.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-04-29 14:24:04 +02:00
Aaron Lauterer
136f761ba7 api: ceph ec pools: schema fixes and enhancements
Ceph has a min value for 'k' of 2. Adding default and description where
missing.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-04-29 14:24:04 +02:00
Dominik Csapak
a9faeb43ad ui: dc/SyncWindow: realign to sync options
put the checkboxes in a fieldset and reuse their labels

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2022-04-29 14:23:30 +02:00
Thomas Lamprecht
cb5507a65c bump version to 7.1-13
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-28 21:00:48 +02:00
Thomas Lamprecht
f35e7fcd8e api: ceph ec pools: move to format-str, create ec in worker, reuse $rados
moved to a format string 'erasurce-coded', that allows also to drop
most of the param existence checking as we can set the correct
optional'ness in there.  Also avoids bloating the API to much for
just this.

Reuse the $rados connection more often to avoid to much
overhead/lingering sockets (the rados connection stays around in the
background to allow efficient reuse)

really should be three separate commits, but too intertwined and too
late for me to care tbh.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-28 20:26:38 +02:00
Thomas Lamprecht
23c407e59b ceph tools: allow more rados connection reuse
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-28 20:26:38 +02:00
Aaron Lauterer
3bd128d7a0 ceph pools: allow to create erasure code pools
To use erasure coded (EC) pools for RBD storages, we need two pools. One
regular replicated pool that will hold the RBD omap and other metadata
and the EC pool which will hold the image data.

The coupling happens when an RBD image is created by adding the
--data-pool parameter. This is why we have the 'data-pool' parameter in
the storage configuration.

To follow already established semantics, we will create a 'X-metadata'
and 'X-data' pool. The storage configuration is always added as it is
the only thing that links the two together (besides naming schemes).

Different pg_num defaults are chosen for the replicated metadata pool as
it will not hold a lot of data.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-04-28 20:26:38 +02:00
Aaron Lauterer
34a2222dd8 ceph tools: add erasure code management functions
Functions to manage erasure code (EC) profiles:
* add
* remove
* check if exists
* get default prefixed name
* get pool properties
* destroy crush rule

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-04-28 20:26:38 +02:00
Aaron Lauterer
29fe1eea7a api: ceph: $get_storages check if data-pool too
When removing a pool, we check against any storage that might have that
pool configured.
We need to check if that pool is used as data-pool too.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-04-28 20:26:38 +02:00
Thomas Lamprecht
24f3f2bc29 ceph tools: make rados open if not reused shorter
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-28 20:26:38 +02:00
Thomas Lamprecht
0ac20586ac vzdump: transform hook script checks to post-if notation
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-28 18:44:20 +02:00
Dylan Whyte
941ed98edd vzdump: add error if passed in hook script doesn't exist
Previously, if the '--script' argument was passed with a non-existent
file, it would state that a non-executable script was the reason for
failure. This adds a check to see if the hook script exists, in order
to provide a more accurate error message.

Also adds an 'Error:' prefix the 'script not executable' error.

Signed-off-by: Dylan Whyte <d.whyte@proxmox.com>
2022-04-28 18:38:53 +02:00