2017-03-28 10 views
1

에이전트/마스터 설정이 있습니다. 나는 master이라고 불리는 /etc/puppetlabs/code/environments/에 새로운 환경을 만들었다.는 꼭두각시 에이전트에 대해 다른 환경을 사용할 수 없습니다.

master 디렉토리 환경에 대한 environment.conf의 내용은

modulepath = site:modules:$basemodulepath 
manifest = manifests/site.pp 

내가이 puppet agent -t --environment master을하려고 할 때 몇 가지 오류

Notice: Local environment: 'master' doesn't match server specified node environment 'production', switching agent to 'production'. 
Info: Retrieving pluginfacts 
Info: Retrieving plugin 
Info: Loading facts 
Info: Caching catalog for node1.localpuppet.com 
Info: Applying configuration version '1490712072' 
Notice: Applied catalog in 0.67 seconds 

나는 꼭두각시에 새로운 오전을 얻고있다. 어떤 변화가 필요합니까?

PE Console Config

답변

2

이 지난 몇 년에 나타났다 인형 기업의 "정말 재미"특질이다. PE 분류 자에서 puppet.conf 또는 puppet agent -t --environment 인수에 디렉토리 환경을 지정할 수있는 노드를 지정해야합니다.

분류 자의 에이전트 지정 환경 탭 (위 그림의 하단 참조)에서 모든 노드에 대해 활성화 할 수 있습니다. 정규 표현식 (~)을 사용하여 모든 문자를 일치시키는 정규 표현식 (.*)을 사용하여 name 사실을 선택하여 규칙을 추가합니다. 이것을 채우면 PE 분류기는 여러 개의 일치하는 노드를 제공합니다. 그것은 당신의 주인을 구독하는 모든 것이어야합니다. 규칙을 업데이트하려면 오른쪽 하단의을 클릭하십시오. 이제 노드는 구성 파일 또는 CLI 인수에서 production 대신 master을 사용할 수 있습니다.

코드 관리자로 작업 할 때 제어 저장소의 기본 Git 브랜치 (production)의 이름을 지정하지 않으려면이 작업을 수행하는 것이 훨씬 쉽기 때문에 실제로 브랜치의 이름을 변경해야합니다.

+1

또는 에이전트가 자신의 이름을 지정할 수 있도록 허용하지 않고 원하는 환경을 마스터에서 지정할 수 있습니다. PE에서 정확히 정확히 어떻게하는지 모르겠습니다 만, 어딘가에 GUI에 옵션이 있다고 가정합니다. –

+0

감사합니다. @MattSchuchard. 프로덕션 환경 탭에'name ~. * '사실을 추가 한 후에 작동했습니다. –

+0

@AmitAuddy 제 대답을 수락하십시오. –