0% found this document useful (0 votes)
21 views

Super Sunday - Weblogic Hackathon Introduction To Puppet & Chef

This document provides an agenda and overview for a talk on configuration management using Puppet and Chef. The talk introduces configuration management and how it can automate system configuration and deployment. It discusses how tools like Puppet and Chef can manage infrastructure as code to keep servers in sync and make changes more predictable. The document then gives a brief introduction to Puppet and Chef, including some of their key concepts and terminology. It also provides examples of how resources and manifests are defined in Puppet and recipes and cookbooks in Chef.

Uploaded by

gamezzzz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

Super Sunday - Weblogic Hackathon Introduction To Puppet & Chef

This document provides an agenda and overview for a talk on configuration management using Puppet and Chef. The talk introduces configuration management and how it can automate system configuration and deployment. It discusses how tools like Puppet and Chef can manage infrastructure as code to keep servers in sync and make changes more predictable. The document then gives a brief introduction to Puppet and Chef, including some of their key concepts and terminology. It also provides examples of how resources and manifests are defined in Puppet and recipes and cookbooks in Chef.

Uploaded by

gamezzzz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

Super Sunday | WebLogic Hackathon

Introduction to Puppet & Chef


Simon Haslam & Ronald van Luttikhuizen
December 1st | UKOUG Tech 2013

1 | 28
10
Agenda

Configuration management
● Intro, How it was & How it can be
Real world case
Puppet
Chef
Intro to the Hands-on-Labs

2 | 28
10
Configuration management | introduction
• Automated installations and rollbacks
Application Deployment • Inject environment variables, smoke-testing

• Automated builds, tests, and packaging from version control


Application Building & Packaging • Central archiving in (artifact) repository

• Automated provisioning of middleware


Server & Middleware Provisioning • High frequency of changes to images (e.g. patches)

• Automated provisioning of OS-ready images


Machine Provisioning • Low frequency of changes to images

3 | 28
10
Configuration management | the traditional way

Artisan server crafting


Boring
Stressful
Error-prone
Time-consuming
Non-scalable & expensive

4 | 28
10
Configuration management | how it can be

Automated configuration
management
Describe a system once, apply as often
as you want
Automate the repetitive
Focus on improvements and “real”
problems as admin
Predictable results
(Near) real-time provisioning

5 | 28
10
Configuration management | how it can be

Infrastructure as code & DevOps


Eliminate tedious and repetitive work
Configurations are defined in a machine- and OS-independent domain
language so the manifests are portable and can be reused
Keep servers in sync and know what is running on what server
Configuration can be used as documentation: since configuration is
applied by the documentation is always up-to-date
Configuration can be version controlled and managed the same way you
manage other code

6 | 28
10
WLS, OSB, SOA Suite Database Server
YUM + Packages / JVM /
Ulimits / Kernel / User /
Operating System 40
Group / Directories Operating system 40

WebLogic 13
WebLogic / BSU / Database
30
NodeManager software

OSB 8 OSB / OPatch Database


5
creation

SOA Suite 10 SOA Suite / OPatch


SOA Suite
8
Repository
Domain creation 10 Create Domain

Initial Domain
Logs / Security / JMS /
40 WebApps / DataSources /
setup X Total actions
Resource Adapters
Source: Roll Out a Complete Oracle Fusion Middleware Env in Less than 10min by Edwin Biemond 7 | 28
10
Automation

Automating repetitive steps is nothing new


● OS tools (jumpstart, kickstart, shell scripts, etc., etc.)
But…
● provisioning more environments than ever (cloudy)
● very complex multi-tier environments
New breed tools to standardise such a process
● platform-agnostic
● centralised
● fashionable

8 | 28
10
Puppet

9 | 28
10
Puppet Example | Apache HTTP Server
package { "httpd":
Manifests name => "httpd.x86_64",
ensure => "present",
Resources }

● Name file { "http.conf":


path => "/etc/httpd/conf/httpd.conf",
● Attributes and owner => root,
values group => root,
mode => 0644,
Ordering and source => "puppet:///modules/apache/httpd.conf",
require => Package["httpd"],
dependencies }
service { "httpd":
ensure => running,
enable => true,
subscribe => File["http.conf"],
}

10 | 28
10
More on Puppet | building blocks
if $operatingsystem == 'CentOS'
Manifests node 'www1.example.com' {
Variables and (custom) facts include common
include apache
Node declarations }
node 'db1.example.com' {
Classes and Modules include common
include mysql
Defined resource types }
Templates
file { "http.conf":
Console path => "/etc/httpd/conf/httpd.conf",
owner => 'root',
group => 'root',
mode => '0644',
content => template('config/httpd.erb'),
}

11 | 28
10
More on Puppet | console

12 | 28
10
More on Puppet | products, price, etc.
Enterprise vs. Open Source
Puppet Forge
Market presence
Pricing (27-nov-2013)

13 | 28
10
More on Puppet | runtime

Versus

14 | 28
10
If you want to know more about Puppet …

15 | 28
10
Chef

16 | 28
10
Chef architecture

Central
Chef Server

Multiple
Administrators

One
17 | 28
10
Repository
Chef| terminology
Node, Server, Workstation
Chef-client asks Chef-server about the policy for the node
Resources: a component and the desired state
Recipes: describe resources and desired state
Cookbooks: sets of recipes grouped together, also includes templates
and source files etc
Run List: recipes from cookbooks you want to run
Role: type of node

18 | 28
10
Example Recipe

paca
Template
specifies the
Policy says contents
package required
should be
installed
This service
should be
enabled on
reboot, and
must be
running
Source: Chef Fundamentals Webinar 1 #LEARNCHEF 19 | 28
10
I couldn’t find a screenshot of
enterprise one!

Open Source Chef Console

20 | 28
10
Configuration Drift
Not just used for initial installation
Chef’s policies means it knows desired state
Chef client runs periodically on node & checks state against policy

21 | 28
10
Chef in the wild
Enterprise vs. Open Source
Community & Popularity
Pricing (30-nov-2013)

22 | 28
10
More about Chef

23 | 28
10
Labs & Competition

24 | 28
10
Lab| intro
Teams of 3
Choose your poison
Setup & preparation
Hello World
Provision JDK 7
Provision WLS 12c

25 | 28
10
dashboard Browser
Lab controller

provisioning

provisioning
JDK 7 WLS 12c

VM

provisioning

provisioning
provisioning

provisioning
agent agent

JDK 7 WLS 12c JDK 7 WLS 12c

VM VM

26 | 28
10
Lab| eternal glory
Best Puppet team !!!
Best Chef team !!!
Best overall team !!!

Prize: Short interview with OTN @ 17.30

27 | 28
10
Thank you!
Ronald van Luttikhuizen
[email protected]

Simon Haslam
[email protected]

28 | 28
10

You might also like