CentOS Stream 9
Sponsored Link

Puppet : 利用方法 [service リソース]2023/10/17

 

マニフェストで宣言できるリソースタイプのうち、[service] リソースを例にします。

[1] [httpd] が 起動している状態を維持管理する。
[root@dlp ~]#
vi /etc/puppetlabs/code/environments/production/manifests/svc01.pp
service { 'httpd':
  name   => 'httpd',
  ensure => running,
}
[2] [httpd] が 起動している状態を維持管理する。
[httpd] がインストールされていなければ起動不可のため、[package] リソースで [require] 指定して [installed] の状態を合わせて維持する。
[root@dlp ~]#
vi /etc/puppetlabs/code/environments/production/manifests/pkg01.pp
package { 'httpd':
  provider => yum,
  ensure   => installed,
}

[root@dlp ~]#
vi /etc/puppetlabs/code/environments/production/manifests/svc01.pp
service { 'httpd':
  name    => 'httpd',
  ensure  => running,
  require => Package['httpd'],
}
[3] Nginx が 起動していない状態を維持管理する。(起動していたら停止する)
[root@dlp ~]#
vi /etc/puppetlabs/code/environments/production/manifests/svc02.pp
service { 'nginx':
  name   => 'nginx',
  ensure => stopped,
}
[4] [/etc/httpd/conf.d/security.conf] が更新されたら [httpd] を再起動する。
[root@dlp ~]#
vi /etc/puppetlabs/code/environments/production/manifests/svc03.pp
file { '/etc/httpd/conf.d/security.conf':
  ensure => file,
  owner  => 'root',
  group  => 'root',
  mode   => '0644',
  source => 'puppet://dlp.srv.world/extra_files/security.conf',
  notify => Service['httpd'],
}

[root@dlp ~]#
vi /etc/puppetlabs/puppet/files/security.conf
ServerTokens Prod
ServerSignature On
TraceEnable Off
関連コンテンツ