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

Chapter 8. Separating Data from Code Using Hiera

Working through the first seven chapters, you have used the basic structural elements of Puppet in numerous examples and contexts. There has been a quick demonstration of the more advanced language features, and you have a good idea of what distinguishes the manifest writing process in Puppet 4 from the earlier releases.

For all their expressive power, manifests do have some limitations. A manifest that is designed by the principles taught up to this point mixes logic with data. Logic is not only evident in control structures such as if and else, but it also just emerges from the network of classes and defines that include and instantiate one another.

However, you cannot configure a machine by just including some generic classes. Many properties of a given system are individual and must be passed as parameters. This can have maintenance implications for a manifest that must accommodate a large number of nodes. This chapter will teach you how to bring order back to such complex code bases. We will also explain how many larger sites structure the codebase as a whole. These will be our final steps in this Puppet Essentials collection:

  • Understanding the need for separate data storage
  • Structuring configuration data in a hierarchy
  • Retrieving and using Hiera values in manifests
  • Converting resources to data
  • A practical example
  • Debugging Hiera lookups
  • Implementing the Roles and Profiles Pattern
主站蜘蛛池模板: 德惠市| 贵溪市| 南开区| 兴安盟| 柯坪县| 德昌县| 宜春市| 高陵县| 页游| 昌黎县| 治县。| 鄂托克前旗| 鄂温| 乌兰浩特市| 城固县| 莱阳市| 定边县| 达拉特旗| 广东省| 隆回县| 乐陵市| 纳雍县| 巴里| 尤溪县| 青阳县| 班戈县| 永仁县| 神木县| 白玉县| 丹江口市| 陆河县| 江川县| 叶城县| 津市市| 诏安县| 府谷县| 民权县| 拜城县| 洱源县| 泰宁县| 安泽县|