Commit Graph

667 Commits

Author SHA1 Message Date
Christian Ebner
2424074ee7 vzdump: move code needed for cfs register of vzdump.cron to guest-common
This moves the cfs register code for vzdump.cron to the
pve-guest-common package. Therefore, it relies on the corresponding
patches in pve-guest-common and pve-docs as build dependencies.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-18 08:23:40 +02:00
Fabian Grünbichler
d8645329d6 api: subscription: use rpcenv for permission check
commit 2d2ed7ab53 had a valid cause but
unnecessarily used the static PVE::AccessControl::check_permissions.
As the RPCEnvironment based check method has a "$noerr" parameter and
we already have a rpcenv instance readily available, we can use that
one just fine.

this is the last caller of PVE::AccessControl::check_permissions(),
which is the last caller of PVE::AccessControl::permission(). both can
thus be dropped altogether.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-17 16:53:57 +02:00
Alexandre Derumier
e06c0dab3d api2 : network : use vtysh for frr reload instead systemd
avoid extra dep on frr-pythontools and parse error messages

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-09-19 15:17:09 +02:00
Thomas Lamprecht
084e60304e api network reload: code cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-05 14:31:24 +02:00
Alexandre Derumier
bc700dbc5b api2: network reload: add frr config generation and reload
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-09-05 12:29:13 +02:00
Thomas Lamprecht
eb5cc90892 follouwp whitespace/indentation cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-03 10:31:14 +02:00
Alexandre Derumier
4be427a021 api2 : nodes : sdn status endpoint
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-09-03 10:28:55 +02:00
Alexandre Derumier
afc237df4e api : cluster ressources : add sdn
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-09-03 10:28:55 +02:00
Alexandre Derumier
2bca9b773e api2: network reload : generate local sdn config
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-09-03 10:28:55 +02:00
Alexandre Derumier
f0f63a1cb2 api2 : cluster: add sdn api endpoint
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-09-03 10:28:55 +02:00
Thomas Lamprecht
a740deff88 fix typos all over the place
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-03 07:55:32 +02:00
Thomas Lamprecht
e1b5780906 api startall guest: improve descriptions
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-03 07:53:11 +02:00
Tim Marx
4a512d7a2e api: fix nodes stats memory return type description
Signed-off-by: Tim Marx <t.marx@proxmox.com>
2019-08-26 13:36:48 +02:00
Dominik Csapak
385df8382d fix #2341: ceph: osd create: allow db/wal on partioned disks
It was intended that for partitioned disks, we create one and use it.
Instead the code died always when the disk was used and not of type 'LVM'

We now check correctly the 2 cases:
* used for partitions and has gpt
* used and lvm

The remaining api call handles those two cases correctly

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-08-22 14:09:20 +02:00
Stefan Reiter
b05c990876 Delete "exclude" when switching a backup job to pool mode
If you updated a job in "exclude" mode with some VMIDs specified to "pool" mode,
the backup job would retain the "exclude" section and thus not back up all VMs.

The GUI misrepresents this, showing that all VMs will be backed up or
straight up break and show "exclude" mode again, with the backend still
being on "pool" - to prevent this, we always delete a jobs "exclude" list
when it's switched to "pool".

Co-authored-by: Tim Marx <t.marx@proxmox.com>
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-08-16 13:09:42 +02:00
Stefan Reiter
43b2494b79 Code cleanup in Backup
Whitespace removal and consolidating VZDump's job id format into a
local variable.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-08-14 14:02:53 +02:00
Stefan Reiter
6cd5ffb06c fix #1594: allow skipping VMIDs on other nodes from API
This was previously gated to CLI only, but it causes a vzdump job
started with the newly introduced "Run Now" button to fail if it
includes VMIDs on other nodes.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-08-14 13:36:08 +02:00
Stefan Reiter
e953f92adf fix #2314: remove GZIP env var
...and replace instead with command line argument.
Avoids a deprecation warning.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2019-08-08 13:18:45 +02:00
Thomas Lamprecht
6dd2846577 ceph: add perl flag GET and PUT call
use PUT for setting or unsetting, as POST/DELETE (like the old node
specific API used) makes no sense. One does not creates or deletes
the flag, they are always here. One just updates their value

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 17:15:37 +02:00
Thomas Lamprecht
1225095df1 ceph: move flag API endpoints to node-agnostic /cluster/ceph path
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 17:15:37 +02:00
Thomas Lamprecht
735f24ebae ceph: move possible_flags to Ceph::Tools for intra-module reuse
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 15:52:23 +02:00
Thomas Lamprecht
78ad23f8f0 api/cluster: move ceph calls into sub- directory/module
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 15:28:18 +02:00
Thomas Lamprecht
a35f2afff4 cluster api: group and sort module use
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 15:24:58 +02:00
Thomas Lamprecht
3ddccb37ca ceph flags: rename flags2 to flag before public release
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 13:59:44 +02:00
Thomas Lamprecht
70f9f9d048 api/ceph: followup: refactor out getting the current set flags
Add a new private helper which just does that for us, to avoid having
the same, or multiple implementations doing the same thing.

Allow to pass the $rados for sharing the same connection but also
just create it else for convenience

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 12:54:16 +02:00
Dominik Csapak
5a386ce4eb ceph: set/unset flag: remove unused variable
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-23 10:23:31 +02:00
Dominik Csapak
3139a36e12 ceph: add PUT 'flags' api call
this api call can set multiple flags at once, but does this in a
worker since this can take quiet some time

also we only set/unset flags that are not already set/unset (respectively)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-23 10:23:31 +02:00
Dominik Csapak
eacc058fbc ceph: add GET 'flags2'
we want a GET api call where we return all available flags with
description, but the GET 'flags' api call already returns a string
and not an array, so we cannot use that

instead, we add a new api call that returns that feature and
with e.g. pve 7 we can remove the 'flags' api call and
rename 'flags2' to 'flags'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-23 10:23:31 +02:00
Dominik Csapak
1c898d382a ceph: add flag hash
this is used to generate the paramters for the set/unset api call
and will be used for the parameters of the upcoming 'set multiple flags' call

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-23 07:49:01 +02:00
Thomas Lamprecht
7ef69f338e ceph tools: factor out frequent keyring and config init check
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-23 07:48:45 +02:00
Thomas Lamprecht
cead98bd69 api/osd: opinionated code cleanup of list
among others: reduce use of sub-hash as index for another hash

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-22 16:25:07 +02:00
Dominik Csapak
69ad2e539e ceph: osd list: add hostversions to the host nodes
we want to improve the version hints in the osd tree gui and need
the version at the host nodes

we could (and want to) workaround it in the gui to have that
info for both versions of the api call

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-22 15:52:07 +02:00
Thomas Lamprecht
67d8218fbd fix #2292: ceph osd create: use size parameter for db/wal
commit 970f96fdbb did not account for
getting the correct size parameter from the api call, so we ignored
it always resulting in uses not be able to set an explicit db/wal
size

Originally-fixed-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-19 11:05:49 +02:00
Fabian Grünbichler
b4cb37e057 ceph destroymon: actually die on errors
instead of silently ignoring them. since we are in a task worker here
this is especially important - otherwise the task status/result is also
wrong!

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-07-17 13:01:31 +02:00
Fabian Grünbichler
8e2b5110e5 ceph init: actually die on errors
instead of silently ignoring them

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-07-17 13:01:31 +02:00
Thomas Lamprecht
7c9f66d036 followup code cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-15 10:57:00 +02:00
Dominik Csapak
199aa9efb7 ceph: mon list: show only as running when monitor is quorate
nautilus puts non running monitors also in the monmap, so only show
as running when it has quorum

this is also not 100% correct, but the only 'correct' alternative is
to try and get/parse the systemd status of the units and broadcast it
to the pmxcfs

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-15 10:56:14 +02:00
Thomas Lamprecht
9cc5ac9e75 api/ceph: code cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-11 14:16:11 +02:00
Dominik Csapak
b7701301a8 api/ceph: add osd scrub api call
can be called to (deep) scrub a specific osd

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-11 14:16:06 +02:00
Dominik Csapak
47d13c02b0 fix #2267: delete address(6) and netmas(6) with cidr(6)
otherwise a user cannot delete an ip from an interface

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-08 19:19:15 +02:00
Dominik Csapak
21e413dc01 ceph: add api call for config database
simply returns the database content

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-05 09:52:58 +02:00
Thomas Lamprecht
93580fec68 use new url
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-04 17:57:27 +02:00
Dominik Csapak
351d128f80 ceph: mon create: add known monitor ips to mon_host if it is empty
this fixes an issue where only one monitor is in mon_host, which is
offline, prevents a client connection

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-04 09:57:50 +02:00
Dominik Csapak
217dde83f0 ceph: osd: use get-or-create to create a bootstrap-osd key on demand
if for some reason the cluster does not have this key, generate it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-04 09:57:50 +02:00
Dominik Csapak
7712a4e151 ceph: osd create: check for auth before getting bootstrap key
we do not need it if auth is 'none'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-04 09:57:50 +02:00
Thomas Lamprecht
8ec913c1cc followup: do not use string comparision for integers
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 15:34:19 +02:00
Tim Marx
2fb592ddbe api: ceph: automatically create manager after the first monitor
Signed-off-by: Tim Marx <t.marx@proxmox.com>
2019-07-03 15:34:19 +02:00
Fabian Grünbichler
50d5fd6ab0 ceph: init: fix undef var access
Fixes: d851d63ecc
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-07-03 15:10:02 +02:00
Dominik Csapak
d851d63ecc ceph: init: only handle keyring if auth is cephx
if auth is 'none' there is no client keyring, so do not generate it and
do not write it into the config

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-03 11:34:34 +02:00
Thomas Lamprecht
5dff9157df api: subscription: return https backed link
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-01 15:00:27 +02:00