Commit Graph

91 Commits

Author SHA1 Message Date
Thomas Lamprecht
c3d9c6980d pveceph install: allow nautilus and use as default
We allow 'luminous' still for testing purpose, it could be also
useful if one already upgraded his cluster to PVE 6.0 / Buster but
not yet ceph and due to a incident needs to setup a new luminous node
on Buster to get  healthy again. This is fabricated but not
unthinkable, as it costs nothing and isn't available for WebUI user
just keep it for now. Remove with a future point release though.
Use non-public repo for now, will be updated to testing soon.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-27 16:17:29 +02:00
Thomas Lamprecht
87166f36ad pveceph install: output warnings from apt update, they're relevant
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-27 16:17:29 +02:00
Thomas Lamprecht
2ca75379f7 ceph install: pull out ceph packages and apt command
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-26 13:41:16 +02:00
Thomas Lamprecht
13f0b446e0 ceph: install: run_command is imported, use directly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-26 13:39:41 +02:00
Thomas Lamprecht
bba5c71217 ceph: drop systemd_managed - we now always are
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-26 13:35:39 +02:00
Thomas Lamprecht
36d5ee1272 api: install ceph: remove old cruft
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-26 12:40:33 +02:00
Thomas Lamprecht
588c0a75a7 followup: code cleanup and print error
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-16 12:06:25 +00:00
Alwin Antreich
1b364b3a98 pveceph: install ceph service print sucess message
This patch adds a success message on successful ceph.service
installation. And adds a newline to make a successful ceph package
installation more visible.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2019-04-16 12:03:29 +00:00
Thomas Lamprecht
55ab726e61 pveceph install: be a bit more verbose
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-03-28 13:24:12 +01:00
Fabian Grünbichler
99aca71627 pvenode: use 'UNKNOWN' if task status is missing
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-01-23 18:42:59 +01:00
Fabian Grünbichler
236f253c9e pvenode: don't treat running tasks as failed
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-01-23 18:42:59 +01:00
Christian Ebner
0f615ea9df pvenode: Return MAC address used for WoL call on success
Use the new format to verify the MAC addresses.
The wakeonlan API call now returns the MAC address of the node to wake on
successful sending of the WoL packet.
pvenode finally displays this MAC address to the user as feedback.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2019-01-22 12:05:47 +01:00
Christian Ebner
10a3cb09b8 pvenode: Add CLI call interface for wake on LAN
Adds a CLI call interface to pvenode which allows to wake sleeping nodes in a
cluster via a wake on LAN packet.

pvenode wakeonlan <node>

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2019-01-18 08:55:44 +01:00
Christian Ebner
0abe2e035e Fix #1982: pvesh: check if a handler exists for path
Checks that the handler for the API call even exists before verifying the
parameter schema. By this the reported error message is more descriptive.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2019-01-15 18:57:49 +01:00
Dominik Csapak
98fe93ae25 ceph: move Monitor API calls to API2/Ceph/MON.pm
and adapt the paths

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-12-20 09:44:01 +01:00
Dominik Csapak
4fec2764f1 ceph: move MGR API calls to API2/Ceph/MGR.pm
and adapt the paths

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-12-20 09:44:01 +01:00
Dominik Csapak
79fa41a2b8 ceph: move API2::CephOSD to API2::Ceph::OSD
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-12-20 09:44:01 +01:00
Dominik Csapak
6fb08cb923 ceph: move CephTools into Ceph/Tools.pm
It makes more sense to have it there, especially since we want to
split out the service parts into a seperate file.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-12-20 09:44:01 +01:00
Thomas Lamprecht
761f162bff pveceph: ensure ceph-fuse gets uptdated when installing ceph server
as we depend on ceph-fuse elsewhere (pve-storage) this gets installed
from Debians repositories with the Ceph 10 version.
So ensure that an up to date version, from our current supported Ceph
release, gets installed when doing `pveceph install` else you may
fall into certain issues which would have been already resolved with
a newer version.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-27 15:24:08 +01:00
Thomas Lamprecht
f16bb531ed pveceph: mds destroy: fixup parameter s/id/name/
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-26 17:11:37 +01:00
Thomas Lamprecht
6f35f0ced1 pveceph: also install ceph-mds for hyper converged install
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-23 15:11:03 +01:00
Thomas Lamprecht
8c4767828b pveceph: move to sub commands
add aliases for the existing ones, ignore the ones for MDS and
CephFS, they did never hit any repo.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-23 13:33:12 +01:00
Thomas Lamprecht
7e1a9d25b6 ceph: add CephFS create and list API
Allow to create a new CephFS instance and allow to list them.

As deletion requires coordination between the active MDS and all
standby MDS next in line this needs a bit more work. One could mark
the MDS cluster down and stop the active, that should work but as
destroying is quite a sensible operation, in production not often
needed I deemed it better to document this only, and leaving API
endpoints for this to the future.

For index/list I slightly transform the result of an RADOS `fs ls`
monitor command, this would allow relative easy display of a CephFS
and it's backing metadata and data pools in a GUI.

While for now it's not enabled by default and marked as experimental,
this API is designed to host multiple CephFS instances - we may not
need this at all, but I did not want to limit us early. And anybody
liking to experiment can use it after the respective ceph.conf
settings.

When encountering errors try to rollback. As we verified at the
beginning that we did not reused pools, destroy the ones which we
created.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Co-authored-by: Alwin Antreich <a.antreich@proxmox.com>
2018-11-23 13:33:12 +01:00
Thomas Lamprecht
b82649cc52 ceph: add MDS create/delete/list API
Allow to create, list and destroy and Ceph Metadata Server (MDS) over
the API and the CLI `pveceph` tool.

Besides setting up the local systemd service template and the MDS
data directory we also add a reference to the MDS in the ceph.conf
We note the backing host (node) from the respective MDS and set up a
'mds standby for name' = 'pve' so that the PVE created ones are a
single group. If we decide to add integration for rank/path specific
MDS (possible useful for CephFS with quite a bit of load) then this
may help as a starting point.

On create, check early if a reference already exists in ceph.conf and
abort in that case. If we only see existing data directories later
on we abort but do not remove them, they could well be from an older
manual create - where it's possible dangerous to just remove it. Let
the user handle it themself in that case.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Co-authored-by: Alwin Antreich <a.antreich@proxmox.com>
2018-11-23 13:33:12 +01:00
Dietmar Maurer
ddc9c56c4d pvesh: fix bug #1942 - add standard options conditional
Do not add/extract standard options if the method itself defined properties
using the same names (like 'quiet').

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
2018-10-16 11:41:26 +02:00
Dietmar Maurer
ae7aa09d60 pveam update: add empty properties definition
To avoid warnings about undef value in RESTHandler.
2018-08-07 11:31:20 +02:00
Dietmar Maurer
3c8c1f1da7 correctly install PVE/CLI/pvesh.pm 2018-07-27 07:46:35 +02:00
Dietmar Maurer
4d3822cc75 pvesh: add standard_output_properties to set/create/delete
Most of those API calls return simple strings, so it does not really matter.
Nethertheless, some calls return complex data structures and we want to set
output format for them.
2018-07-27 07:34:49 +02:00
Dietmar Maurer
ece19ae214 pvesh cleanup: use a handler class - PVE/CLI/pvesh.pm 2018-07-26 15:20:15 +02:00
Dietmar Maurer
b493a64d87 pvenode: remove useless call to query_terminal_options 2018-07-26 13:12:58 +02:00
Dietmar Maurer
7fa666d299 pvenode: use print_api_result to print acme account information 2018-07-26 13:09:08 +02:00
Dietmar Maurer
a308d1ef2e pvenode: use print_api_result to print certificate information 2018-07-26 13:09:08 +02:00
Dietmar Maurer
07e8a1b539 pvenode: fixup output formatting 2018-07-26 13:09:08 +02:00
Dietmar Maurer
de96ba1ec1 pvenode: fix print_api_result usage, avoid print_api_list
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
2018-07-11 07:42:20 +02:00
Thomas Lamprecht
ae5f985816 pvenode: use new CLIFormatter options
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-10 14:37:48 +02:00
Dominik Csapak
5d68448296 add task list/log/status to pvenode
and use the newly created print_api_* helpers for this

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-06-29 10:31:23 +02:00
Dominik Csapak
667f0037df add star/stop/migrateall commands to pvenode
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-06-27 10:52:10 +02:00
Fabian Grünbichler
1a9df9c828 add pvenode CLIHandler
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Wolfgang Link
64d39c2ef2 Send an email when a replication job fails.
A email notification will be send for each job when the job fails.
This message will only send when an error occurs and the fail count is on 1.

Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Acked-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2017-12-13 14:51:07 +01:00
Alwin Antreich
180d612bfa Add %-used and min_size to "pveceph lspools" command
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2017-10-31 08:21:32 +01:00
Dominik Csapak
ca68ac3efd pveceph: add createmgr/destroymgr commands
this patch adds the create-/destroymgr commands to the api and pveceph,
so that advanced users can split monitor and manager daemons

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-07-26 14:45:07 +02:00
Wolfgang Bumiller
9cf3e44912 ceph: end ceph.list with a newline 2017-07-20 09:32:28 +02:00
Thomas Lamprecht
ca7d070799 pvesr: allow schedule now from CLI
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-06-29 17:44:35 +02:00
Thomas Lamprecht
0cfec28cd8 pvesr status: handle disabled jobs
As the nodes replication status call also returns disabled jobs now,
we need to handle them here too.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-06-29 11:50:15 +02:00
Emmanuel Kasper
0b142737f7 Better Status description for jobs which are about to be run 2017-06-22 09:52:48 +02:00
Wolfgang Link
fdc8b76982 pvesr set_state 2017-06-12 11:40:15 +02:00
Dietmar Maurer
810c6776d9 PVE::Replication - remove dependency to PVE::LXC/PVE::QemuServer
So that we can move the whole class to package pve-guest-common.
2017-06-12 05:59:51 +02:00
Fabian Grünbichler
544bb4e2a0 pvesr: prepare_local_job: fixup
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-06-08 11:53:30 +02:00
Fabian Grünbichler
d8cd8e8cf9 pvesr: prepare_local_job: use PVE::replication::prepare
to reduce code duplication. this slightly changes behaviour
compared to the previous version:

only disks with the correct prefix are cleaned up, not all
disks with __replication* snapshots.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-06-08 11:13:47 +02:00
Wolfgang Link
37efc934a7 Fix: list_images returns now a array of hashes so adopt the code. 2017-06-08 10:29:11 +02:00