turning the heat up on devops: providing a web-based editing experience around openstack heat...

37
1 OpenStack Summit May 12-16, 2014 Atlanta, Georgia Turning the Heat up on DevOps Providing a web-based editing experience around Heat templates Michael D. Elder [email protected] | @mdelder

Upload: michael-elder

Post on 27-Aug-2014

730 views

Category:

Software


1 download

DESCRIPTION

We’ll present a web-based editing experience around Heat Orchestration Templates. We have created a unified editing experience leveraging diagram and text-based metaphors into one seamless flow. We have also extended the Heat engine to support full-stack deployment by integrating application deployment capabilities from IBM UrbanCode Deploy. We’ll demonstrate creating ready to deploy HOT documents which capture Compute, Network, and Storage resources as well as our own extensions around software configuration and deployment resources. We’ll describe how our solution supports three characteristics for Software Defined Environments: - Organic: Support creating and updating environments in place as their purpose or architecture changes over time. - Version-aware: We’ll show incorporating native scm solutions like git as part of the web-based interface to version and update templates across multiple environments. - Fullstack Engineering: We’ll describe templates which capture cloud resources and software resources as part of a unified template which can then provision cloud resources and deploy software in one action. Our extensions to Heat will be described along with our experiences in extending the engine as a vendor.

TRANSCRIPT

  • 1 OpenStack Summit May 12-16, 2014 Atlanta, Georgia Turning the Heat up on DevOps! Providing a web-based editing experience around Heat templates ! ! Michael D. Elder! [email protected] | @mdelder!
  • 2 2014 IBM Corporation What is this talk about?! Managing Change"
  • 3 2014 IBM Corporation DevOps Manages Risk Differently! oThe adoption of DevOps => increased velocity of application delivery! oPuts pressure on the infrastructure to respond more quickly! oSoftware Dened Environments enable you to capture infrastructure as a software artifact! Application Changes Infrastructure Changes
  • 4 2014 IBM Corporation What is a #fullstackapp ? ! Application Changes" Infrastructure Changes" Consistent Incremental Change" " "
  • 5 2014 IBM Corporation OpenStack Heat! oProvides a way to represent infrastructure from OpenStack! oRecently added support for client-side automation through Shell, Chef, or Puppet! oDened a new Domain Specic Language for templates: Heat Orchestration Template (HOT) format! oSupports updating existing environments in place!
  • 6 Software Dened Landscapes!
  • 7 2014 IBM Corporation Long, complex lifecycle Small iterative changes Role Layer Developers/ Testers Integrators Specialists Compute, Network, and Storage Platforms Apps
  • 8 2014 IBM Corporation Developers/ Testers Integrators Specialists Capture the full stack as a blueprint document,! actionable by an automated process! Compute, Network, and Storage Platforms Apps Full Stack Blueprint (HOT) Cloud Orchestration Describe software dened resources (Compute, ! Network, Storage) alongside middleware and applications!
  • 9 2014 IBM Corporation Apply the same blueprint to multiple environments! Compute, Network, and Storage Platforms Apps Compute, Network, and Storage Platforms Apps Compute, Network, and Storage Platforms Apps Dev/Test Cloud Production Cloud Full Stack Blueprint Dev QA Prod
  • 10 2014 IBM Corporation Software Dened Delivery! o Version the blueprint using your source control repo (native support for git)! o Apply the new versions of the template to an existing environment or provision an entire new stack! o Validate changes with a "canary" pattern to ensure correctness and detect problems earlier! o Verify entire stack before production! Full-Stack Blueprint
  • 11 2014 IBM Corporation Software Dened Portability! oParametrize differences between cloud environments (network ids, image ids, software versions)! oOverlay resource types for different kinds of clouds in the same blueprint! oEnable portability but optimize for each specic cloud platform! Full Stack Blueprint Config/ Params Cloud A Cloud B Config/ Params
  • 12 Applied Theory!
  • 13 2014 IBM Corporation Introducing Web-based HOT Editor!!
  • 14 2014 IBM Corporation Lets get textual!!
  • 15 2014 IBM Corporation Bring along our friends!! Nova/Glance Neutron Cinder
  • 16 2014 IBM Corporation And Software Conguration!! UrbanCode Deploy oProvide Software Components right along side infrastructure! oRepresent these resources in HOT documents! oOnce, deployed update either from Heat or UrbanCode Deploy! oWill support Chef, Puppet, etc over time!
  • 17 2014 IBM Corporation Manage Identity through Keystone!! oUsers authenticated upon login with keystone! oKeystone tokens used for discovery of existing content! !
  • 18 Demo: Web-based design and provisioning of HOT! Diagram editor Source text editor HOT as-you-type validation Annotated TODO & errors Quick palette for searching Editor functions: Cut, Copy, Paste, Find & Replace Zoom diagram or text Comment out infrastructure
  • 19 2014 IBM Corporation IBM UrbanCode focuses on Release Automation! Drive down cost Remove manual effort and wasted resource time with push button deployment processes Speed time to market Simple, graphical process designer, with built-in actions to quickly create deployment automation Reduce risk Robust configuration management, coordinated release processes, audits, and traceability Enabling clients to more rapidly deliver mobile, cloud, big data and traditional applications with high quality and low risk IBM UrbanCode Deploy automates the deployment of applications, databases and configurations into development, test and production environments, helping to drive down cost, speed time to market with reduced risk. IBM UrbanCode Release is an intelligent collaboration release management solution that replaces error-prone manual spreadsheets and streamlines release activities for application and infrastructure changes.
  • 20 2014 IBM Corporation Example: Software! oDened by the community and vendors! oIntegration with UrbanCode Deploy enables rapid conguration of full application stack! oSupport ongoing updates of deployed versions through UrbanCode Deploy!
  • 21 2014 IBM Corporation IBM UrbanCode Deploy! oApplication-centric view! oUnderstands components, environments, snapshots of veried component versions! oPromote from one environment to the next, with approval gates!
  • 22 2014 IBM Corporation IBM UrbanCode Deploy & Heat Templates! oExtended to create environments in OpenStack!! ! oProvisioned resources made available for ongoing updates!
  • 23 2014 IBM Corporation IBM UrbanCode Deploy & Heat Templates! ! oChoose HOT document, conguration, and parameters! oDiscovery service provides easy access to Glance, Neutron, Cinder resources!
  • 24 Demo: UrbanCode Deploy Consuming HOT Templates! View current environments Create new environments in the cloud Select available resources from Nova, Neutron, Cinder Validation feedback in place Update environment over time Deploy new component versions
  • 25 2014 IBM Corporation Managing Attributes from Different Clouds! oWeve been in the tools business for a long time and seen different approaches to common + vendor information models! oApproaches like Java EE keep a common le (web.xml) and then extend it with vendor content (ibm-web- bnd.xml)! oThese approaches become harder to maintain over time!
  • 26 2014 IBM Corporation Cloud Portability through Decoration! oChose to extend the Heat Resource Types to understand other Service API directly! oOverlay additional properties alongside Heat and use the Resource Registry to implement different behavior! oCapability was restricted from Havana to Icehouse, so we now embed properties in metadata!
  • 27 2014 IBM Corporation Example: Decorating Amazon! oChose this approach to support multiple cloud targets from Heat! oEnable Heat to talk natively to different cloud APIs! oSupport portability for customers who havent yet adopted OpenStack!
  • 28 Demo: Cloud Portability! Provision Network architecture to OpenStack Provision Network architecture to Amazon (no OpenStack required) Select pre-defined configuration for each cloud
  • 29 History!
  • 30 2014 IBM Corporation How did we get here?! oCustomers indicated a desire for greater control over the entire application stack! oWe wanted to also support iterative development of the complete application stack, along with versioning! oWe also heard the need for cloud agnosticism and portability!
  • 31 2014 IBM Corporation So what did we do?! oBegan with a Minimum Viable Product!! Quickly iterated to deliver an end to end experience within a few iterations (2 weeks per iteration)! Built on technology from IBM Research to describe topology and decouple representation from cloud! oDelivered some early wins, but decided to pivot towards OpenStack Heat instead of IBM Research language! Believed it would be better for users and the community! Believed it would be easier to learn and adopt by users!
  • 32 2014 IBM Corporation Into our First Pivot! oIn January, we re-wrote much of the core technology of Landscaper, including applying Netix OSS for the underpinnings of the web designer! oMoved to HOT as our native document format! oExtended HOT to understand Software Congurations, in alignment with community proposals!
  • 33 2014 IBM Corporation Reacting at the Speed of Open Source! oIn March, we noticed the changes coming in which changed directions for Software Conguration! oUltimately, these werent formatted around our requirements for a centralized point of control! oWe continue to support community types for software conguration, but also built custom types for UrbanCode Deploy!
  • 34 Feedback! @mdelder or [email protected]!
  • 35 2014 IBM Corporation Please note the following IBMs statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBMs sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the users job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 36 2014 IBM Corporation Monday, May 12 Room B314 12:05-12:45 Wednesday, May 14 - Room B312 9:00-9:40 9:50-10:30 11:00-11:40 11:50-12:30 OpenStack is Rockin the OpenCloud Movement! Whos Next to Join the Band ? Angel Diaz, VP Open Technology and Cloud Labs David Lindquist, IBM Fellow, VP, CTO Cloud & Smarter Infrastructure Getting from enterprise ready to enterprise bliss - why OpenStack and IBM is a match made in Cloud heaven. Todd Moore - Director, Open Technologies and Partnerships Taking OpenStack beyond Infrastructure with IBM SmartCloud Orchestrator. Andrew Trossman - Distinguished Engineer, IBM Common Cloud Stack and SmartCloud Orchestrator IBM, SoftLayer and OpenStack - present and future Michael Fork - Cloud Architect IBM and OpenStack: Enabling Enterprise Cloud Solutions Now. Tammy Van Hove -Distinguished Engineer, Software Defined Systems IBM Sponsored Sessions
  • 37 2014 IBM Corporation Monday, May 12 2:50 - 3:30 3:40 - 4:20 3:40 - 4:20 Tuesday, May 13 11:15 - 11:55 2:00 - 2:40 5:30 - 6:10 5:30 - 6:10 Wednesday, May14 9:50 - 10:30 2:40 - 3:20 Thursday, May 15 9:50 - 10:30 1:30 - 2:10 2:20 - 3:00 IBM Technical Sessions