이렇게 해보세요 ≣
메타파라미터 subscribe는 notify와 반대로 값으로 지정한 리소스가 변경되었을 때 리소스를 다시 시작합니다. before와 require 관계처럼 notify와 subscribe도 둘 중 하나만 사용합니다.
service { 'apache2':
ensure => running,
subscribe => File['charset.conf'],
}
노드 vm01.linuxmastery.kr에서 에이전트를 실행해 보면 로그에서 설정 파일 변경으로 새로고침 이벤트가 발생하여 아파치 웹 서버를 다시 실행한다는 사실을 확인할 수 있습니다.
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 '1576719104'
Notice: /Stage[main]/Main/Node[vm01.linuxmastery.kr]/File[charset.conf]/content:
--- /etc/apache2/conf-available/charset.conf 2019-07-17 03:14:45.000000000 +0900
+++ /tmp/puppet-file20191219-13174-1kdgu4v 2019-12-19 10:31:44.867793440 +0900
@@ -1,8 +1 @@
-# Read the documentation before enabling AddDefaultCharset.
-# In general, it is only a good idea if you know that all your files
-# have this encoding. It will override any encoding given in the files
-# in meta http-equiv or xml encoding tags.
-
-#AddDefaultCharset UTF-8
-
-# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
+AddDefaultCharset UTF-8
Info: Computing checksum on file /etc/apache2/conf-available/charset.conf
Info: /Stage[main]/Main/Node[vm01.linuxmastery.kr]/File[charset.conf]: Filebucketed /etc/apache2/conf-available/charset.conf to puppet with sum 46ea15bcd82c11ea0973aa8842b1dc56
Notice: /Stage[main]/Main/Node[vm01.linuxmastery.kr]/File[charset.conf]/content: content changed '{md5}46ea15bcd82c11ea0973aa8842b1dc56' to '{md5}641239a7d2d172856cb1413a47d2e142'
Info: /Stage[main]/Main/Node[vm01.linuxmastery.kr]/File[charset.conf]: Scheduling refresh of Service[apache2]
Notice: /Stage[main]/Main/Node[vm01.linuxmastery.kr]/Service[apache2]: Triggered 'refresh' from 1 event
Notice: Applied catalog in 0.70 seconds