一、查看官方提供的下載源
https://docs.puppet.com/guides/puppetlabs_package_repositories.html
二、 選擇對應系統的下載源
因為本機是CentOS 7.1,故選擇YUM源
https://yum.puppetlabs.com/
三、 安裝Puppet
# wget https://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
# rpm -ivh puppetlabs-release-el-7.noarch.rpm
# yum install puppet -y
# puppet --version
3.8.7
四、 Puppet配置文件介紹
Puppet的主配置文件均放到/etc/puppet目錄下,3.8.7版本有以下幾個文件
auth.conf modules puppet.conf
其中:
puppet.conf是Master守護進程的主配置文件,定義了Master的運行環境,啟動加載文件等信息。守護進程在啟動前會根據這個文件進行預檢,只要預檢成功才能啟動
守護進程。
auth.conf主要用來定義Agent訪問Master上目錄的權限。如果沒有權限控制的話,Agent可以訪問Master服務器上的所有資源。
五、 安裝nginx包並啟動nginx服務
安裝nginx包,可先通過puppet resource命令生成相關的模板,然後再對其進行編輯。
[root@master1 ~]# puppet resource package nginx package { 'nginx': ensure => 'absent', } [root@master1 ~]# puppet resource service nginx service { 'nginx': ensure => 'stopped', enable => 'false', }
其中,puppet resource package是生成安裝包的模板,puppet resource service是生成服務的模板
最後,nginx包的配置文件如下:
package { 'nginx': ensure => 'present', } service { 'nginx': ensure => 'running', }
在本地應用該配置文件
# puppet apply nginx.pp
Notice: Compiled catalog for master1.localdomain in environment production in 0.56 seconds Notice: /Stage[main]/Main/Package[nginx]/ensure: created Notice: /Stage[main]/Main/Service[nginx]/ensure: ensure changed 'stopped' to 'running' Notice: Finished catalog run in 5.76 seconds
查看nginx包是否安裝以及服務是否啟動
[root@master1 ~]# rpm -qa |grep nginx nginx-1.6.3-9.el7.x86_64 nginx-filesystem-1.6.3-9.el7.noarch [root@master1 ~]# ps -ef |grep nginx root 3094 3070 0 13:14 pts/2 00:00:00 tailf /var/log/nginx/error.log root 3423 1 0 13:16 ? 00:00:00 nginx: master process /usr/sbin/nginx nginx 3424 3423 0 13:16 ? 00:00:00 nginx: worker process nginx 3425 3423 0 13:16 ? 00:00:00 nginx: worker process root 3432 1536 0 13:18 pts/0 00:00:00 grep --color=auto nginx
http://xxxxxx/Linuxjc/1137422.html TechArticle