
두 개의 서로 다른 클래스에서 동일한 내보낸 리소스를 사용할 수 있습니까?
https://puppet.com/docs/puppet/5.2/lang_exported.html#exported-resource-collectors
예를 들어, 자체 SSH 호스트 키를 내보낸 다음 모든 노드(자체 노드 포함)의 SSH 호스트 키를 수집합니다.
class hudson_destination::public_key {
@@sshkey { "${fqdn}":
type => rsa,
key => $sshrsakey,
tag => 'build_destination',
}
}
그런 다음 /etc/ssh/ssh_known_hosts 파일로 출력되는 다른 모듈에서 이 리소스를 수집합니다.
Sshkey <<| tag == 'build_destination' |>>
다른 클래스에서 이 수집기를 사용하여 파일 리소스가 있는 ~/.ssh/known_hosts로 출력할 수 있습니까?
*참고 - 다음을 사용하여 sshkey 리소스를 다른 제목 태그로 복제하려고 했습니다.
@@sshkey { "${fqdn}_luntbld":
name => $fqdn,
type => rsa,
key => $sshrsakey,
tag => 'build_destination_luntbld',
target => '/com/home/luntbld/.ssh/known_hosts.puppet',
}
하지만 이미 선언된 중복 호스트 키에 대한 아래 오류가 발생합니다.
/etc/puppet/devqa/modules/hudson_destination/manifests/public_key.pp:22에서 Sshkey[fqdn_luntbld]를 [\"yobot1.qa.norvax.net\"]로 별칭을 지정할 수 없습니다. 리소스 [\"Sshkey\", \"yobot1.qa.norvax.net\"]는 /etc/puppet/devqa/modules/hudson_destination/manifests/public_key.pp:14 /etc/puppet/devqa/modules에 이미 선언되어 있습니다. /hudson_destination/manifests/public_key.pp:22 노드 yobot1.qa.norvax.net\u001b[0m\n\u001b[1;31m경고: 실패한 카탈로그에서 캐시를 사용하지 않음\u001b[0m\n\u001b[1;31m오류 : 카탈로그를 검색할 수 없습니다.