Add support for BTRFS
This commit is contained in:
parent
d8704bdc92
commit
75077816be
|
@ -54,6 +54,7 @@ options:
|
||||||
.
|
.
|
||||||
xfs (Default >= 0.55)
|
xfs (Default >= 0.55)
|
||||||
ext4 (Only option < 0.55)
|
ext4 (Only option < 0.55)
|
||||||
|
btrfs (experimental and not recommended)
|
||||||
.
|
.
|
||||||
Only supported with ceph >= 0.55.
|
Only supported with ceph >= 0.55.
|
||||||
osd-reformat:
|
osd-reformat:
|
||||||
|
|
|
@ -85,6 +85,12 @@ def add_bootstrap_hint(peer):
|
||||||
# Ignore any errors for this call
|
# Ignore any errors for this call
|
||||||
subprocess.call(cmd)
|
subprocess.call(cmd)
|
||||||
|
|
||||||
|
DISK_FORMATS = [
|
||||||
|
'xfs',
|
||||||
|
'ext4',
|
||||||
|
'btrfs'
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def is_osd_disk(dev):
|
def is_osd_disk(dev):
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -29,7 +29,7 @@ def install_upstart_scripts():
|
||||||
def install():
|
def install():
|
||||||
utils.juju_log('INFO', 'Begin install hook.')
|
utils.juju_log('INFO', 'Begin install hook.')
|
||||||
utils.configure_source()
|
utils.configure_source()
|
||||||
utils.install('ceph', 'gdisk', 'ntp')
|
utils.install('ceph', 'gdisk', 'ntp', 'btrfs-tools')
|
||||||
install_upstart_scripts()
|
install_upstart_scripts()
|
||||||
utils.juju_log('INFO', 'End install hook.')
|
utils.juju_log('INFO', 'End install hook.')
|
||||||
|
|
||||||
|
@ -53,16 +53,18 @@ def config_changed():
|
||||||
|
|
||||||
utils.juju_log('INFO', 'Monitor hosts are ' + repr(get_mon_hosts()))
|
utils.juju_log('INFO', 'Monitor hosts are ' + repr(get_mon_hosts()))
|
||||||
|
|
||||||
fsid = utils.config_get('fsid')
|
# Pre-flight checks
|
||||||
if fsid == '':
|
if not utils.config_get('fsid'):
|
||||||
utils.juju_log('CRITICAL', 'No fsid supplied, cannot proceed.')
|
utils.juju_log('CRITICAL', 'No fsid supplied, cannot proceed.')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
if not utils.config_get('monitor-secret'):
|
||||||
monitor_secret = utils.config_get('monitor-secret')
|
|
||||||
if not monitor_secret:
|
|
||||||
utils.juju_log('CRITICAL',
|
utils.juju_log('CRITICAL',
|
||||||
'No monitor-secret supplied, cannot proceed.')
|
'No monitor-secret supplied, cannot proceed.')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
if utils.config_get('osd-format') not in ceph.DISK_FORMATS:
|
||||||
|
utils.juju_log('CRITICAL',
|
||||||
|
'Invalid OSD disk format configuration specified')
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
emit_cephconf()
|
emit_cephconf()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue