Reduce DevOps Friction with Docker & Jenkins by Andy Pemberton, Cloudbees
Jenkins Enterprise by CloudBees Webinar
-
Upload
cloudbees -
Category
Technology
-
view
1.392 -
download
2
description
Transcript of Jenkins Enterprise by CloudBees Webinar
![Page 1: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/1.jpg)
©2010 CloudBees, Inc. All Rights Reserved
©2010 CloudBees, Inc. All Rights Reserved
Jenkins Enterprise by CloudBees Kohsuke Kawaguchi Harpreet Singh Jan 10th, 2012
©2011 Cloud Bees, Inc. All Rights Reserved
![Page 2: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/2.jpg)
©2010 CloudBees, Inc. All Rights Reserved
2 ©2010 CloudBees, Inc. All Rights Reserved
• Jenkins Enterprise by CloudBees – Introduction – Overview
• Jenkins Enterprise by CloudBees – Deep Dive
Agenda
©2011 CloudBees, Inc. All Rights Reserved
![Page 3: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/3.jpg)
©2010 CloudBees, Inc. All Rights Reserved
3 ©2010 CloudBees, Inc. All Rights Reserved
![Page 4: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/4.jpg)
©2010 CloudBees, Inc. All Rights Reserved
4 ©2010 CloudBees, Inc. All Rights Reserved
Most adopted CI server
524
180
61
56
23
9
0 200 400 600
Jenkins
Hudson
Bamboo
TeamCity
CruiseControl
Continuum
79
17
13
10
2
2
0 20 40 60 80
Jenkins
Hudson
Bamboo
TeamCity
Pulse
Travis
30% 32% Maven Jenkins
Source: Eclipse Community Survey 2011
Devoxx Nov 2011
Ongoing poll by John Smart, early 2011
What build & release management products do you typically use?
![Page 5: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/5.jpg)
©2010 CloudBees, Inc. All Rights Reserved
5 ©2010 CloudBees, Inc. All Rights Reserved
Situation
©2011 CloudBees, Inc. All Rights Reserved
82% 92%
![Page 6: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/6.jpg)
©2010 CloudBees, Inc. All Rights Reserved
6 ©2010 CloudBees, Inc. All Rights Reserved
Complication
©2011 CloudBees, Inc. All Rights Reserved
87% * Numbers added for the top 3 priority responses in Jenkins Survey
72%
![Page 7: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/7.jpg)
©2010 CloudBees, Inc. All Rights Reserved
7 ©2010 CloudBees, Inc. All Rights Reserved
Implication
©2011 CloudBees, Inc. All Rights Reserved
Better job chaining
make building a plugin easier
Better admin tols/plugin
Pre‐commit requirement
more detailed examples
Better QA. There seems to be a lot of regressions.
Server recommendations Better uptime
Better UI.
Provide video tutorials.
Easily manage build jobs for different branches from a single configuration.
Sooner updates in Jenkins plugins! Create a mobile app.
72%
![Page 8: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/8.jpg)
©2010 CloudBees, Inc. All Rights Reserved
8 ©2010 CloudBees, Inc. All Rights Reserved
Introducing Jenkins Enterprise by CloudBees
©2011 CloudBees, Inc. All Rights Reserved
Position Longer Term Support and Enterprise‐y Plugins
Benefit Fast issue resolutions & greatly improved management
Action evaluate (support){ // meets my organizational needs … } evaluate (plugins){ // makes my life easier … }
![Page 9: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/9.jpg)
©2010 CloudBees, Inc. All Rights Reserved
9 ©2010 CloudBees, Inc. All Rights Reserved
• In a nutshell – Subscription – Technical support + Value-add plugins
• Current Themes – For large installations – Security for enterprise – Optimized utilization
• Upcoming Themes – HA – Reporting
Jenkins Enterprise by CloudBees
![Page 10: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/10.jpg)
©2010 CloudBees, Inc. All Rights Reserved
10 ©2010 CloudBees, Inc. All Rights Reserved
©2011 CloudBees, Inc. All Rights Reserved
Jenkins Enterprise Themes and Plugins
Large Installation
• Folders • Templates • Backup
Security
• Roles‐based Access Control
• Wikitext Descriptions
Optimized Utilization
• Auto‐scaling for VMWare installations
• Throttled Build Execution
• Even Load Strategy
• Skip Next Build
![Page 11: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/11.jpg)
©2010 CloudBees, Inc. All Rights Reserved
11 ©2010 CloudBees, Inc. All Rights Reserved
Jenkins LTS • Jenkins weekly too
often • Addressed by LTS
– ~ every 3 months
• If you are not on it…you should be!
JE by CloudBees • LTS supported for 9
additional months – Orgs can be on LTS for 1
year.
• Orgs get support on Jenkins and not on a proprietary release
Longer term support
©2011 CloudBees, Inc. All Rights Reserved
![Page 12: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/12.jpg)
©2010 CloudBees, Inc. All Rights Reserved
12 ©2010 CloudBees, Inc. All Rights Reserved
©2011 CloudBees, Inc. All Rights Reserved
![Page 13: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/13.jpg)
©2010 CloudBees, Inc. All Rights Reserved
13 ©2010 CloudBees, Inc. All Rights Reserved
Jenkins Enterprise = LTS + plugins
• No forked codebase – All changes pushed to upstream now – You can move between main line, LTS, and
JE without a loss
• Version number reflects this
1.424.1.1
![Page 14: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/14.jpg)
©2010 CloudBees, Inc. All Rights Reserved
14 ©2010 CloudBees, Inc. All Rights Reserved
Using CloudBees plugins on OSS Jenkins
• If you want to stay on the mainline for new features, that’d be fine with us!
• Install CloudBees update center as 2nd update center – 1.437 or later required – Run a script* from Groovy Console
* https://raw.github.com/cloudbees/ride‐jenkins/master/ride‐jenkins.groovy
![Page 15: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/15.jpg)
©2010 CloudBees, Inc. All Rights Reserved
What’s new in 2011.10?
![Page 16: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/16.jpg)
©2010 CloudBees, Inc. All Rights Reserved
16 ©2010 CloudBees, Inc. All Rights Reserved
Even load scheduler
• Jenkins assigns jobs to where it run before – Many reasons to do this: SCM checkouts,
warm local cache (Maven/ivy/gems) • But this can create uneven load
Slave 1
Busy
Busy
Idle
Slave 2
Idle
Idle
Idle
![Page 17: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/17.jpg)
©2010 CloudBees, Inc. All Rights Reserved
17 ©2010 CloudBees, Inc. All Rights Reserved
Even load scheduler
• With this plugin… – per job or as global default
• Use this when builds aren’t sticky – If you are doing full checkout anyway – Storage is network mounted
![Page 18: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/18.jpg)
©2010 CloudBees, Inc. All Rights Reserved
18 ©2010 CloudBees, Inc. All Rights Reserved
Skip Next Build
![Page 19: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/19.jpg)
©2010 CloudBees, Inc. All Rights Reserved
19 ©2010 CloudBees, Inc. All Rights Reserved
Skip Next Build
• Use this when… – Large refactoring with instability – External test resources offline for
maintenance
• Similar to “disabled build” in effect but it’ll come back to normal automatically
![Page 20: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/20.jpg)
©2010 CloudBees, Inc. All Rights Reserved
20 ©2010 CloudBees, Inc. All Rights Reserved
Recap: VMWare plugin
• ESXi or vCenter • Auto-scaling – Launches/stops VMs based on load – Automatic IP detection on boot
• Snapshot/restore handling – Helps you maintain clean slaves
![Page 21: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/21.jpg)
©2010 CloudBees, Inc. All Rights Reserved
21 ©2010 CloudBees, Inc. All Rights Reserved
VMWare Plugin Improvements
• Jenkins will use all the machines in a vCenter folder
![Page 22: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/22.jpg)
©2010 CloudBees, Inc. All Rights Reserved
22 ©2010 CloudBees, Inc. All Rights Reserved
More improvements
• XML/JSON API support on VMWare objects
• Load statistics graph support • UUID-based more reliable machine
tracking
![Page 23: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/23.jpg)
©2010 CloudBees, Inc. All Rights Reserved
Demo: views in folders
![Page 24: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/24.jpg)
©2010 CloudBees, Inc. All Rights Reserved
24 ©2010 CloudBees, Inc. All Rights Reserved
Template Plugin
• Ever had a lot of jobs that look similar? – Changing them all is painful
• Ever wanted to “lock down” the job
setting so that devs only modify a few things?
![Page 25: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/25.jpg)
©2010 CloudBees, Inc. All Rights Reserved
25 ©2010 CloudBees, Inc. All Rights Reserved
Template Plugin in a nutshell
• Actors – Admins: people who defines templates – Users: people who use templates
![Page 26: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/26.jpg)
©2010 CloudBees, Inc. All Rights Reserved
Demo: Hello World Builder
![Page 27: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/27.jpg)
©2010 CloudBees, Inc. All Rights Reserved
27 ©2010 CloudBees, Inc. All Rights Reserved
Benefits
• Templates appear as 1st class citizen – Almost the same result as writing a custom
plugin • It speaks the terms users understand – A lot more approachable for busy developers
• Updating is lot less painful
©2010 CloudBees, Inc. All Rights Reserved
![Page 28: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/28.jpg)
©2010 CloudBees, Inc. All Rights Reserved
Demo: Hello World Job
![Page 29: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/29.jpg)
©2010 CloudBees, Inc. All Rights Reserved
29 ©2010 CloudBees, Inc. All Rights Reserved
More on templating
• Programmability in transformation – Via Groovy Server Page or Jelly – Conditionals, loops, function calls, …
• Models are portable – You can define it once, deploy elsewhere
![Page 30: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/30.jpg)
©2010 CloudBees, Inc. All Rights Reserved
30 ©2010 CloudBees, Inc. All Rights Reserved
More on templating
• Inheritance & composition Car
Engine
Transmission
Automatic
Manual
![Page 31: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/31.jpg)
©2010 CloudBees, Inc. All Rights Reserved
31 ©2010 CloudBees, Inc. All Rights Reserved
Conclusions • Jenkins Enterprise for more Enterprise-y
features • Next Steps – Learn More
• Overview – http://www.cloudbees.com/jenkins-enterprise-by-
cloudbees.cb • User guide
– http://wiki.cloudbees.com/bin/view/Jenkins+Enterprise/WebHome
– Download • 30 day free trial
![Page 32: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/32.jpg)
©2010 CloudBees, Inc. All Rights Reserved
32 ©2010 CloudBees, Inc. All Rights Reserved
Going larger
• Large scale automation beyond simple build/test/report – Caveat: not everything is fully cooked
• Verified component integration • Build pipeline • Workflow
![Page 33: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/33.jpg)
©2010 CloudBees, Inc. All Rights Reserved
33 ©2010 CloudBees, Inc. All Rights Reserved
Going smaller
• Let developers use Jenkins for doing their private builds
• Validated merge – Prevent a developer error from appearing in
the trunk – AKA pre-tested commit
![Page 34: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/34.jpg)
©2010 CloudBees, Inc. All Rights Reserved
34 ©2010 CloudBees, Inc. All Rights Reserved
Extensibility
• Many pluggable/extensible aspects – Proof is in the # of plugins
• Full lifecycle assistance to plugin development – Including assistance in IDE – From skeleton to release
• Reasonable documentation
©2010 CloudBees, Inc. All Rights Reserved
⇒ resulted in large number of in‐house custom plugins
![Page 35: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/35.jpg)
©2010 CloudBees, Inc. All Rights Reserved
35 ©2010 CloudBees, Inc. All Rights Reserved
Jenkins as a platform • Extensibility enables Jenkins to be a
building block for in-house tool integration
• Many available APIs – HTTP REST, CLI, Java inter-process
remoting • Example – IOS build with Jenkins here at Cisco – Janky by GitHub
![Page 36: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/36.jpg)
©2010 CloudBees, Inc. All Rights Reserved
36 ©2010 CloudBees, Inc. All Rights Reserved
CloudBees and Jenkins
• Sponsors OSS Jenkins development • Provides other resources – Sponsored Jenkins User Conference – Bug bounty program – Fund via donation to SPI
![Page 37: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/37.jpg)
©2010 CloudBees, Inc. All Rights Reserved
37 ©2010 CloudBees, Inc. All Rights Reserved
CloudBees and Jenkins
• DEV@cloud – Hosted Jenkins, utility pricing model – Simplify deployment and administration
• Jenkins Enterprise by CloudBees – Subscription – Technical support + Value-add plugins
![Page 38: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/38.jpg)
©2010 CloudBees, Inc. All Rights Reserved
38 ©2010 CloudBees, Inc. All Rights Reserved
Jenkins Enterprise by CloudBees
• In a nutshell – Subscription – Technical support + Value-add plugins
• Themes – For large installations – Security for enterprise – Optimized utilization
![Page 39: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/39.jpg)
©2010 CloudBees, Inc. All Rights Reserved
39 ©2010 CloudBees, Inc. All Rights Reserved
Jenkins LTS • Jenkins weekly too
often • Addressed by LTS
– ~ every 3 months
• If you are not on it…you should be!
JE by CloudBees • LTS supported for 9
additional months – Orgs can be on LTS for 1
year. – Mitigating risks
• Orgs get support on Jenkins and not on a proprietary release – Mitigating risks
Long..er term support
©2011 CloudBees, Inc. All Rights Reserved
![Page 40: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/40.jpg)
©2010 CloudBees, Inc. All Rights Reserved
40 ©2010 CloudBees, Inc. All Rights Reserved
• Hierarchical Folders – Organize jobs into a tree structure – Simple security enforcement
• Role-based Access Control – Split access control from job configuration –Work with indifferent IT ops
• Templates – Make your Jenkins “speak” org-specific
terms and build processes
Value-add Plugins
©2011 CloudBees, Inc. All Rights Reserved
![Page 41: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/41.jpg)
©2010 CloudBees, Inc. All Rights Reserved
Demo
![Page 42: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/42.jpg)
©2010 CloudBees, Inc. All Rights Reserved
42 ©2010 CloudBees, Inc. All Rights Reserved
• Auto-scaling with VMWare ESXi/vCenter • New scheduler algorithm that prefers
more even loading • Hypervisor-aware build throttling • WikiText for XSS prevention • Backup
… and more
©2011 CloudBees, Inc. All Rights Reserved
![Page 43: Jenkins Enterprise by CloudBees Webinar](https://reader034.fdocuments.net/reader034/viewer/2022042813/54b68c3e4a7959264e8b45bd/html5/thumbnails/43.jpg)
©2010 CloudBees, Inc. All Rights Reserved
Q&A