Roles and Profiles
by Ger Apeldoorn
Puppet
Roles and Profiles
by Ger Apeldoorn
Puppet
Freelance Puppet Consultant
Freelance Puppet Trainer
Agenda
Roles & Profiles
Why Roles and Profiles?
- Installing component modules
- Using Hieradata to customize modules
Overview
Example: Base profile
- Creating the Profile
- Creating the role
- Creating resources using Hiera
Example: Lamp server
Node classification
- What are component modules
- Roles and Profiles Theory
Why?
Because we can
Manageability
Manage groups
Best Practice
Not using Roles and Profiles will lead to more complexity and failures.
Keep your infrastructure Manageable!
Roles and Profiles is extremely common and a Best Practice.
Don't manage individual machines, manage logical groups of servers!
Component modules
Examples
'Composable'
Pre-fab building blocks
Component modules
Examples
Why Forge modules?
https://forge.puppet.com
Overview
The Theory of Roles & Profiles
Business layer
Implementation layer
Component modules
Base profile
The fundamentals
Settings for all servers
Base profile
The fundamentals
Generic
Split by platform
webserver
Setting up a role and profile
role::web
profile::lamp
profile::base
ntp
motd
apache
mysql
apache::vhost
mysql_database
user
Node classification
Server based
Web interface
Custom fact
Can be dangerous!
Deployed with OS installation
Make immutable to avoid tampering
Client based
Hiera data
Create a Hiera file for each host
Centralized
Roles and Profiles
Thank you!