Commit Graph

95 Commits

Author SHA1 Message Date
Dominik Csapak
6befdf6834 make ssh connection transparent
do not use an escape character for the host shell

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-17 10:37:43 +01:00
Fabian Grünbichler
c2e5b9384e fix start on boot
fix the fix for #1024

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
(cherry picked from commit e7fe107f75ee1bb9877b0d6430489661d6c1beea)
2017-09-08 11:34:19 +02:00
Thomas Lamprecht
f92f0a357a remove backup locks when starting all VMs on boot
If on bootup one of our VMs is locked by an backup we safely can
assume that this backup job does not run anymore and that the lock
has no reason anymore and just hinders uptime of services.

As at this time we (the node) have quorum so we may safely assume
that we have a consistent view of the cluster and all our VMs really
belong to us. We just need to ensure that we do not run into an
automatic backup jobs, so execute our code with VZDumps lock or
timeout.
Log in the Task and Sys log that we removed the lock, so that an
admin easily sees that there may be need for cleaning leftovers from
an interrupted backup.

Addresses bug #1024

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
(cherry picked from commit 248b2d361407d07b6d41138ab2912b6a0e66ae6d)
2017-09-08 11:34:10 +02:00
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
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
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
Dietmar Maurer
3947d0a069 startall: remove timeout, wait forever 2016-09-09 10:31:21 +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
Caspar Smit
d6c493923a Fixed a small typo
Signed-off-by: Caspar Smit <casparsmit@supernas.eu>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-03-31 10:56:49 +02:00
Caspar Smit
92c11ee1ca Allow migrate-all button on HA enabled VMs
Signed-off-by: Caspar Smit <casparsmit@supernas.eu>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-03-31 10:56:22 +02:00
Caspar Smit
6677f6402e Skip templates when using the start all VMs button
Refactored and now using PVE::QemuConfig and PVE::LXC::Config
Moved the next if.. statements into the corresponding branches

Signed-off-by: Caspar Smit <casparsmit@supernas.eu>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-03-31 10:51:11 +02:00
Caspar Smit
17e3b3b27f Allow non-root to use start/stop/migrate all buttons
Signed-off-by: Caspar Smit <casparsmit@supernas.eu>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-03-31 10:50:34 +02:00
Fabian Grünbichler
bbcfdc08cc use PVE::Storage::config(), not cfs_read_file() 2016-03-30 10:35:58 +02:00
Fabian Grünbichler
7141ae254a Use methods from PVE::QemuConfig
use config_file and load_config from PVE::QemuConfig
2016-03-08 11:53:33 +01:00
Fabian Grünbichler
e93408d600 LXC refactoring
call load_config in PVE::LXC::Config instead of PVE::LXC
2016-03-03 10:44:02 +01:00
Thomas Lamprecht
01b753b6b1 syslog: allow since/until parameters
allow the since/until parameters which journalctl understands
We use a really simple regex to check a valit date (time) stamp.

This can be done as this API call gets mainly used by the GUI where
we have full controll over what we send and additional journalctl
has already a good timestamp parser which can handle that.
2016-03-02 06:24:55 +01:00
Dietmar Maurer
05b252dc5c PVE::API2::Nodes::Nodeinfo: import raise_param_exc 2016-03-01 09:22:39 +01:00
Wolfgang Link
82282acf4f add pveam download
With this function you can download templates from the repositories.
2016-02-26 11:37:11 +01:00
Thomas Lamprecht
89ceb8026a use max_workers from datacenter.cfg for stopall/migrateall
If set limit the maximal worker count to the new datacenter.cfg
setting 'max_workers'.

For stopall we prefer this over the cpu count if it's set.

For migrateall we prefer the parameter but allow now to ommit
the parameter and then we use the new setting if set.
if both are not set we throw an error.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-02-11 11:13:55 +01:00
Thomas Lamprecht
10a9a736ed fix PVE::HA use clause so HA resources get registered
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-01-27 17:11:21 +01:00
Wolfgang Bumiller
675946f221 fix #871: netstat: include veth devices
Include container's veth devices in /nodes/{node}/netstat
2016-01-25 10:59:48 +01:00
Dietmar Maurer
37bec89547 improve log messages at sytem shutdown 2016-01-22 11:24:17 +01:00
Thomas Lamprecht
efedd8c36f make startall wait up to 60 seconds for quorum
Previously we waited 10 seconds, in PVE 4 system sometimes need more
time to initialize all services so the didn't execute the startall
command even if a few seconds later cfs quorum was etablished.
This is a background process started from the pve-manager init
script, thus waiting doesn't interferes with other processes, so
wait long enough.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2015-11-10 07:48:20 +01:00
Emmanuel Kasper
6bbdf981d1 Use protected mode to be able to execute root system commands
Signed-off-by: Emmanuel Kasper <e.kasper@proxmox.com>
2015-11-06 10:06:11 +01:00
Dietmar Maurer
cdb5a20942 report: change return type to string 2015-11-03 18:14:51 +01:00
Emmanuel Kasper
34ada77a13 Add REST endpoint for /report call 2015-11-03 18:10:44 +01:00
Thomas Lamprecht
3625a09137 Fix check if vm is ha managed in get_start_stop_list
The check used was completely wrong and so the startall and stopall
API calls touched HA managed service, which they shouldn't.

Using the vm_is_ha_managed call from the HA stack fixes that.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2015-10-20 09:50:00 +02:00
Thomas Lamprecht
04b2004b36 fix lxc config key in get_start_stop_list sub
When adding the new LXC config format we forgot to adapt the
get_start_stop_list and do s/pve.startup/onboot/

This fixes that qemu VMs were started always before LXC CTs,
irregardless of the defined order.

This also let's us simplify the surrounding code and reduce code
reuse.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2015-10-20 09:46:16 +02:00
Wolfgang Bumiller
7a9486a7e1 DNS ui/api: ipv6 support 2015-10-05 12:33:42 +02:00
Emmanuel Kasper
eb5d01365b Rename onboot and startup parameters to follow vm.conf synthax
This fixes the problem of containers not autostarting with onboot=1
2015-09-08 11:13:32 +02:00
Dietmar Maurer
b38516ebec add use clause for PVE::API2::LXC::Status 2015-09-07 11:01:03 +02:00
Emmanuel Kasper
1b5e56f283 Fix package path to startup and shutdown subroutines 2015-09-07 10:58:12 +02:00
Thomas Lamprecht
c2dbc5e32d fix bug #662: wrong subroutine for parsing startup order
Changed from old, now missing, subroutine parse_startup() to new
pve_parse_startup_order()

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2015-07-28 09:31:09 +02:00
Dietmar Maurer
761a2b311c allow to download templates with type lxc 2015-07-02 11:25:08 +02:00
Dietmar Maurer
317146196c API change: remove bootlog API, use new dump_journal helper for syslog
The systemd journal contains boot log entries.
2015-06-09 12:18:30 +02:00
Dietmar Maurer
74e3975e12 remove UBC GUI 2015-06-02 11:53:19 +02:00
Wolfgang Bumiller
eb6d749792 pass port family to next_vnc_port 2015-05-12 12:16:26 +02:00
Dietmar Maurer
2c27e4b7c7 lxc: implement startup and onboot option 2015-04-22 10:49:30 +02:00
Dietmar Maurer
989b774393 depend on new pve-container package, activate LXC API 2015-04-18 09:40:44 +02:00
Dietmar Maurer
0532bd2857 re-add template download code
this was removed by accident.
2015-04-16 07:58:50 +02:00
Dietmar Maurer
dafb62468e remove OpenVZ related code
There is still no OpenVZ for kernel 3.10 or newer, so we remove that code now.
2015-03-27 13:43:59 +01:00