1 つの Puppet マスターは、Puppet エージェントを実行している多数のノードを制御できます。特定のインフラストラクチャーによっては、複数の Puppet マスターで数千のノードを制御するよう指定することもできます。次の手順では、1 つのマスターと 1 つのエージェントを構成する方法について説明します。
始める前に
次の手順を実行する前に、次を実行します。
マスターと、Puppet エージェントを実行するすべてのノードの両方に Puppet IPS パッケージをインストールします。Puppet のインストールを参照してください。
マスター上で、Puppet マスターの SMF サービスインスタンスを構成して有効にします。
# svccfg -s puppet:master setprop config/server=master.company.com # svcadm enable puppet:master # svcs puppet:master
この出力は、マスターの SMF サービスインスタンスがオンラインであることを示します。これで、Puppet エージェントを実行するノードを構成する準備ができました。
# svccfg -s puppet:agent setprop config/server=master.company.com # svccfg -s puppet:agent refresh
変更を有効にするには、SMF サービスをリフレッシュする必要があります。
# puppet agent --test
エージェント上で –-test オプションを指定して puppet agent コマンドを実行すると、新しい SSL 鍵が作成され、エージェントとマスターの間の認証に対する要求が設定されます。
# puppet cert list
このコマンドの出力は、エージェントによって発行された要求を示します。
# puppet cert sign agent
# puppet agent --test
この手順により、マスターとエージェントの間の認証が実行されたことが確認されます。
# svcadm enable puppet:agent # svcs puppet:agent
この出力は、エージェントの SMF サービスインスタンスがオンラインであることを示します。
次の例は、Puppet マスターおよびエージェントを構成する方法を示しています。
# svcs -a | grep puppet disabled 16:04:54 svc:/application/puppet:agent disabled 16:04:55 svc:/application/puppet:master
# svccfg -s puppet:master setprop config/server=master.company.com root@master:~# svcadm enable puppet:master root@master:~# svcs puppet:master STATE STIME FMRI online 17:38:42 svc:/application/puppet:master
# svccfg -s puppet:agent setprop config/server=master.company.com # svccfg -s puppet:agent refresh
# puppet agent --test Info: csr_attributes file loading from /etc/puppet/csr_attributes.yaml Info: Creating a new SSL certificate request for agent.company.com Info: Certificate Request fingerprint (SHA256): E0:1D:0F:18:72:B7:CE:A7:83:E4:48 :D5:F8:93:36:15:55:0A:B9:C8:E5:B1:CE:D9:3E:0A:68:01:BE:F7:76:47 Exiting; no certificate found and waitforcert is disabled
# puppet cert list "agent.company.com" (SHA256) E0:1D:0F:18:72:B7:CE:A7:83:E4:48 :D5:F8:93:36:15:55: 0A:B9:C8 :E5:B1:CE:D9:3E:0A:68:01:BE:F7:76:47
# puppet cert sign agent.company.com Notice: Signed certificate request for agent.company.com Notice: Removing file Puppet:SSL:CertificateRequest agent at '/etc/puppet/ssl/ca/requests/solaris.pem'
# puppet agent --test Info: Caching certificate for agent.company.com Info: Caching certificate_revocation_list for ca Info: Caching certificate for agent.company.com Info: Retrieving plugin Info: Caching catalog for agent.company.com Info: Applying configuration version '1400782295' Notice: Finished catalog run in 0.18 seconds
# svcadm enable puppet:agent # svcs puppet:agent STATE STIME FMRI online 18:20:32 svc:/application/puppet:agent
次のステップ
Puppet をインストールし、必要なすべての構成および検証タスクを実行したら、Puppet を使用してシステム構成を管理する準備ができました。
Puppet を使用したリソースの宣言の詳細は、Oracle Solaris での Puppet リソースおよびリソースタイプの操作を参照してください。
Puppet マニフェストを記述する手順については、Oracle Solaris での Puppet マニフェスト、クラス、およびモジュールの記述を参照してください。
さまざまな Oracle Solaris システム構成の例については、Oracle Solaris での Puppet を使用したシステム構成の管理を参照してください。