久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么解析Puppet 2.6.x新功能

165次閱讀
沒有評論

共計 2222 個字符,預計需要花費 6 分鐘才能閱讀完成。

本篇文章給大家分享的是有關怎么解析 Puppet 2.6.x 新功能,丸趣 TV 小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著丸趣 TV 小編一起來看看吧。

Puppet 是開源企業系統管理工具,它在 Puppet  2.6.0 發布版 (及包括最近的 2.6.5 在內的后續版本) 中已經加入了大量新功能。2.6.x 系列版本將以多種方式成為 Puppet 的下一代,包括通過移動版本數里的小數點 (從 0.25 到 2.6.x 系列) 來使版本數正?;?。在該技巧中,我們將強調它們的新功能并列舉一些它們如何工作的例子。

首先,新版本標志著對 Puppet 初始 XMLRPC 連接的反對及對更快的 RESTful  API 的支持。這樣做的結果是 Puppet 性能提高,與之進行的整合也更容易。

支持 Ruby DSL

另一個新功能是新的 Ruby  DSL(域特定語言)。Puppet 有一個可用來管理配置的現在 DSL,但 2.6.0 添加了對純 Ruby 版本 DSL 的支持。在現在的 DSL 中,你可以創建一項受管理的資源:

class host {
file { “/etc/hosts”:
mode =  0750,
owner =  root,
}

在新 Ruby DSL 中,你可以用如下方式表示:

hostclass :host do
file “/etc/hosts”, :mode =  0750, :owner =  “root”end

如果你已經熟練掌握 Ruby,在你有 Ruby  DS 的清單中,你還可以用 Ruby 代碼執行任務。舉例來說,你可以從你清單中的其它源里管理數據或檢索數據,如從 MySQL 數據中檢索數據并把它用到 Puppet 資源里:

require  rubygems 
require  mysql 
hostclass :packages do
con = Mysql.new(localhost ,  user ,  password ,  cmdb)
pkgs = con.query(select * from packages)
pkgs.each_hash { |p| package p[ name], :ensure =   latest  }
con.close
node  default  do
include  packages 
end

Puppet 語言中的新功能

Puppet 語言本身也有一些新功能,包括用哈希值 (Puppet 已經了解陣列) 的能力和添加到現有 if/else 條件中的 elsif 結構。

if $foo ==  lsquo;bar rsquo; {include baz} else {include qux}

現在 Puppet 允許更多如下的完全 if/elsif/else 句法:

if $foo ==  lsquo;bar  {include baz} elsif $qux ==  hum  {include valve} else {include box}

此外,Puppet 現在支持“階段”的概念,這意味著你可以向你的清單中添加更粗略的命令。如果在特定命令中有配置需要,這對管理分程序很有用。例如,開啟主機需要的所有步驟可能發生于主機上的應用配置之前。Puppet 創建一個叫做“main”的默認階段。你可以創建其它階段并指定它們發生的命令:

stage { [pre, post]: }
Stage[pre] -  Stage[main] -  Stage[post]

這些代碼規定兩個階段:pre 和 post。它接著指定執行命令,先是 pre,然后是 main,接著是 post。接著我們可以針對特定階段中的執行向該階段中添加資源和類別,例如:

class {
 keys : stage =  pre;
 dns : stage =  main;
 web : stage =  post;
}

審計配置選項

另一個新發展是 Puppet 審計配置的概念。在你運行 Puppet 之前你只有兩種模式:

middot; 執行,它在主機上做實際變更。

middot; 模擬或“等待”模式,其中 Puppet 告訴你它將會做哪些變更但并不會真正做這些變更。

如果你只想了解知道配置狀態,新審計功能允許你指定配置。你可以指定配置,如在目錄中追蹤文件所屬權,告知 Puppet 注意這些文件并發送報告顯示它們隨時間的狀態變化。舉例來說,你可以審計 `/etc/hosts` 文件。Puppet*** 次運行文件時會報告它的特性 mdash; mdash; 它歸誰所有,許可,等等。在每一次的連續性運行時,Puppet 會檢查現有狀態并報告與之前相比的所有不同情況,例如,如果文件所有人改變,會產生一條日志信息:

審計變更:前記錄值所有者 root 變成了所有者 james

這個功能讓你可以復制一些有審計功能的工具,如有 Puppet 的 Tripwire。

Puppet 企業版

Puppet 實驗室發布了 Puppet 企業版,它是用一個安裝程序捆綁了所有 Puppet 及其相關附屬物的商業產品。它設計用來降低用戶進入的障礙并幫助人們實施 Puppet 配置的 *** 實踐。它和開源產品功能相同,但它有自帶支持、更多的穩固性測試、安裝程序和額外的文檔。

包括升級 Puppet Dashboard 和其它主要功能的未來版本和 Puppet 2.7.0,這兩者都會在 2011 年中完成。

以上就是怎么解析 Puppet 2.6.x 新功能,丸趣 TV 小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注丸趣 TV 行業資訊頻道。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-04發表,共計2222字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 自治县| 双桥区| 绵阳市| 剑阁县| 财经| 盐津县| 柳河县| 江都市| 绍兴县| 长海县| 合山市| 铜陵市| 禄丰县| 固阳县| 含山县| 宝清县| 苏州市| 庄浪县| 资阳市| 黎城县| 通许县| 苏尼特右旗| 南安市| 清新县| 恩平市| 阿坝| 石家庄市| 苍溪县| 绿春县| 会泽县| 万盛区| 巨野县| 漳浦县| 曲沃县| 洛浦县| 奇台县| 平江县| 沈阳市| 平昌县| 赣榆县| 宜宾市|