HP Operations Orchestration Use Case Automated Application Release

  • Slides: 24
Download presentation
HP Operations Orchestration Use Case Automated Application Release Hilton Rosenfeld CEO Stratospheric © Copyright

HP Operations Orchestration Use Case Automated Application Release Hilton Rosenfeld CEO Stratospheric © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Agenda The Customer The Business Problem The Existing Release Process The Automated Release Process

Agenda The Customer The Business Problem The Existing Release Process The Automated Release Process − Constrains and Requirements − Methodology and Design Principles − Implementation Business Outcome Maintainability 2 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

The Customer News Corporation • • • 3 Australia’s largest media company News Corp

The Customer News Corporation • • • 3 Australia’s largest media company News Corp is the world's 2 nd largest media conglomerate (behind Walt Disney) Extremely Siloed Many duplicate tools Very Immature IT Processes Disillusioned with HP Market Cap: Staff: US$76 B 8, 000 (Australia) 25, 600 (Global) Products: Newspapers Magazines Internet Services: © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice. Pay TV National Rugby League Market research DVD and Film distribution Film and TV production

The Business Problem Internal News presentation to secure funding • Releases to test environments

The Business Problem Internal News presentation to secure funding • Releases to test environments are currently handed over to Operations for actioning. • This causes a lag in the dev, test, ops cycle. CDP Phase 2 The automation of application deployments to test environments Iteration 1 : Fatwire “…if releases can be automated this will February 2013 increase our ability to deliver to our customers in a timely fashion…” 4 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice. Product views may not represent actual product screens.

Existing Release Process © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained

Existing Release Process © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Developer Creates JIRA Ticket The ticket is populated with the release details and emailed

Developer Creates JIRA Ticket The ticket is populated with the release details and emailed to Operations Release Details Includes: • • Title Application Version Target Environment Schedule Impact, Urgency, Priority, Risk Build Results Dependencies • Artefacts (release components) • Release Tasks – (release steps) • Copy into an SM 7 Change Ticket 6 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Operations Apply Changes Manually applied to multiple servers using Linux Shell Operations Tasks: •

Operations Apply Changes Manually applied to multiple servers using Linux Shell Operations Tasks: • Notification arrives via email that a release is scheduled • Execute the release upon SM 7 approval • Release Method: − On each server, the operator will open a shell and type in the commands. − This relies heavily on the operators knowledge as the instructions in the Jira ticket are not very detailed. − If anything fails, the operator will mark the SM 7 ticket as failed and escalate back to developers. Time Required = 2 - 4 hours 7 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Automated Release Process © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained

Automated Release Process © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Constraints and Requirements There is a better way • • Automate the deployment of

Constraints and Requirements There is a better way • • Automate the deployment of application packages across non-production environments. Support multiple applications / versions, to any environment. • • HP OO by itself is not the ideal solution to this requirement We tried to position Continuous Delivery Automation or SA with ADM BUT • • 9 The customer refuses to spend on any new software (especially HP) They have a preference for develop first, buy second © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Methodology The OO Flow Design Principles • • Invent a machine readable structure for

Methodology The OO Flow Design Principles • • Invent a machine readable structure for release steps Use sub-flows. • • • 10 This is a complex process that has to be broken down into smaller pieces Experiences and lessons learned? • Customer did not understand the process until we automated it • Some processes are not suited to OO Dynamically set the RAS. Use a global Error Handler Enable SME contributors to author content © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

XML Data Structure Used to ensure that the release instructions are machine readable •

XML Data Structure Used to ensure that the release instructions are machine readable • How to represent free text instructions in OO readable form. • Analysed hundreds of JIRA tickets and their instructions. • Instructions comprise few unique steps that are repeated often. • Selected XML to represent the data, as it is naturally structured. 11 <release> <application>Fatwire</application> <version>9. 7. 4</version> <environemnt>SIT 1</environemnt > <components>Impact, Unify, Methode, Social, CDP</components> <ticket. ID>C 145728</ticket. ID> <schedule>20121217</schedule> <artifacts> <item> <type>rpm</type> <name>news-centraltech-fatwire-cs-war</name > <version>9. 7. 4</version > <url>http: //nexus. ni. news. com. au/nexus? v=9. 7. 4&e=rpm&c=rpm </url> </item> </artifacts> <deployment> <task> <target>authoring</target > <subtarget>all</subtarget> <type>publishing: stop</type > <user>root</user> </task> <target>authoring</target> <subtarget>all</subtarget> <type>tomcat: stop</type> <user>tomcat</user> <command>sudo /etc/init. d/cs_tomcat stop</command > <comment></comment> </task> </deployment> </release> © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Dynamic RAS Selection Essential for a multi data centre environment • • A discrete

Dynamic RAS Selection Essential for a multi data centre environment • • A discrete RAS is deployed in each environment across the two data centres resulting in 6 RAS services. Dependent on the release target, a RAS must be selected at run time. OO makes this easy! • • You can override the RAS reference by setting a value for ${override. RAS}. In our flows we query the target environment and dynamically set the value of ${override. RAS}. Note: This has changed in OO v 10 12 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Error Handling Transitions • Transitions connecting to Error Responses should be as descriptive as

Error Handling Transitions • Transitions connecting to Error Responses should be as descriptive as possible − The transition text can include variable substituition − The transition text can be accessed using ${RS_Previous_Transition} 13 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Error Handling Operations • Operations should have a result defined to capture any detailed

Error Handling Operations • Operations should have a result defined to capture any detailed error messages − This must be configured per operation, as each operation will have unique error messaging 14 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Error Handling Error Responses • Error Responses need an input defined to capture the

Error Handling Error Responses • Error Responses need an input defined to capture the failure transition text and error message • Error Responses need a flow output field defined to allow parent flows access to error messages Input to hold error message: error. TMP = ${RS_Previous_Transition} - ${err. Message} Output for parent visibility: err. Message = Flow Output Variable 15 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Global Error Handler A global Error Handling sub-flow Caters to all required error handling

Global Error Handler A global Error Handling sub-flow Caters to all required error handling methods • • • Change Ticket Incident Ticket Log File Windows Event Log Email Simple to configure • • • 16 Set each option to on / off Provide error message Insert before final exit response © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Implementation Web Portal front end • • • 17 Developers need a system to

Implementation Web Portal front end • • • 17 Developers need a system to enter release instructions Temporary web page created Drop Down menus avoid errors Template Option for common deployments Generates XML data Creates SM 7 Change ticket © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice. Product views may not represent actual product screens.

The Flows 18 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained

The Flows 18 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Business Outcome An initial win, a larger outcome • Release is now completely automated

Business Outcome An initial win, a larger outcome • Release is now completely automated Time Required = 15 minutes • Errors still occur due to bugs in the release artefacts • No effort invested to improve the process • No agenda to increase the scope of the automated release to additional environment or applications • News Corp decided to use OO for IT Operations and Service Desk 19 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Reporting Dashboards and Auto Generated Reports Dashboards • Are very good for management visibility

Reporting Dashboards and Auto Generated Reports Dashboards • Are very good for management visibility of what OO is doing in the environment • ROI chart is a big win Auto Generated Reports • Created from the flow images, description texts and flow inputs/outputs. • Easily customised with HTML/CSS 20 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Maintainability One of the original requirements Two important requirements were Reporting and Maintainability •

Maintainability One of the original requirements Two important requirements were Reporting and Maintainability • OO Platform Architecture documented and handed over to customer tools team. • HPLN configured, documented and tested. • Considerable effort put into documenting flows in Description tabs. • Auto Generated documentation flow scheduled. • Training for 5 customer staff on OO Authoring • Support Contract in place. 21 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Resources and Contacts 22 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information

Resources and Contacts 22 © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Q&A © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is

Q&A © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.

Thank you © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein

Thank you © Copyright 2012 Hewlett-Packard Development Company, L. P. The information contained herein is subject to change without notice.