一、 puppet:運維自動化軟件,針對多臺服務器統一操做,批量安裝、上線維護,減小人力及誤操做風險。
可在單機上也能夠以C/S機構使用。服務器端爲puppetmaster,客戶端爲puppetclient.client和master之間是基於ssl和證書的,須要註冊。Puppet同步後會保持狀態,默認30分鐘從新檢測同步一次。node
二、 puppet工做流程:服務器
1) 客戶端通用facter探測主機的變量,並經過SSL鏈接發送到服務器。併發
2) 服務器經過facter分析客戶端的主機名,並找到manifests裏對應的node配置並分析生成一個僞代碼,併發給客戶端。運維
3) 客戶端收到僞代碼,把執行結果發給服務器。ide
4) 服務器把結果記錄日誌日誌
三、 puppetmaster的配置:分模塊配置結構和目錄結構兩部分code
模塊配置中能夠建立許多應用模塊,每個應用模塊必須有一個入口,文件(主配置文件)init.pp文件,能夠只有這一個文件也能夠包含其餘文件。ssl
目錄結構中包含須要客戶端複製的文件及客戶端節點信息等:必須有的入口文件名爲site.pp同步
四、 客戶端同步的方式有兩種;工作流
1) 客戶端主動拉取(小規模):puppet agent -t
2) 服務器端推送同步(大規模):須要客戶端添加驗證信息和權限
Puppet kick 客戶機名