꼭두각시를 통해 corosync-pacemaker 클러스터를 설치했습니다. 이제 데이터를 hiera 파일에 저장하고 싶습니다. cs_primitive 부분을 yaml 파일로 어떻게 변환해야 합니까?
cs_primitive { 'nfsshare_fs':
primitive_class => 'ocf',
primitive_type => 'Filesystem',
provided_by => 'heartbeat',
parameters => { 'device' => '/dev/disk/lvname', 'directory' => '/share', 'fstype' => 'ext4' },
}->
아래 코드를 시도했지만 작동하지 않습니다.
corosync::cs_primitive:
'nfsshare_fs':
primitive_class: 'ocf'
primitive_type: 'Filesystem'
provided_by: 'heartbeat'
parameters:
device: '/dev/disk/by-id/lvname'
directory: '/share'
fstype: 'ext4'
감사해요.
답변1
클래스는 hiera에서 제공하는 매개변수를 가질 수 있지만 리소스는 가질 수 없습니다.
hiera에서 매개변수를 가져오는 매니페스트에 사용자 정의 클래스를 생성해야 합니다. 예를 들어 (테스트되지 않음):
class corosync_resources (
Hash $primitives = {},
) {
$primitives.each |$key, $value| {
cs_primitive { $key:
* => $value,
}
}
}
그럼 쉴라에서
corosync_resources::primitives:
'nfsshare_fs':
primitive_class: 'ocf'