Ubuntu 22.04
Sponsored Link

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

 

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

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

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

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