Hi
I am checking LP183-736
https://bugs.launchpad.net/starlingx/+bug/1830736
I find if provision a storage node with add dedicated journal disk with such command, starlingx will assign journal to all osds on this storage node.
system host-stor-add storage-0 journal 7cbc9885-476c-4ad2-9058-466f1e0f9667
system host-stor-add storage-0 osd 46393030-acbf-43f4-8ca9-f705f65bf457 --tier-uuid 4c672ca9-7c4b-472a-b049-eac115c8aef9
But after unlock, when as journal path has not been set to ceph:osds in osd.pp, osd will be created with journal this the same disk, for example, /dev/sdc will use /dev/sdc1 or /dev/sdc2 as journal, not journal from /dev/sdb ,which dedicated
journal disk with host-strorage-add. Which make this bug.
class platform::ceph::osds(
$osd_config = {},
$journal_config = {},
) inherits ::platform::ceph::params {
# skip_osds_during_restore is set to true when the default primary
# ceph backend "ceph-store" has "restore" as its task and it is
# not an AIO system.
if ! $skip_osds_during_restore {
file { '/var/lib/ceph/osd':
ensure => 'directory',
path => '/var/lib/ceph/osd',
owner => 'root',
group => 'root',
mode => '0755',
}
# Ensure ceph.conf is complete before configuring OSDs
Class['::ceph'] -> Platform_ceph_osd <| |>
# Journal disks need to be prepared before the OSDs are configured
Platform_ceph_journal <| |> -> Platform_ceph_osd <| |>
# Crush locations in ceph.conf need to be set before the OSDs are configured
Osd_crush_location <| |> -> Platform_ceph_osd <| |>
# default configuration for all ceph object resources
Ceph::Osd {
cluster => $cluster_name,
cluster_uuid => $cluster_uuid,
journal => “missing journal disk path” # which make this issue
}
create_resources('osd_crush_location', $osd_config)
create_resources('platform_ceph_osd', $osd_config)
create_resources('platform_ceph_journal', $journal_config)
}
}
My question is how to set journal path to class ceph::osd? Request advice from puppet expert.
Journal path in /opt/platform/puppet/19.01/hieradata/<storage ip>.yaml
platform::ceph::osds::osd_config:
stor-10:
data_path: !!python/unicode '/dev/disk/by-path/pci-0000:00:17.0-ata-6.0-part1'
disk_path: !!python/unicode '/dev/disk/by-path/pci-0000:00:17.0-ata-6.0'
journal_path: !!python/unicode '/dev/disk/by-path/pci-0000:00:17.0-ata-2.0-part1'
osd_id: 0
osd_uuid: !!python/unicode 'a5a0c4c6-207e-408e-a0dd-a7b385f8bab1'
tier_name: !!python/unicode 'storage'
Thanks!
Martin, Chen
SSP, Software Engineer
021-61164330