Commit Graph

141 Commits

Author SHA1 Message Date
Alexandre Derumier
1440604a4b rbd : rework pool - username - auth_supported options
pool is now optional, default value is 'rbd';
username is now optional, default value is 'admin';

auth_supported option is removed and is autodetected.
  auth = cephx if private key exist
  auth = none if private key does not exist

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-18 06:32:57 +01:00
Alexandre Derumier
5649ccfe89 has_feature : template
for plugin-rbd-sheepdog-nexenta

+ indentation fix

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-18 06:18:15 +01:00
Alexandre Derumier
2c5a70971a has_feature : fix key = snap
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-15 10:08:04 +01:00
Alexandre Derumier
0255ee5fda rbd : has_feature : copy
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-15 07:27:27 +01:00
Alexandre Derumier
1e7ae58194 rbd : has_feature : clone from base
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 11:10:51 +01:00
Alexandre Derumier
c78cb110e7 rbd : volume_snapshot_delete : parse_volname
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:47:27 +01:00
Alexandre Derumier
c6ce2cc8ec rbd : volume_snapshot_rollback : parse_volname
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:47:02 +01:00
Alexandre Derumier
9af33ed0b9 rbd : volume_snapshot : parse volname
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:46:38 +01:00
Alexandre Derumier
478fc06cd5 rbd: volume_resize : parse_volname
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:46:08 +01:00
Alexandre Derumier
81d1d01774 rbd: volume_size_info : parse_volname
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:45:51 +01:00
Alexandre Derumier
42d07b9ab3 rbd : free_image : unprotect snapshot is base
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:40:26 +01:00
Alexandre Derumier
5b9b9b1449 rbd: fix: move find_free_diskname + fix trailing whitespace
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:38:19 +01:00
Alexandre Derumier
f27082855d rbd : clone_image
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:37:16 +01:00
Alexandre Derumier
992e6835e2 rbd : create_base
- rename volume
- take snapshot '__base__'
- protect the snapshot

Fix: the volume_snapshot sub need a $running parameter,
to known if it need to use rbd command or qmp command to take the snapshot.
for now, I pass undef, as it should be always offline.

(But we need to verify somewhere that vm is not running,
because take a snapshot with rbd command on a running vm can break it.

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:35:55 +01:00
Alexandre Derumier
8b3ae5180b rbd : find_free_diskname
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 09:18:47 +01:00
Alexandre Derumier
ca1e168ad3 rbd : rbd_ls : parse base
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 08:58:49 +01:00
Alexandre Derumier
d04c7e55a8 rbd : parse_volname : parse base
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-02-14 08:52:22 +01:00
Dietmar Maurer
32437ed279 check base image use count inside vdisk_free
To make it work with all storage types.
2013-02-01 06:55:39 +01:00
Dietmar Maurer
5eab0272f0 add stubs for create_base and cone_image 2013-01-31 07:47:02 +01:00
Stefan Priebe
249cb64756 RBDPlugin: introduce rbd_unittobytes / rbd tends to be human readable
Signed-off-by: Stefan Priebe <s.priebe@profihost.ag>
2013-01-22 11:14:57 +01:00
Alexandre Derumier
166196ac10 create rbd volume with format v2
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-01-03 11:44:38 +01:00
Alexandre Derumier
7cb2889abb rbd: use rbd ls -l
avoid to call rbd info for each volume

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2013-01-03 11:44:24 +01:00
Alexandre Derumier
774f21b9ee rbd : has_feature
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-12-28 07:52:33 +01:00
Alexandre Derumier
62b98a65b5 rbd: retrieve parent of a clone
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-11-22 06:58:03 +01:00
Alexandre Derumier
c30470a35e rbd: purge snapshots before delete volume
we can't delete a rbd volume if snapshots exist

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-10-31 14:06:42 +01:00
Alexandre Derumier
e110213e71 rbd: get volume size for volumes list
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-10-17 10:30:41 +02:00
Alexandre Derumier
6958944439 rbd: add storage space stats
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-10-17 06:34:25 +02:00
Alexandre Derumier
cce29bcd6b rbd : add volume_snapshot_delete
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-09-06 10:37:30 +02:00
Alexandre Derumier
5a2b2e2f14 rbd: add volume_snapshot_rollback
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-09-06 10:37:08 +02:00
Alexandre Derumier
788dd8e182 rbd : add volume_snapshot
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-09-06 10:36:50 +02:00
Alexandre Derumier
35d6dfaf9e rbd: add nodes and disable options
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-08-20 13:06:36 +02:00
Alexandre Derumier
e7a42a764e rbd : volume_resize
resize disk with rbd command if vm is offline
otherwise we can use qmp block_resize if vm is online

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-08-07 08:09:14 +02:00
Alexandre Derumier
c95c307373 rbd : volume_size_info
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-08-06 06:10:10 +02:00
Alexandre Derumier
0002d9cc30 rbdplugin: volume_size_info
return nothing for now

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-07-27 10:45:18 +02:00
Dietmar Maurer
8c3abf126f re-add hack for empty pool
fresh created and empty rbd pool, throw a 500 error with "pool xxx doesn't contain rbd images" message.
2012-07-18 06:04:09 +02:00
Dietmar Maurer
411476cd32 cleanup rbd driver 2012-07-17 13:26:36 +02:00
Alexandre Derumier
d70e7f6c0d rbd : add owner attribute when rbs ls
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-06-19 06:42:35 +02:00
Alexandre Derumier
4e2d3bc8ea rbd : use keyring file instead keyfile
we need 1 keyring by rbd storage

/etc/pve/priv/ceph/storagename.keyring

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-06-18 13:44:56 +02:00
Alexandre Derumier
3e195ccccb rbd : rbd_ls: doesn't throw error if pool doesn't contain image
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-06-18 06:04:57 +02:00
Alexandre Derumier
e5427b0097 rados block plugin update
config file
-----------
rbd: rbdtest
        monhost 10.3.94.27:6789;10.3.94.28:6789;10.3.94.29:6789
        pool pool2
        username admin
        authsupported cephx;none
        content images

key for user admin must be specified in:
---------------------------------------
/etc/pve/priv/ceph/storeid.username.key

/etc/pve/priv/ceph/rbdtest.admin.key   for this exemple.

(so we can have multiple users key by storage and multiple storage with same username)

I change "sub path" in Storage.pm to pass $storeid as third argument.

I rename property id to username, to be more clear.

removal of rbd_ prefix.

removal of trailing whitespace

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-06-02 12:00:33 +02:00
Alexandre Derumier
0509010d6e Add rados block plugin storage
This add rados plugin storage.

We need rbd command from ceph repository (ceph-common package) to create/delete volumes,I didn't have add depends for the moment.

/etc/pve/storage.cfg sample config

rbd: rbdtest
        rbd_monhost 10.3.94.27:6789;10.3.94.28:6789;10.3.94.29:6789
        rbd_pool pool2
        rbd_id admin
        rbd_key AQAmOcZPwNY7GRAAuvJjVAKIm1r3JKqLCa4LGQ==
        rbd_authsupported cephx;none
        content images

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-06-01 07:18:11 +02:00