Commit Graph

680 Commits

Author SHA1 Message Date
Thomas Lamprecht
481816075e followup: add intermediate directory index for sdn/zones
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-26 17:58:01 +01:00
Alexandre Derumier
bb65469946 api2 : nodes : use zones api status
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2019-11-26 17:08:23 +01:00
Alexandre Derumier
20dc8bbeb8 api2 : reload : use zones/controllers sdn plugins 2019-11-26 17:08:23 +01:00
Thomas Lamprecht
f6b2b1708f api mon: allow full-mesh routed setup for monitor IP
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-26 15:42:24 +01:00
Thomas Lamprecht
6159470e4d api: network reload: more granular OVS change check
Just because OVS is installed it doesn't mean that OVS interface
(changes) are configured - so check for that.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-26 11:43:43 +01:00
Dominik Csapak
29a6f85885 fix #2462: ACMEAccount: make tos in get_tos optional
the code returns undef in case there is no 'tos', and the code
calling this api call handles a non-existing tos already, but
fails in that case becasue of the failing return value verification

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-11-22 12:19:27 +01:00
Thomas Lamprecht
6fba05b2b6 api/ceph: skip merging metadata if hostname is undefined
It's a bit hard to figure out the exact constellation required for
this to happen, but we saw it in live systems when one node was dead
in a three node cluster.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-21 10:57:50 +01:00
Thomas Lamprecht
ae253364d5 ceph/api: cleanup comment on extra line
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-21 10:57:21 +01:00
Thomas Lamprecht
1b025c2fa0 api: node/config: allow to return only a specific config property
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-19 12:04:52 +01:00
Fabian Grünbichler
516a7948cd use PVE::RRD for RRD data
refactored from PVE::Cluster. same code, same semantics, different file.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-11-18 12:25:35 +01:00
Fabian Grünbichler
3ac3653e63 use PVE::DataCenterConfig
to make sure that the corresponding cfs_read_file works() works.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-11-18 12:25:35 +01:00
Thomas Lamprecht
1aaca6fde7 api: ceph/metadata: add structured node versions
include the version as string and as parts, as we do the split
already. Also include the build commit, so if we re-release a ceph
version, we can differ here too.

Use node as key, to make the new entry a bit more general, could be
easily expanded with other infos, if required.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-15 18:36:37 +01:00
Thomas Lamprecht
4cfe5534e2 pveversion: track libspice-server1 (again)
Removed in commit fcb8022169 as we
wanted to re-use Debian Busters upstream version, but we re-uploaded
our own again. And besides that, this version would be still
interesting if it was not uploaded by us..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-30 18:22:51 +01:00
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