官术网_书友最值得收藏!

Summary

All the development in Puppet should be done in modules, and each such module should serve as specific a purpose as possible. Most modules comprise only manifests. This suffices to provide very effective and readable node manifests that clearly and concisely express their intent by including aptly named classes and instantiating defined types.

Modules can also contain Puppet plugins in the form of resource types and providers, parser functions, or facts. All of these are usually Ruby code. External facts can be written in any language, though. Writing your own types and providers is not required, but it can boost your performance and management flexibility.

It is not necessary to write all your modules yourself. On the contrary, it's advisable to rely on the open source modules from the Puppet Forge as much as possible. The Puppet Forge is an ever-growing collection of helpful code for virtually all the systems and software that Puppet can manage. In particular, the modules that are curated by Puppet Labs are usually of very high quality. As with any open source software, you are more than welcome to add any missing requirements to the modules yourself.

After this broad view on Puppet's larger building blocks, the next chapter narrows the scope a little. Now that you have the tools to structure and compose a manifest code base, you will learn some refined techniques in order to elegantly solve some distinct problems with Puppet.

主站蜘蛛池模板: 赫章县| 吴桥县| 安宁市| 喀喇| 综艺| 建湖县| 麻栗坡县| 凤翔县| 合肥市| 福安市| 绩溪县| 武宁县| 孟连| 西丰县| 临洮县| 开化县| 祥云县| 淮南市| 开江县| 孟津县| 丰宁| 平陆县| 化州市| 宜丰县| 通化县| 广昌县| 东乡县| 额济纳旗| 茌平县| 娱乐| 东港市| 南城县| 河津市| 高安市| 富裕县| 涞水县| 南宫市| 千阳县| 浦城县| 兰溪市| 安西县|