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

  • Mastering Puppet 5
  • Ryan Russell Yates Jason Southgate
  • 177字
  • 2021-07-16 17:46:12

Roles

Let's take another step back and consider what we want to achieve with the roles part of the pattern. The overarching task is to piece together these building-brick-like profile classes into full tech stacks, which we call roles, and are now the second part of our full pattern:

Here you can see that we have taken the composite profiles from our previous example, and stacked them one on top of the other, to produce a full tech stack. We are also utilizing two additional shared profiles:

  • profile::base is included in all machines, including workstations. It manages security baselines and so on, using conditional logic for OS-specific profiles; for example, profile:: base::ubuntu, profile::base::redhat, and so on, as needed.
  • profile::server is included in all machines that provide a service over the network, and configures services such as NTP, firewalls, monitoring, logging, and so on.

Let's look again at the fully functional LAMP stack as an example in Puppet DSL:

# LAMP stack


class role::lamp {
include profile::web::apache
include profile::db::mysql
include profile::programming::php
include profile::server
include profile::base
}
主站蜘蛛池模板: 昂仁县| 台中县| 蓝田县| 宁陵县| 双桥区| 江都市| 怀远县| 甘肃省| 九江县| 林甸县| 黄大仙区| 吴旗县| 玉溪市| 普定县| 赣州市| 蒲江县| 潞城市| 武隆县| 昌吉市| 河曲县| 大化| 合作市| 武强县| 金昌市| 唐河县| 子洲县| 都匀市| 临湘市| 额济纳旗| 青浦区| 绥中县| 萝北县| 武定县| 雷波县| 安达市| 仁化县| 陵川县| 绥宁县| 安乡县| 正宁县| 开化县|