More Related Content Similar to CloudBees Toronto Presentation (20) CloudBees Toronto Presentation1. Jenkins Enterprise by CloudBees
Building a Continuous Delivery Pipeline
Mark Prichard, CloudBees
February 6th, 2013
©2012 CloudBees, Inc. All Rights
Reserved
2. Have you met Jenkins?
• #1 OSS CI server
• Easy to install/use
• Extensible via 600+ plugins
• Widely adopted
– 47K+ installations
• Very active community
– Over 7 years of history, 440+ releases
– 600+ plugins, 300+ developers
• Jenkins Enterprise value-adds
2
3. About CloudBees
Who
are
we?
We
are
the
premier
provider
of
Jenkins
CI
services
&
support!
Why
are
we
§ Jenkins
creator
&
community
lead
Kohsuke
Kawaguchi
on
special?
the
CloudBees
team
§ Contributed
over
80%
of
the
core
Jenkins
code
§ We
support
all
OSS
Jenkins
plugins
§ Developed
Jenkins
as
a
Service
§ Developed
Enterprise
Level
value
add-‐ons
for
Jenkins
§ 2,000+
masters
-‐
the
largest
Jenkins
installaLon
in
the
world
§ Maven
experts
on
the
team
as
well
We
really
are
the
experts!
©2012 CloudBees, Inc. All Rights 3
Reserved
4. What is Jenkins Enterprise by
CloudBees?
Jenkins
Enterprise
is
Jenkins
LTS
+
Enterprise
Features,
backed
by
Professional
Support
Jenkins
Community
Community
Jenkins
LTS
Plugins
Jenkins
Enterprise
by
Professional
Enterprise
Support
Plugins
CloudBees
CloudBees
©2012 CloudBees, Inc. All Rights 4
Reserved
5. Jenkins Enterprise Plugins
Large
OpLmized
Security
InstallaLon
ULlizaLon
• Folders
• Roles-‐based
• Auto-‐scaling
for
• Folders
Plus*
Access
Control
VMWare
• Templates
• WikiText
installaLons
• Backup
DescripLons
• ThroZled
Build
• Secure
Copy
ExecuLon
• High
Availability
• Even
Load
• Custom
Update
Strategy
Centers
• Skip
Next
Build
• Validated
Merges
• Fast
Archiving
• Plugin
Usage*
*
New
features
November
2012
©2012 CloudBees, Inc. All Rights 5
Reserved
6. Large Installation Plugins
What
is
it?
How
does
it
help
me?
Folders
Enterprise -‐ Save
Lme
by
easily
organizing
and
Organize
jobs
into
folders
CriLcal
managing
hundreds
of
jobs
-‐
By
jobs,
department…
-‐ Secure
folders
by
roles
–
keep
unauthorized
users
away
Backup
Enterprise
-‐ No
longer
maintain
scripts,
cron
jobs
to
Back
up
Jenkins
CriLcal
back
up
Jenkins
-‐ Back
up
Jenkins
from
within
Jenkins
-‐ Sleep
peacefully
–
knowing
that
you
are
backing
up
J
Custom
Update
Centers
-‐ Eliminates
downLme
Host
your
own
update
centers
easily
-‐ Ensures
binary/plugin
compaLbility
-‐ Specify
plugins
and
versions
of
plugins
between
teams
acceptable
-‐ No
painful
debugging
sessions,
weeks
-‐ Inherit
from
other
update
centers
a`er
check-‐ins
-‐ No
blame
game
between
teams
©2012 CloudBees, Inc. All Rights 6
Reserved
7. Best Practice: Custom Update Centers
• Get everyone on the same page
• Easy to create your own update center
• Host your plugin or binaries
• Inherit from upstream update centers
• Specify version number of binaries or
plugins to be promoted
7
8. Large Installation Plugins
What
is
it?
How
does
it
help
me?
Enterprise
Validated
Merges
CriLcal
-‐ Eliminates
downLme
Gate
your
repository
-‐ No
broken
repository!
-‐
Jenkins
only
merges
good
code
-‐ Developers
save
Lme
not
running
“mandatory”
tests
-‐ Bad
check-‐in
impacts
just
the
developer
and
not
the
team.
Templates
Enterprise
-‐ Quickly
set
up
new
jobs/builders
based
CriLcal
Capture
“sameness”
of
jobs
on
a
type
-‐ TemplaLze
jobs,
builders
-‐ Instantly
propagate
configuraLon
changes
to
all
jobs
-‐ Stop
debugging
configuraLon
errors
by
shielding
user
from
configuraLon
complexity
©2012 CloudBees, Inc. All Rights 8
Reserved
9. Best Practice: Validated Merge
• Shield your repository
• Rely on Jenkins…
– Push your code to Jenkins
– Jenkins builds, verifies and merges with
upstream
• Result
– No downtime due to bad commits
– Tremendous productivity boost
9
10. Best Practice: Templates
• Talk in the users domain specific
language
– Shield them
• Capture sameness of jobs, build steps
– Replicate them
• Faster route to success
– building plugins without writing code
10
11. Large Installation Plugins
What
is
it?
How
does
it
help
me?
Folders
Plus
New
-‐ Keep
sensiLve
team-‐specific
Dedicate
slaves
to
a
folder
informaLon
on
slave
without
risk
of
it
-‐
Restrict
slaves
to
a
team
or
project
being
shared
outside
the
team
-‐ Assign
dedicated
resources
to
high
priority
projects
Plugin
Usage
New
-‐ ProacLvely
manage
plugins
Track
plugins
-‐ Know
the
list
of
jobs
that
are
impacted
-‐
See
jobs
dependent
on
a
plugin
when
upgrading/deleLng
plugins
High
Availability
Enterprise
-‐ Eliminates
downLme
Standby
for
masters
CriLcal
-‐ Improves
the
availability
of
your
service
-‐ Survive
master
&
hardware
outages
-‐ No
more
P1
drills
to
recover
from
-‐ Failover
standby
master(s)
automaLcally
Jenkins
failure
takes
over
on
service
failure
-‐ No
more
midnight
pagers
–
have
a
-‐ Do
rolling
upgrade
of
Jenkins
happier
married
life
J
©2012 CloudBees, Inc. All Rights 11
Reserved
12. Best Practice: High Availability Plugin
• Failure detection and Reverse
Proxy
recovery is automatic
• Multiple Jenkins masters act
as backups waiting for a Jenkins
Master
Jenkins
Master
primary master failure
• Can be used to do rolling Jenkins
Cluster
MT
upgrades of Jenkins
• Backup Scheduling Plugin: JENKINS_HOME
(NFS)
back up to the Cloud
12
13. Security Plugins
What
is
it?
How
does
it
help
me?
Roles-‐based
Access
Control
(RBAC)
-‐ Save
Lme
by
sejng
up
authorizaLon
by
Define
roles
and
permissions
roles
and
not
by
individual
users
-‐ Define
roles
and
add
users
to
roles
-‐ Easily
set
up
simple
scenarios
like
-‐ Protect
resources
using
permission
project-‐based
security
Enterprise
-‐ Protect
folders,
jobs
using
roles
CriLcal
-‐ Set
up
complex
scenarios
easily
–
like
secret
projects
-‐ Work
with
any
Jenkins
authenLcaLon
providers
WikiText
DescripOons
-‐ Prevent
XSS
scripLng
aZacks
on
publicly
Use
wikitext
for
descripKon
fields
exposed
Jenkins
instances
Secure
Copy
-‐ Eliminates
Lme
wasted
in
manually
Copy
arKfacts
between
Jenkins
instances
exchanging
“correct”
arLfacts
between
-‐ Exchange
arLfacts
between
teams
teams
-‐ Jobs
can
automaLcally
fetch
arLfacts
from
upstream
©2012 CloudBees, Inc. All Rights 13
Reserved
14. Role-Based Access Control
• Simple matrix of click- Authentication Features
boxes Provides group details
Row: role (Optional)
Column: permission Supports group lookup
(Optional) Feature
• Define groups at any level
✓ Per-project configuration
• Assign roles to groups ✓ Per-object configuration
• Filter roles at any level ✓ Subtractive permissions
model
✓* Supports external groups
✓ Local group definition
✓ Delegate management
14
15. Optimized Utilization Plugins
What
is
it?
How
does
it
help
me?
VMWare
Auto-‐scaling
-‐ Save
dollars
by
efficiently
renLng
pools
or
Use
VMWare
machines
as
slaves
folders
of
machines
instead
of
buying
new
-‐ Set
up
an
internal
cloud
of
machines
machines
-‐ Rent
capacity
from
exisLng
machines
-‐ Easily
increase
or
decrease
capacity
–
just
add
machines
to
folders,
no
complex
configuraLons
Label
ThroQled
Build
ExecuOon
-‐ Faster
builds
as
Jenkins
uses
the
specified
Efficiently
uKlize
VMs
on
a
host
machine
hardware
capacity
of
a
host
machine
to
-‐ No
thrashing
of
oversubscribed
VMs
allocate
jobs
Fast
Archiver
-‐ Faster
builds.
Save
Lme!
Faster
upload
of
archives
from
slaves
to
-‐ BeZer
bandwidth
usage
masters
-‐ Send
the
compressed
difference
of
archives
©2012 CloudBees, Inc. All Rights 15
Reserved
16. Optimized Utilization Plugins
What
is
it?
How
does
it
help
me?
Skip
Next
Build
-‐ Save
Lme
handling
false
negaLves
when
Skips
building
for
a
specified
period
project
is
in
a
lot
of
“expected”
churn
-‐ AutomaLcally
turns
on
building
a`er
the
specified
period
Even
Load
Strategy
-‐ Faster
builds
where
checkout
costs
are
Go
to
under-‐uKlized
slave
for
builds
comparaLve
to
update
for
repositories
-‐ Replaces
job
allocaLon
algorithm
to
go
to
under-‐uLlized
slave
rather
than
the
“favorite”
slave
©2012 CloudBees, Inc. All Rights 16
Reserved
17. Thank
You!
More
Info
hZp://www.cloudbees.com/jenkins-‐enterprise-‐by-‐cloudbees-‐overview.cb
Free
Trial
hZp://www.cloudbees.com/jenkins-‐enterprise-‐by-‐cloudbees-‐download.cb
Wiki
Page
hZps://wiki.cloudbees.com/bin/view/Jenkins+Enterprise/WebHome
User
Guide
hZp://jenkins-‐enterprise.cloudbees.com/docs/user-‐guide-‐bundle/index.html#
Training
hZp://www.cloudbees.com/training.cb
©2012 CloudBees, Inc. All Rights 17
Reserved