Dr. Strangelove or: How I Learned to Stop Worrying and Love                                              the Self-Service ...
The Leading Provider of Ad Sales Systems to the Media MarketplaceCONFIDENTIAL PROPERTY OF INVISION INC.
The Media IndustryCONFIDENTIAL PROPERTY OF INVISION INC.                        3
The Media IndustryCONFIDENTIAL PROPERTY OF INVISION INC.                        4
About Me                                               Yes, I’ve been                                                here ...
What is Software Control?                       At this company                       SCM                       Build & ...
Once Upon a TimeCONFIDENTIAL PROPERTY OF INVISION INC.
CONFIDENTIAL PROPERTY OF INVISION INC.
CONFIDENTIAL PROPERTY OF INVISION INC.
SurviveCONFIDENTIAL PROPERTY OF INVISION INC.
CONFIDENTIAL PROPERTY OF INVISION INC.
Automation     !=Self-Service
Self-Service 1.0CONFIDENTIAL PROPERTY OF INVISION INC.
Self-Service 1.0CONFIDENTIAL PROPERTY OF INVISION INC.
Road to Provisioning                         Cloud           OS install      System                                       ...
In this Corner…                                         Available on       Available on                                   ...
Installation                       Runs on                        −         Windows                        −         Sola...
ControlTier ExplainedCONFIDENTIAL PROPERTY OF INVISION INC.                           18
using CTLcenter forself-service or continuous       deployment
using CTLcenter forself-service or continuous       deployment
using CTLcenter forself-service or continuous       deployment
<target name="putcode">     <exec executable="/opt/ctier/pkgs/ctl-3.6.0/bin/ctl-exec"failonerror="true">          <arg lin...
Show Me                                               THE                                             THANK               ...
DeploymentsCONFIDENTIAL PROPERTY OF INVISION INC.                 24
Helpdesk TicketsCONFIDENTIAL PROPERTY OF INVISION INC.                      25
Installation                        All deployments centralized for better control                        Self-service ena...
TAKEAWAYS            27
ProjectSuccess?           28
Instant Gratification?                         29
Normal workday?     Less firefighting, workday?       Is this your more planningCONFIDENTIAL PROPERTY OF INVISION INC.   30
THE END          31
Image Credits              http://upload.wikimedia.org/wikipedia/en/thumb/1/18/Drstrangelove1sheet-.jpg/220px-Drstrangelo...
Upcoming SlideShare
Loading in …5
×

Using ControlTier for Self-Service Build and Deployments

2,679 views
2,608 views

Published on

meetup.com/nycdevops/events/54160602/

Peter Kim presents "Dr. Strangelove : How I Learned to Stop Worrying and Love the Self-Service Build & Deployment Bomb. A DevOps Story with ControlTier”

Peter Kim is the Software Control Director at INVISION, Inc where he manages the build and release engineering operations for the company’s flagship product, DealMaker. Peter will discuss the challenges he faced when staffing decreased, forcing him to change his service model. He will also introduce ControlTier, an open source automation framework, and show how it helps development teams build better software faster through self-service deployment functionality.

Video: https://vimeo.com/42351065

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,679
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Confidential - Property of Invision Inc.
  • Confidential - Property of Invision Inc.
  • 2009 new management Changed the culture: Promote organic growth – build 2 new products Transition SDLC from waterfall to agile scrum Company reorg!
  • Team of 5, reduced to 2 New goals: Survive &amp; Accomplish more, by working smarter Provide self-service
  • Team of 5, reduced to 2 New goals: Survive &amp; Accomplish more, by working smarter Provide self-service
  • Talk about 0 and 1 touch deployments, then discuss the need for self-service Doesn ’t work for this business need We initially tried to use what we had. We enabled one touch deployments for our scrum teams, using CruiseControl. We experienced mixed results. Use the dashboard, invoke a build and the code deploys. However there are a few issues. Build redundancy and bottlenecking. It doesn ’t scale.
  • Connect to nodes via SSH (private keys) - Run script, write a script - script file, calling existing files on a local server - Command, echo, shell commands - defined commands from existing modules from moduleforge, ant tasks, kill, ps, netutil, tgz, zip - Job reference (call another job) Threadcounts (for serial or parallel runs) Logs levels, from very verbose to just errors (one time or recurring) Command line interface or web based UI (jetty) There are 4 components: CTL – distributed command dispatching framework Workbench – resource model repository, lists node definitions, build artifacts, builders, updaters, etc. Ctlcenter – web based GUI for CTL, also supports scheduled jobs Moduleforge – collection of reusable CTL commands and workflows &amp; plugins for popular tools, ie puppet, svn, maven, hudson
  • In this design pattern, the existing call to the ctl Build command will now feature an additional setBuildstamp operation which will record the latest version built. The new Updater, to be triggered by a CTLCenter job, will asynchronously execute the cruisecontrol project&apos;s build via the appropriate url, subsequently block by polling for the imminent buildstamp setting update, to be followed by a typical Change-Dependencies/Deploy operation. If no update is detected in a configurable amount of time, the updater will time out and fail.
  • In this design pattern, the existing call to the ctl Build command will now feature an additional setBuildstamp operation which will record the latest version built. The new Updater, to be triggered by a CTLCenter job, will asynchronously execute the cruisecontrol project&apos;s build via the appropriate url, subsequently block by polling for the imminent buildstamp setting update, to be followed by a typical Change-Dependencies/Deploy operation. If no update is detected in a configurable amount of time, the updater will time out and fail.
  • In this design pattern, the existing call to the ctl Build command will now feature an additional setBuildstamp operation which will record the latest version built. The new Updater, to be triggered by a CTLCenter job, will asynchronously execute the cruisecontrol project&apos;s build via the appropriate url, subsequently block by polling for the imminent buildstamp setting update, to be followed by a typical Change-Dependencies/Deploy operation. If no update is detected in a configurable amount of time, the updater will time out and fail.
  • Describe the new ant targets for the build.xml This one calls “Change-Dependencies” The CTL-EXEC command is used to remotely execute ad-hoc shell commands on a set of nodes which are specified by the filter options. The remote shell command that is invoked is specified after the -- on the command-line. This string should begin with the command name and be followed by any arguments you want to pass to it.
  • http://eqxcoctier:8080/ctlcenter Show folders, by scrum team view GF Head build &amp; deploy Show CruiseControl dashboard, demonstrate build is kicked off (atlbuild1:8880) SOS HEAD Deploy Demonstrate the picklist Invoke the job
  • Calculated from FootPrints Software Control project. # of builds are the number of tickets related to build, deployments and supporting enviroments
  • Management Support - who is the champion of your cause? Organizational culture stakeholders – what ’s in it for me? accomplish more when no one cares who ’s getting the credit
  • Everyone wants results right away. Good ideas can be spoiled easily Through patience you will achieve excellence.
  • Technology innovation drives the business Self service frees up resources for higher value work
  • Using ControlTier for Self-Service Build and Deployments

    1. 1. Dr. Strangelove or: How I Learned to Stop Worrying and Love the Self-Service Build & Deployment Bomb A DevOps Story with ControlTier Presented by Peter Kim Humble Software Control Grand Poobah March 21, 2012 Twitter: @peterpkim peter.kim@invisioninc.com The Leading Provider of Ad Sales Systems to the Media MarketplaceCONFIDENTIAL PROPERTY OF INVISION INC.
    2. 2. The Leading Provider of Ad Sales Systems to the Media MarketplaceCONFIDENTIAL PROPERTY OF INVISION INC.
    3. 3. The Media IndustryCONFIDENTIAL PROPERTY OF INVISION INC. 3
    4. 4. The Media IndustryCONFIDENTIAL PROPERTY OF INVISION INC. 4
    5. 5. About Me Yes, I’ve been here a long time…CONFIDENTIAL PROPERTY OF INVISION INC. 5
    6. 6. What is Software Control? At this company SCM Build & Release Engineering Database Administration Environment ManagementCONFIDENTIAL PROPERTY OF INVISION INC. 6
    7. 7. Once Upon a TimeCONFIDENTIAL PROPERTY OF INVISION INC.
    8. 8. CONFIDENTIAL PROPERTY OF INVISION INC.
    9. 9. CONFIDENTIAL PROPERTY OF INVISION INC.
    10. 10. SurviveCONFIDENTIAL PROPERTY OF INVISION INC.
    11. 11. CONFIDENTIAL PROPERTY OF INVISION INC.
    12. 12. Automation !=Self-Service
    13. 13. Self-Service 1.0CONFIDENTIAL PROPERTY OF INVISION INC.
    14. 14. Self-Service 1.0CONFIDENTIAL PROPERTY OF INVISION INC.
    15. 15. Road to Provisioning Cloud OS install System Configuration Application Service OrchestrationCONFIDENTIAL PROPERTY OF INVISION INC. 15
    16. 16. In this Corner… Available on Available on sourceforge github  Open source cross-platform framework used to coordinate application service tasks via command dispatchingCONFIDENTIAL PROPERTY OF INVISION INC. 16
    17. 17. Installation  Runs on − Windows − Solaris − Linux − Mac OS X  RPMs for Linux, self-contained .zip for Windows  Requires Java 5/6  Cygwin/SSH for Windows clients & public keys  Authentication: file-based (default) or AD/LDAPCONFIDENTIAL PROPERTY OF INVISION INC. 17
    18. 18. ControlTier ExplainedCONFIDENTIAL PROPERTY OF INVISION INC. 18
    19. 19. using CTLcenter forself-service or continuous deployment
    20. 20. using CTLcenter forself-service or continuous deployment
    21. 21. using CTLcenter forself-service or continuous deployment
    22. 22. <target name="putcode"> <exec executable="/opt/ctier/pkgs/ctl-3.6.0/bin/ctl-exec"failonerror="true"> <arg line="-p projectname -I hostname=controltierserver --ctl -p projectname -t Site -r head -c Change-Dependencies ---buildstamp ${label}"/> </exec></target> 22
    23. 23. Show Me THE THANK DEMO! YOU!CONFIDENTIAL PROPERTY OF INVISION INC. 23
    24. 24. DeploymentsCONFIDENTIAL PROPERTY OF INVISION INC. 24
    25. 25. Helpdesk TicketsCONFIDENTIAL PROPERTY OF INVISION INC. 25
    26. 26. Installation All deployments centralized for better control Self-service enables greater efficiency: − Dev teams can generate builds & deployments as often as they need − Saving time and resources for higher value work More sleepCONFIDENTIAL PROPERTY OF INVISION INC. 26
    27. 27. TAKEAWAYS 27
    28. 28. ProjectSuccess? 28
    29. 29. Instant Gratification? 29
    30. 30. Normal workday? Less firefighting, workday? Is this your more planningCONFIDENTIAL PROPERTY OF INVISION INC. 30
    31. 31. THE END 31
    32. 32. Image Credits  http://upload.wikimedia.org/wikipedia/en/thumb/1/18/Drstrangelove1sheet-.jpg/220px-Drstrangelove1sheet-.jpg  http://swimallday.files.wordpress.com/2010/01/outsidebox.jpg  http://www.whatsupmovies.com/wp-content/uploads/2011/06/terminator-wallpaper.jpg  http://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Apache-Ant-logo.svg/554px-Apache-Ant-logo.svg.pn  http://en.wikipedia.org/wiki/File:Pointy-Haired_Boss.jpg  http://en.wikipedia.org/wiki/File:Catbert.png  http://images2.fanpop.com/image/photos/9200000/The-Mario-Bros-mario-and-luigi-9298164-1955-2560.jpg  http://media.giantbomb.com/uploads/2/29679/896723-kong_super.jpg  http://media.animevice.com/uploads/2/21764/364936-yoshi_1.jpg  http://2.bp.blogspot.com/_URZ4amy3VZE/TP1R5pICRzI/AAAAAAAAA0I/Q_r1SpZ97qI/s1600/SMB-td.png  http://media.giantbomb.com/uploads/7/70862/1223610-red_shell__mario_kart_wii__super.jpeg  http://www.flickr.com/photos/cmbruno/3524716446/  http://www.flickr.com/photos/srivera/2800698842  http://blondesearch.ru/play/godXhR2jdkY/Dilbert%253A_It_Pays_to_Be_Wally_and_Employee_of_the_Week_Vide  http://thepopcornjunkie.com/2012/03/05/show-me-the-estimates-us-box-office/  http://media.threadless.com/subs/big/285250.jpgCONFIDENTIAL PROPERTY OF INVISION INC. 32

    ×