더북(TheBook)

코드 중복은 피했지만 모든 퍼팻 코드를 매니페스트 하나에 집어넣으니 가독성이 떨어질 수밖에 없습니다. 기능에 따라 클래스를 분리해서 각각 다른 매니페스트에 작성할 수 있습니다. 패키지를 설치하는 코드만 모아 새로운 매니페스트 packages.pp에 작성합니다. packages 클래스를 선언하고 package 리소스를 입력합니다.

# /home/administrator/code/environments/production/manifests/packages.pp
# 패키지 설치하기
class packages {
  package { ['tree', 'wget', 'curl', 'unzip']: }
}

로그인 메시지를 추가하는 코드는 motd 클래스로 매니페스트 motd.pp에 작성합니다. motd 클래스에 file 리소스를 입력합니다.

# /home/administrator/code/environments/production/manifests/motd.pp
# motd 보여 주기
class motd {
  file { '/etc/motd':
    ensure  => file,
    owner   => 'root',
    content => "\n
      Hostname    : ${::fqdn}\n
      IP Address  : ${::ipaddress}\n",
  }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.