Puppet基础应用
Puppet簡介
IT基礎設施自動化管理工具,作者:Luck Kanies,官方站點:www.puppetlabs.com
管理設施的整個生命周期:
provisioning、configuration、orchestration、reporting
Puppet安裝
(1)官方的yum倉庫
CentOS 6.*:
#?rpm -Uvh https://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm
CentOS 7.*:
#?rpm -Uvh https://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
(2)EPEL源
Puppet基礎應用
puppet <subcommand> [options] <action> [options]
使用puppet help獲取相應幫助
1.資源定義
①定義法則
A.資源類型定義時必須使用小寫字符
B.資源名稱(title)僅是一個字符串,但同一個類型中其必須唯一
②定義格式
type {'title':attribute1 => value1,attribute2 => value2[,] }③資源的特殊屬性
NameVar,ensure,Metaparameters
Metaparameters://資源引用:Type['title']//依賴關系: 被依賴的資源中使用before依賴的資源中使用require->:鏈式依賴//通知關系: 被依賴的資源中使用notify監(jiān)聽其他資源的資源使用subscribe~>:鏈式通知④常用資源類型
/*管理組*/group/*常用屬性*/name:組名,NameVargid:GIDensure:present,absentsystem:true,falsemembers:組內成員 /*管理用戶*/user/*常用屬性*/name:用戶名,NameVaruid:UIDgid:基本組IDgroups:附加組home:家目錄shell:默認shellsystem:true,falsecommet:注釋信息ensure:present,absentexpiry:過期期限password:設置用戶密碼 /*管理文件*/file/*常用屬性*/force:強制運行,可用值{yes|no|true|false}group:屬組owner:屬主mode:權限,支持八進制格式權限,以及u,g,o賦權方式path:目標路徑source:源文件路徑,可以是本地文件路徑(單機模型),也可以使用puppet:///modules/module_name/file_nametarget:當ensure為'link'時,target表示path指向的文件是一個符號鏈接文件,其目標為此target屬性所指向的路徑;此時content及source屬性自動失效content:直接給出文件內容,支持\n,\tsource:從指定位置下載文件ensure:file,directory,link,present,absent /*運行外部具有‘冪等性’的命令*/exec/*常用屬性*/command:運行的命令,NameVarcreates:此屬性指定的文件不存在時才執(zhí)行命令cwd:以此屬性指定的路徑下執(zhí)行命令user:以指定用戶身份運行命令group:指定組onlyif:給定一個測試命令;僅在此命令執(zhí)行成功($?為0)時才運行command指定的命令unless:給定一個測試命令;僅在此命令執(zhí)行失敗($?不為0)時才運行command指定的命令refresh:接收到其他資源發(fā)來的refresh通知時,默認是重新執(zhí)行exec定義的command,refresh屬性可改變這種行為,即可指定僅在refresh時運行的命令refreshonly:僅在收到refresh通知時,才運行此資源returns:期望的狀態(tài)返回值,返回非此值時表示命令執(zhí)行失敗tries:嘗試執(zhí)行的次數timeout:超時時長path:指明命令搜索路徑,其功能類似PATH環(huán)境變量;其值通常為列表['path1','path2',...];日過不定義此屬性,則必須指定命令的絕對路徑 /*管理周期性任務*/cron/*常用屬性*/ensure:present,absentcommand:要執(zhí)行的jobhour:時minute:分month:月monthday:日weekday:周name:job名稱user:運行時以哪個用戶身份運行environment:運行時的環(huán)境變量 /*管理程序包*/package/*常用屬性*/configfiles:替換程序時,原來的配置文件如何處理{keep|replace},默認值是keepensure:installed,latest,VERSION(2.3.1-2.el7),present,absentname:程序包名稱source:程序包來源,可以是本地文件路徑或URLprovider:指明程序包的提供者 /*管理服務*/service/*常用屬性*/name:服務名稱,NameVarensure:啟動(running),停止(stopped)enable:是否開機自啟{true|false}hasrestart:是否支持restart參數hasstatus:是否支持status參數path:服務腳本查找路徑pattern:用于搜索此服務相關的進程的模式;當腳本不支持restart/status時,用于確定服務是否處于運行狀態(tài)restart:用于服務重啟start,status,stop..?
轉載于:https://www.cnblogs.com/trymybesttoimp/p/6360321.html
總結
以上是生活随笔為你收集整理的Puppet基础应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 职业生涯中的愚蠢想法
- 下一篇: CCF201312-3 最大的矩形(10