Download - Tech Talk: Harness the Power of Innovations Like Microservice Architecture and Containers
Tech Talk: Harness the Power of Innovations Like Microservice Architecture and Containers
Keith Puzey
DevOps: Continuous Delivery
CA Technologies
Senior Principal Engineering Services Architect
DO4T31T
@KeithPuzey
#CAWorld
2 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
© 2015 CA. All rights reserved. All trademarks referenced herein belong to their respective companies.
The content provided in this CA World 2015 presentation is intended for informational purposes only and does not form any type of
warranty. The information provided by a CA partner and/or CA customer has not been reviewed for accuracy by CA.
For Informational Purposes Only
Terms of this Presentation
3 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Abstract
Containers and microservices are billed as a way to aid companies in their release processes. But, as the number of them sprawl out, have you just created another level of complexity to manage? Hear from experts how you can harness the power of these innovations and delight your customers.
Keith Puzey
CA Technologies
Senior Principal Engineering Services Architect
4 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Agenda
WHY SHOULD I USE MICROSERVICES
WHAT IS CONTAINERISATION
CA WORKING WITH MICROSERVICES - CONTAINERS
SUMMARY
QUESTIONS AND ANSWERS
1
2
3
4
5
5 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Enterprise Applications
Monolithic
Complex
Developed in SilosLots of Development dependencies
Scaling out challenges
6 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Microservice ApplicationWhat is a MicroService
A suite of small services each running its own process
Loosely Coupled
Bounded context
Microservices inter connected generally over HTTP API
7 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Application Responsibilities
MY APPLICATION DESIGN DEV QA PRE-PROD PRODUCTION
Product Manager
Development Teams
UI Teams
QA Team
Network Operations
Database Operations
Sys Admins / OPs
8 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Application Responsibilities with MicroServices
MY APPLICATION DESIGN DEV QA PRE-PROD PRODUCTION
Microservice Billing TeamDevelopment / QA / PM
Microservice Ordering TeamDevelopment / QA / PM
Microservice Core TeamDevelopment / QA / PM
Microservice Analyics TeamDevelopment / QA / PM
Network Operations
Database Operations
Sys Admins / OPs
Bounded Context
9 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Loosely Coupled
INDIVIDUALLY DEPLOYABLE
Isolated
Easier to test
SCALABLEEach Microservice
can be scaled independently
DESIGN FOR FAILURE
No one component can bring down the entire application
10 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Leveraging Containers with MicroServices
CONTAINERS ARE AN IDEAL TECHNOLOGY FOR THE CREATION AND DEPLOYMENT OF MICROSERVICES
CONTAINERS ARE A LIGHT-WEIGHT RUNTIME ENVIRONMENTS Contains many of the core components of a virtual machine
Isolated services of an operating system
Designed to make packaging easy and execution of services smooth.
What is a Container
11 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
What is Docker
Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications and consists of:
Docker Engine, a portable, lightweight runtime and packaging tool.
Docker Hub, a cloud service for sharing applications and automating workflows.
Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments.
IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud.
12 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Docker and Virtual Machines
VIRTUAL MACHINESEach virtualized application includes not only the application - which may be only 10s of MB - and the necessary binaries and libraries, but also an entire guest operating system - which may weigh 10s of GB.
DOCKERThe Docker Engine container comprises just the application and its dependencies. It runs as an isolated process in userspace on the host operating system, sharing the kernel with other containers. Thus, it enjoys the resource isolation and allocation benefits of VMs but is much more portable and efficient.
13 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Challenges of Using MicroServices and Containers
CONTAINER SPRAWL
HOW CAN YOU EFFECTIVELY MONITOR
AN ENVIRONMENT WITH A LARGE NUMBER OF
CONTAINERS
TESTING OF MICROSERVICES
14 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Containers and CA
CA release automation includes an extensive action pack for working with Docker including:
Docker Container Management
Docker Image Management
Docker Registry
15 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Containers and CA
DYNAMIC CREATION AND MANAGEMENT OF
CONTAINER ENVIRONMENTS
DYNAMIC PROVISIONING OF TESTING NODES AND
MANAGEMENT
RAPID CREATION OF ENVIRONMENTS FOR
TESTING AND DEVELOPMENT
16 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Docker with CA Release Automation
A demonstration of Release Automation working with Docker can be found on YouTube
Containers are provisioned dynamically
Containers are removed if the application testing is successful
https://www.youtube.com/watch?v=1vgviQOeyNw
17 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Monitoring and Docker
Monitor applications running in Docker containers (e.g. Tomcat, node.js) - as if they were running on a virtual or physical server
Monitor Docker engines through Docker Remote API
Run in Docker containers (not recommended for production use)
CA APM can:
18 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
API Gateways for Microservices
POPULAR PATTERN FOR THE MICROSERVICES PERIMETER Enforces access control and security
Aggregates API calls to reduce network traffic
Handles dynamic routing to ephemeral microserviceinstances
From “Building Microservices” by Sam Newman (Thoughtworks)
From Microservices.iowebsite by Chris
Richardson
19 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
CA API Gateway for Microservices
HANDLES KEY REQUIREMENTS FOR GATING MICROSERVICES API-centric access control (OAuth, OpenID Connect, JWT)
Configurable logic framework for Microservice aggregation and dynamic routing
Interoperability with messaging protocols such as AMQP
Compatible with leading Microservice solutions like Consul
Automation and deployment through fully-featured management API
CA API Gateway
Mobile Apps
Web Apps
Microservices Fabric
20 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Micro Services can aid application development teams to embrace a continuous delivery methodology and Containers are the perfect mechanism to deploy these microservices.
CA Technologies have a range of products that can help integrate containers into your development life cycle and incorporate these into your application eco system.
Summary
22 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Recommended Sessions
SESSION # TITLE DATE/TIME
DO4T32T Tech Talk: Reduce Risk with Canary Deployments 11/18/2015 at 11:30 am
DO4T33TTech Talk: Evolve from Continuous Integration to
Continuous Delivery11/18/2015 at 12:15 pm
DO4T35T
Tech Talk: Integrate Infrastructure Configuration
Management with Release Automation for the Best of
Both Worlds
11/19/2013 at 2:00 pm
23 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
Must See Demos
CA Release Automation
CA Release Automation
Theater 4
CA Release Pipeline ManagerTheater 4
CA RA Rapid Dev. Kit, SDKCA Release Automation
Theater 4
Integrations
CA Release Automation
Theater 4
24 © 2015 CA. ALL RIGHTS RESERVED.@CAWORLD #CAWORLD
For More Information
To learn more, please visit:
http://cainc.to/Nv2VOe
CA World ’15