puppet單機模型
puppet配置
命令
- facter -p: 顯示所有的變數
- puppet apply [-v] [–noop]
- puppet module
- puppet describe [-l] [list]
常用資源
- file
- user
- group
- exec
- package
- service
- notify
puppet的資源
puppet中的正規表示式的匹配
- $operatingsystem =~ /(?i-mx:(macox|majaro|debain|gentoo))
- 上述表達的說明
- $operatingsystem是puppet的內建變數
- =~ 是字串的模式匹配
- 其中/(?i-mx:
- 此表示式表示作業系統的名稱是否匹配maosx, majaro, debain, gentoo其中的一種
- /…/是必須的, 裡面的(?i-mx:可以不要, 那麼就採用預設的
puppet中的語句
- if 語句
if CONDITION {
# statement like notice("Hello, World!")
} elsif CONDITION {
} else {
}
- case 語句
case {
case1, case2: {
}
case3: {
}
case 4, case5, case6: {
}
}
- selector語句
$rootgroup = $osfamily ? {
`Solaris` => `wheel`,
/(Darwin|FreeBSD)/ => `wheel`,
default => `root`,
}
原型為:
variable = $var ? {
var1 => value1,
var2 => value2
}
自定義模組
-
建立一個module_name目錄, 在該目錄中包含manifests, lib, tests, spec, files, templates目錄, 其中在manifests中放的檔案是.pp檔案, 且和python一樣有類似的要求, 需要有一個init.pp檔案, 並且在該檔案中需要定義一個class, 他的class name需要和module_name一致
-
下面為一個簡單的示例
nginx/
|-- files # 放置普通的檔案
|-- lib
|-- manifests # 放置.pp檔案
| `-- init.pp
|-- spec
|-- templates # 放置嵌入ruby指令碼的plain text, 就是裡面有 <%= %>等標誌的檔案
| `-- nginx.conf
`-- tests
相關文章
- 自動化運維工具之Puppet master/agent模型、站點清單和puppet多環境設定運維AST模型
- 單機高併發模型設計模型
- Puppet實戰
- Puppet學習
- puppet 安裝
- 2 簡單的計算機模型MARIE計算機模型
- puppet完全攻略(一)puppet應用原理及安裝部署
- puppet之安裝配置
- puppet組織架構架構
- puppet確保程式執行
- puppet agent定時同步更新
- puppet之crontab時間同步
- puppet package資源詳解Package
- puppet file資源詳解
- puppet自動認證授權
- puppet rpm方式的安裝
- puppet之java批量安裝案例Java
- puppet之mysql批量安裝案例MySql
- 感知機模型模型
- linux下puppet的“資源”管理Linux
- puppet替換檔案中的string
- 自動化運維工具之Puppet模組運維
- puppet進階指南——service資源詳解
- kickstart之批量安裝puppet客戶端客戶端
- Puppet Openstack Mitaka Design Summit小結MIT
- 如何在 Ubuntu 15.04 中安裝 puppetUbuntu
- CentOS 6.3下Puppet安裝配置筆記CentOS筆記
- 得物主子訂單模型模型
- 魚眼相機成像模型和畸變模型模型
- DDD中簡單模型比複雜模型更危險模型
- python xmind轉Excel(puppet洛洛原創)PythonExcel
- Puppet+foreman 本地yum安裝手冊REM
- Cesium傾斜模型單體化模型
- Android中提取表單模型Android模型
- 機率圖模型基礎模型
- [需求建議]跨模型呼叫?分類能呼叫單獨模型?模型
- 2021年DevOps生態報告 | Puppetdev
- [需求建議]希望加入單頁模型(單頁分類)模型