Puppetコマンド

Puppetコマンドのメモ

Puppetサーバーで使うコマンド

認証待ちpuppetクライアント一覧
puppetca --list


puppetクライアント認証(autosignやってない時)
puppetca --sign hostname


puppetクライアント認証済みも含め全表示
puppetca --list --all


証明書の表示
puppetca --print hostname


リクエストのキャンセル(ホスト名の間違い等)
puppetca --clean hostname


Puppetクライアントへkick(手動適用)
puppet kick --host hostname


puppetクライアントへtag付きでkick(手動適用)
puppet kick --host hostname --tag newsetting


マニフェストファイルの更新
puppet apply /etc/puppet/manifests/site.pp


証明書の追加
puppetca --generate hostname


Puppetクライアントで使うコマンド

puppetクライアントテストコマンド
puppet agent --test --debug


マニフェストを一度だけ適用(適用後puppetを終了する)
puppetd --onetime

ただし、puppetデーモンが動いていると使えない。
なので、puppetクライアントの初期インストール時の初回起動前に使うとか。

クライアントの特定のデーモンの状態確認
puppet resource service httpd


実行例

service { 'httpd':
  ensure => 'stopped',
  enable => 'false',
}


リソースの状態をマニフェスト形式で出力

これを転用してマニフェストを作成すれば便利っぽい

puppet resource service


実行例

service { 'sshd':
  ensure => 'running',
  enable => 'true',
}
service { 'sysstat':
  ensure => 'running',
  enable => 'true',
}
service { 'unbound':
  ensure => 'running',
  enable => 'true',
}
service { 'varnish':
  ensure => 'stopped',
  enable => 'false',
}


クライアントにインストールされているパッケージとバージョンを表示
puppet resource package


実行例

package { 'zlib':
  ensure => '1.2.3-27.el6',
}
package { 'zlib-devel':
  ensure => '1.2.3-27.el6',
}
package { 'zsh':
  ensure => '4.3.10-5.el6',
}