더북(TheBook)

사실 신중하게 검토하는 것만으로 부족하다. 시스템 관리자도 사람인 이상 실수는 피할 수 없기 마련 아닌가? 선배가 추천한 합리적인 대응 방법은 두 가지. 먼저 전체 시스템에 매니페스트를 적용하기 전에 테스트배드를 마련해서 철저한 검증을 거쳐야 한다. 이를테면 다음과 같이 작성한 site.pp에 위험해 보이는 suspicious_module 클래스를 전체 시스템에 적용하려고 한다면, 모든 노드에 suspicious_module을 적용하기에 앞서 시스템 하나에만 적용해서 테스트해 보고 결과를 확인하라는 이야기다(여기에 나오는 suspicious_module 모듈은 구현하지 않은 가상의 모듈이기 때문에 실제 퍼팻에 반영하면 오류가 발생할 것이다).

node 'vm01.linuxmastery.kr' {
    include suspicious_module
}

node /^vm[0-9]+\.linuxmastery\.kr$/ {
    include localmail
    include sshd
    # include suspicious_module
}

전체 시스템을 대상으로 해도 되겠다는 판단이 들 때만 다음과 같이 주석을 해제해서 puppet apply 명령으로 적용한다.

node /^vm[0-9]+\.linuxmastery\.kr$/ {
    include localmail
    include sshd
    include suspicious_module
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.