Commit Graph

359 Commits

Author SHA1 Message Date
Thomas Lamprecht
2edea01c78 get_filtered_vmlist: save VM conf in own subhash
small refactoring in get_filtered_vmlist: save a VMs config in its
own subhash to avoid collisions with other data which we want to save
in the vmid list, for now this is only `type` but in the next patch
I want to save also the class

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
(cherry picked from commit 627fa10467a1578c5a3c7d2a292bbe6f14a881ca)
2017-09-08 11:34:02 +02:00
Dominik Csapak
ff57d36977 fix creating the first ceph monitor
we cannot use a rados connection before having at least one monitor,
so we have to move it down

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
(backported from commit 738ce0f235daf46aecedab3e33147d871d3959fa)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-08-21 10:27:02 +02:00
Dominik Csapak
a898d93362 add missing '-' to service name pattern
since ids can contain '-', we have to include them in the pattern
for the service names

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
(cherry picked from commit 38e20dad713db1024eb91fb9a1becd07f9c940df)
2017-08-21 10:23:06 +02:00
Alwin Antreich
588ea81cb8 check for ceph-mgr on destroymon
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2017-08-14 14:55:47 +02:00
Alwin Antreich
dd6b15f218 add check if ceph-mgr is installed
in API endpoints createmgr/destroymgr/createmon

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2017-08-14 11:10:38 +02:00
Dominik Csapak
100800ee37 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>
(cherry picked from commit ad9411c9480aa8f9b5fdbf677e0fb4a1e6997cb7)
2017-08-14 11:10:38 +02:00
Dominik Csapak
5e33f7cea8 pveceph: create mgr with mon, use nodename for id
we now want to add a ceph-mgr daemon to every node where a ceph-mon
daemon runs, as per ceph documentation recommendation, because in
luminous the mgr daemons will not be automatically created/started
with a monitor anymore

we also give the createmon an optional id parameter, so that one
can set a custom id, and make the creation/removal of the manager
optional but the default

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
(cherry picked from commit f77a087446390840846cd9300ce3dbe7f4bc7fd6)
2017-08-14 11:10:38 +02:00
Dominik Csapak
0c8d740228 fix diffstore issue with clusterlog
extjs cannot "convert" and id from other fields, so the ids in the
diffstore and the realstore are different and we re-add every element on
every update

to mitigate this, we generate the id (which is "uid:hostname") in the
backend, and simply use it in the frontend

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-03-10 11:09:46 +01:00
Dominik Csapak
e890b92d67 use login instead of bash
since bash does not play well with utf8 encoded input,
eg. pressing ALTGR + M on an english intl keyboard layout int novnc
does not enter the mu symbol but makes bash think you pressed alt+5,
we should use login without authorization when logging in as root

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-03-09 10:28:27 +01:00
Dominik Csapak
b0d4b407d8 keep locale for vncshell and spiceshell
use the new keeplocale parameter from run_command and do not delete the
LANG and LANGUAGE variable for the vncshell

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-03-09 10:26:44 +01:00
Thomas Lamprecht
f5c1dde5f4 migrateall: use get_filtered_vmlist
instead of using get_start_stop_list in a rather hacky way use the
new get_filtered_vmlist method and adapt the loop, as now only one
level is required.

most changes  are just an indent shift left as we lost an unnecessary
loop level

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-03-02 10:45:14 +01:00
Thomas Lamprecht
b72cdbb752 refactor get_start_stop_list
we used get_start_stop_list for assembling a list of VMIDs for
stopall, startall and migrateall.

While get_start_stop_list did already some filtering we did some
more in the specific startall and stopall calls.
Add a new private helper which does all the filtering and just
assemble the startup order in the get_start_stop_list method.

Move the template and ha managed filtering in the new
get_filtered_vmlist method, this allows us to remove the filtering
from the API calls them self and we do not load the vms config twice
(it was cached, but nonetheless unnecessary)

get_filtered_vmlist is also intended to be used by migrateall in a
next patch

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-03-02 10:43:37 +01:00
Dietmar Maurer
b0f820ab9f PVE/API2/Tasks.pm: corretly return true after loading 2017-01-31 08:13:17 +01:00
Wolfgang Bumiller
f70fc9ace9 REST/RPCEnvironment's check_worker is a method now 2017-01-27 10:39:02 +01:00
Dietmar Maurer
989f3c7ead use new PVE::Storage::check_volume_access() 2017-01-18 17:30:40 +01:00
Dietmar Maurer
b996e6c0ec use new libpve-http-server-perl package
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
2017-01-16 11:54:33 +01:00
Dietmar Maurer
617ca1c615 PVE/API2/Formatter/HTML.pm: avoid use of PVE::REST
Instead, pass the HTTP server as last argument to the page formater,
so that we can call $server->create_auth_cookie().

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
2017-01-12 11:53:18 +01:00
Dominik Csapak
2a498506e0 add vmid filter to (start/stop/migrate)all
this is a simple filter which allows us to limit the actions to specific
vmids

this makes it much simpler to start/stop/migrate a range of vms

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-01-05 15:55:59 +01:00
Wolfgang Link
ef3d095b55 Change remove partition order.
If we remove first the journal the data partition will automatically mounted
and can't destroy the partition.
This is trigger by the udev ceph rule.
2016-12-22 12:26:10 +01:00
Wolfgang Link
84aed461aa Fix parsing block device.
Get the partition num and block device from sysfs.
This ensure different block device types will work.
2016-12-22 12:25:45 +01:00
Wolfgang Link
19bada0c96 Enable service for ceph monitor.
We do not use the ceph.service what normally start ceph-mon,
so we have to ensure ceph-mon is enabled.
2016-12-22 11:57:50 +01:00
Wolfgang Link
3279b1d2d4 Set correct permission for ceph user.
We have to set the correct permission,
because ceph greater than infernalis use ceph as daemon user.
2016-12-22 11:51:19 +01:00
Dominik Csapak
a46ad02adb add ceph flags api calls
we add a get/post/delete api call for ceph flags

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-11-30 17:08:38 +01:00
Dominik Csapak
85c17d9673 also return the ceph flags in osd api call
we want to set/get the flags in the ceph/osd tab, so we have to
return it there

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-11-30 17:07:14 +01:00
Dietmar Maurer
ac04fb558b plug new ClusterConfig API at /cluster/config 2016-11-29 12:08:39 +01:00
Dietmar Maurer
b67dc872ac code cleanup: avoid use of PVE::HA::Env (not necessary) 2016-10-28 09:32:35 +02:00
Dominik Csapak
c6e94f4224 add hastate to /cluster/resources api call
this adds a hastate field to all vms/ct which have ha enabled

we will use this for showing the error state in the tree (in the webgui)
and for the cluster dashboard (to count the error state guests)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-28 09:22:37 +02:00
Fabian Grünbichler
f0bbc08419 restrict vzdump cron options
modeled after the VZDump API path, but since we are
restricted to Sys.Modify users already, we only need to
restrict these three options.
2016-10-17 10:36:06 +02:00
Dietmar Maurer
4ea55500a4 pveversion: add smartmontools 2016-10-14 08:59:24 +02:00
Dietmar Maurer
42e237c3c5 pveversion: add pve-docs package 2016-10-14 08:57:51 +02:00
Fabian Grünbichler
6d0507a87a vzdump: move restricted API parameters check
for better visibility and earlier error detection
2016-10-12 17:30:45 +02:00
Fabian Grünbichler
eb2d6fd390 vzdump: document restricted API parameters 2016-10-12 17:30:26 +02:00
Dominik Csapak
107e872ac7 use correct info on disks in destroyosd and skip smart
instead of using
'/dev/${real_dev}'

we use the devpath property directly

also we skip the smart check in the cleanup

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-06 08:27:46 +02:00
Dominik Csapak
929376d778 fix #1099: get correct info on disks in createosd
instead of getting all disks, only get the info
from the one we get as parameter
and use the 'devname' value for the
ceph commands instead of the parameter itself
(this fixes the cciss!cXdY cciss/cXdY mismatch)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-06 08:26:32 +02:00
Dominik Csapak
5fd5c30db7 do not get smart data for ceph disk list
on the ceph disks call, we do not need the smart
data, so set the nosmart flag

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-10-06 08:20:42 +02:00
Thomas Lamprecht
8f46103543 Makefile: fix distclean target
As some Makefiles in sub directories do not implement the distclean
target, namely:
PVE/Service/Makefile
PVE/CLI/Makefile

This target is broken.

As all other implementations just redirect to the 'clean' target I
do not implement the missing ones but rather remove all such
targets. Keep it just in the top level directory, for consistence
sake with other pve repos, and redirect it there directly to the
clean target.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-09-28 08:21:48 +02:00
Emmanuel Kasper
13a399c456 do not test for the cgmanager package in pveversion fix #1117
the package has been removed from the list of lxcfs dependencies
since 0.12-pve1
2016-09-21 16:16:52 +02:00
Dietmar Maurer
3947d0a069 startall: remove timeout, wait forever 2016-09-09 10:31:21 +02:00
Dominik Csapak
7f4924bd9b use the Diskmanage subs for ceph instead
the subs are now in PVE::Diskmanage, so use them

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-09-07 11:45:09 +02:00
Dominik Csapak
e781363f19 add disk api entry point
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-09-07 11:16:55 +02:00
Dominik Csapak
6f242111c3 fix #621: allow template download to glusterfs
removes the check for dir or nfs storage,
because a few lines below we check for
the content type vztmpl
which should only be allowed when we have a
location where we put templates, thus we should
be able to download them there

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-09-05 06:54:40 +02:00
Fabian Grünbichler
95f99e8c5e aplinfo: use explicit defined checks
a checksum of '0' can never be correct, but this makes the code clearer
2016-08-24 13:08:45 +02:00
Fabian Grünbichler
79be6db38a aplinfo: use fh for both digests
for consistency, because Digest::MD5 cannot handle filenames directly..
2016-08-24 13:08:22 +02:00
Fabian Grünbichler
62180d0f1d update descriptions, error messages 2016-08-24 10:18:27 +02:00
Fabian Grünbichler
3b81e495cd aplinfo: improve checksum handling
instead of calling md5sums, use perl's Digest::MD5.
also support SHA512 via perl's Digest::SHA, to enable a
transition away from MD5.
2016-08-24 10:09:12 +02:00
Fabian Grünbichler
c351eda952 aplinfo: replace system() with run_command/rename 2016-08-24 09:48:15 +02:00
Dominik Csapak
86506300af add novnc-pve to pveversion -v
it was missing

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-08-12 10:43:25 +02:00
Wolfgang Bumiller
c37f23f53b fix undefined value warning in resources api call
With the new calculation $pe->{maxcpu} was used before being
initialized to zero. Moving the initialization up.
Additionally setting $pe->{cpu} to $entry->{cpu} if maxcpu
is not set seems pointless as with its factor (maxcpu)
initialized to zero it is cancelled out anyway.
2016-07-07 08:15:15 +02:00
Dominik Csapak
ffe31eeacd fix #1030: calculate correct cpu usage of pools
we only added the % of the vms in a pool
which lead to wrong results
e.g. having a pool with 3 vms with 4 cores each and a
cpu usage of 50% each (2 cores at 100%)
lead to :

vm1	50%
vm2	50%
vm3	50%
pool	150%

instead we new calculate the percentage for the whole pool

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-07-01 11:10:37 +02:00
Dominik Csapak
76dc2ad016 fix #1043: prevent ceph destroypool when in use
also introduces a force parameter to this call
if force is true, the call destroys the ceph pool
even when it is use

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-06-30 13:47:36 +02:00