]>
git.proxmox.com Git - pve-storage.git/log
Dietmar Maurer [Thu, 9 Aug 2018 07:29:10 +0000 (09:29 +0200)]
cleanup return property descriptions
Dietmar Maurer [Thu, 9 Aug 2018 06:53:24 +0000 (08:53 +0200)]
PVE::API2::Storage::Content::index - document return values
Dominik Csapak [Wed, 8 Aug 2018 08:20:09 +0000 (10:20 +0200)]
add return description for zfs detail api call
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 8 Aug 2018 08:20:08 +0000 (10:20 +0200)]
refactor diskmanagement lock_file calls
so that we only have one place where we reference the lockfile
and the timeout
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 8 Aug 2018 08:20:07 +0000 (10:20 +0200)]
add 'single' raidlevel for zfs
the syntax for creating a pool with a single disk is
not the same as for mirror, so let the user select it
explicitely
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 8 Aug 2018 08:20:06 +0000 (10:20 +0200)]
rename raidlvl to raidlevel
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 8 Aug 2018 08:20:05 +0000 (10:20 +0200)]
fix descriptions of api calls
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 8 Aug 2018 06:22:27 +0000 (08:22 +0200)]
cleanup descriptions
Dietmar Maurer [Wed, 8 Aug 2018 06:21:06 +0000 (08:21 +0200)]
fix schema - 'string-list' is a format, not a type
Dominik Csapak [Tue, 7 Aug 2018 14:51:09 +0000 (16:51 +0200)]
add API for ZFS management
a list, a detail and a create api call
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Tue, 7 Aug 2018 14:51:08 +0000 (16:51 +0200)]
rename lvmcreate to lvmthincreate for lvm thin
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Tue, 7 Aug 2018 11:08:05 +0000 (13:08 +0200)]
PVE::API2::Storage::Status::index - document return schema properties
And add property "used_fraction" - I want to use that for the CLI tool.
Stoiko Ivanov [Mon, 6 Aug 2018 14:01:15 +0000 (16:01 +0200)]
Fix #1858: lvm_find_free_diskname check for base
lvm_find_free_diskname only checked for existing volumes starting with 'vm-',
and not with 'base-'.
Unify implementation with other Plugins.
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Thomas Lamprecht [Thu, 2 Aug 2018 12:43:27 +0000 (14:43 +0200)]
LIO: followup: various small cleanups
move two loop bodies from
if (condition) {
...
}
too
next if !condition;
...
to save an indentation level
rename variables to a bit shorter version, i.e.:
s/oneTarget/target/
s/oneTpg/tpg/
and a comment rewording
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 2 Aug 2018 12:41:37 +0000 (14:41 +0200)]
LIO: followup: shorter stderr/out logging
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 2 Aug 2018 12:39:55 +0000 (14:39 +0200)]
LIO: followup: fix indentation
Thomas Lamprecht [Thu, 2 Aug 2018 07:37:00 +0000 (09:37 +0200)]
LIO: followup: remove trailing whitespaces
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Udo Rader [Thu, 26 Jul 2018 21:26:27 +0000 (23:26 +0200)]
Linux LIO/targetcli support
Introducing LIO/targetcli support allowing to use recent linux
distributions as iSCSI targets for ZFS volumes.
In order for this to work, two preconditions have to be met:
1. the portal has to be set up correctly using targetcli
2. the initiator has to be authorized to connect to the target
based on the initiator's InitiatorName
When adding a LIO iSCSI target, a new "LIO target portal group" field needs
to be correctly populated in the "Add: ZFS over iSCSI" popup, containing the
fitting "LIO target portal group" name (typically something like 'tpg1').
Signed-Off-By: Udo Rader <udo.rader@bestsolution.at>
Tested-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Dietmar Maurer [Thu, 2 Aug 2018 11:28:04 +0000 (13:28 +0200)]
add missing dependency to pve-cluster
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Dietmar Maurer [Thu, 2 Aug 2018 10:44:30 +0000 (12:44 +0200)]
fix typo
Dominik Csapak [Mon, 30 Jul 2018 08:26:06 +0000 (10:26 +0200)]
add API for add Directory storage
creates/lists systemd mount units for /mnt/pve/.*
filetypes allowed are ext4 and xfs for now
mount with /dev/disk/by-uuid
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Thu, 2 Aug 2018 09:39:35 +0000 (11:39 +0200)]
cleanup: do not convert exceptions to strings.
Dominik Csapak [Mon, 30 Jul 2018 08:26:05 +0000 (10:26 +0200)]
add API for LVMThin management
like the LVM API, but return an array for the list,
because we do not have nested data here
and create a vg and thin lv with the name given and use the full size
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 30 Jul 2018 08:26:03 +0000 (10:26 +0200)]
add metadata_size and _used to lv list
so that we can show it in the webinterface and the user can check
how full it is
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 30 Jul 2018 08:26:02 +0000 (10:26 +0200)]
extend list_thinpools for multiple vgs and more information
if no vg is given, give back all thinpools from all vgs
if verbose is 1, then give back the information about the thinpools
(like size and free)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 30 Jul 2018 08:26:01 +0000 (10:26 +0200)]
add type and skipsmart to /nodes/NODE/disks/list
so that we can use it for a generic disk selector
this mirrors the functionality we have in
/nodes/NODE/ceph/disks api call (which we can deprecate then)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 30 Jul 2018 08:26:00 +0000 (10:26 +0200)]
add API for LVM management
currently only list and create,
the list is in a format so that we can use it in an extjs tree
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 30 Jul 2018 08:25:59 +0000 (10:25 +0200)]
add an option to include pvs in lvm_vgs
this will be used for the lvm part of the disk management
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 23 Jul 2018 13:10:06 +0000 (15:10 +0200)]
skip zfs tests when not building with root
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Thomas Lamprecht [Wed, 11 Jul 2018 10:11:40 +0000 (12:11 +0200)]
remove unused Data::Dumper usages
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 4 Jul 2018 15:05:26 +0000 (17:05 +0200)]
bump version to 5.0-24
Thomas Lamprecht [Wed, 4 Jul 2018 14:56:24 +0000 (16:56 +0200)]
cephtools: simplify ceph_check_keyfile
Thomas Lamprecht [Wed, 4 Jul 2018 13:07:33 +0000 (15:07 +0200)]
cephfs plugin: followup with some code cleanups
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Alwin Antreich [Wed, 4 Jul 2018 10:43:32 +0000 (12:43 +0200)]
Use keyfile create/remove from CephTools
in the RBDPlugin, that is also shared by the CephFSPlugin
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Alwin Antreich [Wed, 4 Jul 2018 10:43:31 +0000 (12:43 +0200)]
Cephfs storage plugin
- ability to mount through kernel and fuse client
- allow mount options
- get MONs from ceph config if not in storage.cfg
- allow the use of ceph config with fuse client
- Delete secret on cephfs storage creation
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Alwin Antreich [Wed, 4 Jul 2018 10:43:30 +0000 (12:43 +0200)]
Add simple keyring check for cephfs/rbd
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Alwin Antreich [Wed, 4 Jul 2018 10:43:28 +0000 (12:43 +0200)]
Merge RBD and CephFS code into a helper module
Some methods for connecting to a ceph cluster are the same for RBD and
CephFS, these are merged into the helper modules.
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Thomas Lamprecht [Mon, 2 Jul 2018 13:54:48 +0000 (15:54 +0200)]
api add: remove now uneeded $cred_file variable
was used for cleanup, which is now handled by on_delete_hook
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 2 Jul 2018 13:54:47 +0000 (15:54 +0200)]
lvm: use add hook
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 2 Jul 2018 13:54:46 +0000 (15:54 +0200)]
rbd: use add/delete hooks
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 2 Jul 2018 13:54:45 +0000 (15:54 +0200)]
cifs: use add/delete hooks
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 2 Jul 2018 13:54:44 +0000 (15:54 +0200)]
add on_add and on_delete hooks
on_add_hook allows to encapsulate storage specific add steps, like
copying a keyring (RDB) or creating a volume group (LVM) in a clean
manner.
The same for deletion with on_delete_hook, here all should be cleaned
up, as much as possible.
Until now, this was done directly in the api config CREATE and DELETE
code, respectively, with a series of
if ($storage_type eq 'foo) {
...
} elsif ($storage_type eq 'bar') {
...
}
which isn't really that nice...
Another nice result of this approach is that also external plugins
can use those hooks and to their setup/cleanup steps sanely.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 29 Jun 2018 11:16:10 +0000 (13:16 +0200)]
storage add: always extract password from parameters
as else we write it to /etc/pve/storage.cfg which is readable by
www-data, a not really private group...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 29 Jun 2018 11:15:26 +0000 (13:15 +0200)]
add cifs: fix variable declaration in post if
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 27 Jun 2018 11:24:31 +0000 (13:24 +0200)]
d/control: update pve-common version dependency
as we use the new param_mapping functionallity from PVE::CLIHandler
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Fri, 15 Jun 2018 13:28:48 +0000 (15:28 +0200)]
replace read_password with param_mapping
we only need this for cifs as this is the only type
of storage where we expect a password
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Fri, 22 Jun 2018 05:52:51 +0000 (07:52 +0200)]
PVE/API2/Storage/Config.pm - set type in returns schema
Wolfgang Link [Wed, 13 Jun 2018 11:21:29 +0000 (13:21 +0200)]
CIFS: add mkdir option allowing to switch off path creation
see commit:
c7616abcb278e2b888febc082b557f60676fc376
Alwin Antreich [Mon, 11 Jun 2018 09:31:27 +0000 (11:31 +0200)]
Add missing dependency to ceph-common
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Thomas Lamprecht [Wed, 6 Jun 2018 13:38:22 +0000 (15:38 +0200)]
followup: fix typo
Wolfgang Link [Wed, 6 Jun 2018 11:23:29 +0000 (13:23 +0200)]
Use enums for smbvers to prevent incorrect input
Wolfgang Link [Wed, 16 May 2018 11:46:42 +0000 (13:46 +0200)]
Make check_connection less costly.
This command will only check the needed share
and do not query the hole server shares.
This reduce the answer time and also has the benefit we check the
credentials on this share and not on the server.
Wolfgang Link [Fri, 18 May 2018 12:16:20 +0000 (14:16 +0200)]
fix #1770: allow ex/import linked clones.
We encode the base-volume-name in the volname what is not needed.
On ex/import we need the correct dataset name.
Fabian Grünbichler [Wed, 16 May 2018 08:09:37 +0000 (10:09 +0200)]
build: use git rev-parse for GITVERSION
Fabian Grünbichler [Wed, 16 May 2018 08:06:40 +0000 (10:06 +0200)]
bump version to 5.0-23
Wolfgang Link [Wed, 16 May 2018 07:08:06 +0000 (09:08 +0200)]
cifs: fix uninitialized warning in check_connection
otherwise this spams the log when check_connection runs into a timeout.
Wolfgang Bumiller [Mon, 14 May 2018 12:50:08 +0000 (14:50 +0200)]
bump version to 5.0-22
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 14 May 2018 06:35:22 +0000 (08:35 +0200)]
whitespace fixup
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Link [Mon, 14 May 2018 05:23:40 +0000 (07:23 +0200)]
Fix typo.
Wolfgang Link [Mon, 14 May 2018 05:23:39 +0000 (07:23 +0200)]
Simplify image/template upload check.
All storage's witch are able to store images must have a path.
Fabian Grünbichler [Tue, 8 May 2018 09:51:52 +0000 (11:51 +0200)]
bump version to 5.0-21
Fabian Grünbichler [Tue, 8 May 2018 07:28:56 +0000 (09:28 +0200)]
fix #1754: rbd: fix handling of external clusters
with the recent refactoring, external clusters were not handled
correctly with librd if a pveceph or storage specific ceph config
exists.
change the behaviour to include the pveceph config file only for pveceph
managed clusters, and a storage specific one only for external ones.
set mon_host correctly using the values from storage.cfg for external
librbd clusters.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Thomas Lamprecht [Tue, 8 May 2018 07:34:34 +0000 (09:34 +0200)]
fixup error message typo: s/sould/should/
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Wolfgang Link [Thu, 19 Apr 2018 06:39:51 +0000 (08:39 +0200)]
fix #1691: increase timeout in worker
A ZFS storage under heavy load can take more time.
Wolfgang Link [Thu, 19 Apr 2018 06:39:50 +0000 (08:39 +0200)]
fix #1691: replace udev check
`zfs create` add the creation job in a worker queue,
which should normally execute instantly. But there are circumstances
where the job will take a while to get processed.
If this is the case udev settle will see no dev in the queue and the program
will continue without an allocated dev.
The busy waiting is not best practice but the only way to be sure,
that the block device exists.
Thomas Lamprecht [Fri, 4 May 2018 13:33:53 +0000 (15:33 +0200)]
bump version to 5.0-20
Alwin Antreich [Fri, 4 May 2018 12:03:47 +0000 (14:03 +0200)]
Fix #1750: set monhost split to old behavior
The path method of the RBDPlugin got a list with comma separated monhosts,
but it needs the list with semi-colon for qemu.
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Dietmar Maurer [Wed, 18 Apr 2018 08:46:46 +0000 (10:46 +0200)]
bump version to 5.0-19
Alwin Antreich [Fri, 13 Apr 2018 12:28:32 +0000 (14:28 +0200)]
Refactor of method build_cmd and path
Method build_cmd and path use similar code to generate the ceph command
line or qemu config parameters. They now use the private method
ceph_connect_option for parameter generation.
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Alwin Antreich [Fri, 13 Apr 2018 12:28:31 +0000 (14:28 +0200)]
Fix #1542: show storage utilization per pool
- get storage utilization per pool
- use librados2-perl for pool status
- add librados2-perl as build-depends and depends in debian/control
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Thomas Lamprecht [Thu, 22 Mar 2018 08:06:47 +0000 (09:06 +0100)]
bump version to 5.0-18
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Fri, 16 Mar 2018 12:23:47 +0000 (13:23 +0100)]
cifs: use correct pluging class name
Dietmar Maurer [Fri, 16 Mar 2018 12:07:05 +0000 (13:07 +0100)]
cifs: move plugin related code into plugin
Dietmar Maurer [Fri, 16 Mar 2018 11:54:06 +0000 (12:54 +0100)]
add missing "use PVE::Storage::LVMPlugin;"
Dietmar Maurer [Fri, 16 Mar 2018 11:35:55 +0000 (12:35 +0100)]
cifs plugin cleanups
Dietmar Maurer [Fri, 16 Mar 2018 11:09:37 +0000 (12:09 +0100)]
remove useless "use PVE::PTY;"
Wolfgang Link [Fri, 16 Mar 2018 09:22:59 +0000 (10:22 +0100)]
Add read_password in CLI.
Wolfgang Link [Fri, 16 Mar 2018 09:22:58 +0000 (10:22 +0100)]
Add cifsscan to CLI
Wolfgang Link [Fri, 16 Mar 2018 09:22:57 +0000 (10:22 +0100)]
Add cifsscan to API
Wolfgang Link [Fri, 16 Mar 2018 09:22:56 +0000 (10:22 +0100)]
Add cifsscan.
Wolfgang Link [Fri, 16 Mar 2018 09:22:55 +0000 (10:22 +0100)]
Register CIFSPlugin in the storage plugin system.
Wolfgang Link [Fri, 16 Mar 2018 09:22:54 +0000 (10:22 +0100)]
Add CIFS dependencies in package management.
Wolfgang Link [Fri, 16 Mar 2018 09:22:53 +0000 (10:22 +0100)]
Add remove cifs in API call.
Wolfgang Link [Fri, 16 Mar 2018 09:22:52 +0000 (10:22 +0100)]
Add cifs in create API call.
In this patch the nodes will be deleted if the nodes parameter comes with a empty string.
We need this in the GUI when update the nodes in the config to reset if a nodes.
If we do not erase the empty hash the storage online check would be skipped.
Also the password and user would not be verified.
Wolfgang Link [Fri, 16 Mar 2018 09:22:51 +0000 (10:22 +0100)]
Add set CIFS credentials.
Wolfgang Link [Fri, 16 Mar 2018 09:22:50 +0000 (10:22 +0100)]
Add CIFS Storage Plugin.
This Plugin use as template the NFSpluigin.
We do only support smbversion 2 and 3.
Version 3 is default and must override through the config.
Wolfgang Link [Tue, 13 Mar 2018 14:11:01 +0000 (15:11 +0100)]
Remove pool with -f parameter.
The test pool will not removed if we do not force it.
Wolfgang Bumiller [Fri, 9 Feb 2018 08:35:59 +0000 (09:35 +0100)]
bwlimit: apply limits when there's no override
Before, 'undef' was equivalent to unlimited, but '0' is the
"explicitly unlimited" value, so if the user doesn't request
an override, apply limits as if the user was unprivileged
(otherwise there's no way for privileged users to explicitly
ask to not override the configured limits).
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Alwin Antreich [Fri, 2 Mar 2018 11:03:47 +0000 (12:03 +0100)]
Fix typo in sub s/krdb_feature_disable/krbd_feature_disable
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Alwin Antreich [Fri, 2 Mar 2018 11:03:46 +0000 (12:03 +0100)]
Fix #1574: could not disable krbd-incompatible image features
To prevent an error when disabling features of a rbd image with already
disabled flags. This aborted the CT/VM cloning halfway through with
a leftover rbd image, but no vmid.conf to it.
Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
Fabian Grünbichler [Mon, 19 Feb 2018 12:45:33 +0000 (13:45 +0100)]
d/control: bump dependency on libpve-common-perl
for 'bwlimit' option in storage.cfg
Wolfgang Bumiller [Tue, 30 Jan 2018 10:46:19 +0000 (11:46 +0100)]
add Storage::get_bandwidth_limit helper
Takes an operation, an optional requested bandwidth
limit override, and a list of storages involved in the
operation and lowers the requested bandwidth against global
and storage-specific limits unless the user has permissions
to change those.
This means:
* Global limits apply to all users without Sys.Modify on /
(as they can change datacenter.cfg options via the API).
* Storage specific limits apply to users without
Datastore.Allocate access on /storage/X for any involved
storage X.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 29 Nov 2017 10:35:17 +0000 (11:35 +0100)]
bump version to 5.0-17
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Fabian Grünbichler [Tue, 14 Nov 2017 12:22:23 +0000 (13:22 +0100)]
add missing b-d on Test::MockModule
Dominik Csapak [Fri, 10 Nov 2017 13:49:19 +0000 (14:49 +0100)]
whitespace cleanup
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 10 Nov 2017 13:49:18 +0000 (14:49 +0100)]
add 'format' parameter to storage list call
we will use this for the gui to figure out if we have to show
a size selector, a file selector, which formats are there, etc.
we have to include this data even for not active storages, else
we cannot show the correct fields
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 10 Nov 2017 13:49:17 +0000 (14:49 +0100)]
add select_existing to plugindata for iscsi(direct)
this will be used in the gui, for determining if we need to select
something from the storage when using for an image
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 8 Nov 2017 08:01:58 +0000 (09:01 +0100)]
(finally) fix #1099: return disklist correctly
in get_disks, when called with a parameter 'cciss/cXdY', we replaced
the '/' with '!' so that we can properly poll the information
about it from /sys/block/
but we have to replace the '!' with '/' again in our result list,
because the caller does not know anything about it and fails, because
the original dev is not in the list
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Fabian Grünbichler [Tue, 17 Oct 2017 13:02:36 +0000 (15:02 +0200)]
bump version to 5.0-16
Wolfgang Link [Tue, 10 Oct 2017 07:43:52 +0000 (09:43 +0200)]
Add logfung in storage_migrate
The log function is used by storage replication to redirect the output in the correct log.