퍼팻 에이전트 인증 과정에서 사용한 호스트 이름으로 가상 게스트에 해당하는 노드를 선언합니다. 노드 선언에 notify 리소스를 삽입합니다. notify는 로그에 메시지를 남길 수 있어 퍼팻 코드를 디버깅할 때 사용되는 리소스입니다.
# /home/administrator/code/environments/production/manifests/site.pp # notify 테스트 node 'vm01.linuxmastery.kr' { notify { 'test_message': message => "===== vm01 =====\n", } }
퍼팻 서버의 코드가 준비되었으면 클라이언트에서 작업할 차례입니다. 퍼팻 서버에서 카탈로그를 받아 와야 하므로 puppet apply 대신 puppet agent 명령을 실행합니다. --test 옵션을 사용해서 카탈로그를 즉시 내려받아 적용합니다. 지금은 코드를 작성하고 테스트하는 단계라서 매번 --test 옵션을 사용해서 확인하지만, 결국에는 퍼팻 에이전트가 자동으로 정해진 주기마다 카탈로그를 받아 와서 적용 여부를 결정할 것입니다. 에이전트 로그에 notify 리소스로 기술한 기록이 남는 것을 확인할 수 있습니다.
administrator@vm01:~$ sudo /opt/puppetlabs/bin/puppet agent --test
Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Info: Caching catalog for vm01.linuxmastery.kr
Info: Applying configuration version '1576597376'
Notice: ===== vm01 =====
Notice: /Stage[main]/Main/Node[vm01.linuxmastery.kr]/Notify[test_message]/message: defined 'message' as "===== vm01 =====\n"
Notice: Applied catalog in 0.21 seconds