꼭두각시가 시작을 거부하고 "master.pp"를 요청하는 문제를 어떻게 해결할 수 있나요?

꼭두각시가 시작을 거부하고 "master.pp"를 요청하는 문제를 어떻게 해결할 수 있나요?

나는 최신 버전을 사용하고 puppet있으며 Apress "Pro Puppet" 가이드를 단계별로 따르고 있습니다. 나는 설치했다puppet

sudo aptitude install ruby libshadow-ruby1.8
sudo aptitude install puppet puppetmaster facter

/etc/puppet/puppet.conf인증서 이름을 포함하도록 편집했습니다.

[master]
certname=puppet.mydomain.com

/etc/hosts를 편집하고 다음 줄을 추가했습니다.

127.0.0.1 puppet.mydomain.com puppet

서버의 호스트 이름을 설정했습니다

echo "puppet.mydomain.com" > /etc/hostname
hostname -F /etc/hostname

puppet그런 다음 명령줄에서 실행해 봅니다 .

puppet master --verbose --no-daemonize

그리고 puppet나에게 다음과 같은 오류가 발생합니다.

Could not parse for environment production:
Could not find file /master.pp

모든 명령을 실행하고 있는데 sudo오류 메시지의 마지막 줄에는 항상 master.pp현재 작업 디렉터리 이전의 경로와 찾을 수 없다는 메시지가 나타납니다.

내가 도대체 ​​뭘 잘못하고있는 겁니까?

또한 DNS 레코드가 설정되어 있지 않다는 점을 언급해야 합니다 . 이것이 문제가 될 수 있다고 언급하는 일부 온라인 문서를 보았습니다. 그러나 파일을 사용하면 문제를 해결할 수 있을 것이라고 puppet.mydomain.com확신했습니다 .hosts

답변1

master 하위 명령을 이해하지 못하고 대신 매니페스트로 실행하려고 하는 이전 버전의 Puppet을 사용하고 있는 것 같습니다. 0.25쯤에 새로운 명령 구문이 도입되었습니다.

실행 중인 버전을 다시 확인하세요. 현재 버전은 2.7이어야 합니다. 나는 종종 distros가 이전 버전을 패키지화한다는 것을 발견했습니다. 예를 들어 Ubuntu 10.04LTS는 꽤 오래된 0.25.4를 설치합니다.

답변2

puppet 패키지의 버전을 확인하려면 다음을 실행하세요.

sudo apt-cache policy puppet

답변3

마르테인~이다오른쪽. 꼭두각시 버전은 확실히 2.6보다 오래되었습니다. 이전 버전의 Ubuntu 또는 Debian을 실행하고 있습니까? Squeeze에는 이미 2.6이 포함되어 있고 Ubuntu 11에는 2.7이 포함되어 있습니다. Lenny를 사용하는 경우 백포트에서 최신 버전의 Puppet을 찾을 수 있습니다. 그리고 그 어느 것도 도움이 되지 않는다면 puppetlabs에는 최신 puppet 버전을 위한 저장소가 있다고 생각합니다. 하지만 Ruby 버전에서는 문제가 발생할 수 있습니다.

관련 정보