ACCELERATING DEVOPS THROUGH OPENSHIFT BY RED...

Preview:

Citation preview

ACCELERATING DEVOPSACCELERATING DEVOPSTHROUGH OPENSHIFTTHROUGH OPENSHIFTBY RED HATBY RED HAT

Trevor QuinnPaaS and DevOps Practice Lead, North AmericaRed Hat Consulting

AgendaAgenda

Current IT LandscapeTraditional IT organizationState of DevOpsCloud automationApplication lifecycle automationDemo

CURRENT IT LANDSCAPECURRENT IT LANDSCAPE

CustomersCustomers EnterprisesEnterprises

Ubiquitous, timely access to data

Smaller, innovative startupsarmed with cloud tech

Increased quality

Rapid delivery of productfeatures and service

Better market fit

Doing more with less

TRADITIONAL ITTRADITIONAL ITORGANIZATIONORGANIZATION

LINES OF BUSINESSResponsive Delivery

DEVELOPERSAutonomy, Ability to Focus

EXPECTATIONS INSIDE IT ORGANIZATIONSEXPECTATIONS INSIDE IT ORGANIZATIONS

QATestability

OPERATIONSStability

EXPECTATIONS INSIDE IT ORGANIZATIONSEXPECTATIONS INSIDE IT ORGANIZATIONS

DEVELOPERS

"THROW IT OVER THE WALL""THROW IT OVER THE WALL"

QA OPERATIONS

Walled off people, processes, and technology

Opportunities to improve at the system level are potentially lost

STATE OF DEVOPSSTATE OF DEVOPS

DEVOPS LINEAGEDEVOPS LINEAGE

AgileLean Continuous

DeliveryDevelopment

CloudAutomation

CulturalChange

DEVOPSDEVOPS

People

Process Technology

Culture andOrganization

Test andVerification

Informationand Reporting

Build andDeploy

DataManagement

Release

INITIAL IMPROVED OPTIMIZING

People

Process Technology

Culture andOrganization

Test andVerification

Informationand Reporting

Build andDeploy

DataManagement

Release

INITIAL IMPROVED OPTIMIZING

CLOUD AUTOMATIONCLOUD AUTOMATION

(NIST Definition of Cloud Computing)

on-demand self servicebroad network accessresource poolingrapid elasticitymeasured service

CLOUD COMPUTINGCLOUD COMPUTING

Ephemeral Anonymous Multitenant

CLOUD SERVERSCLOUD SERVERS

Cloud automation is

DevOps technology.

LEVELS OF AUTOMATIONLEVELS OF AUTOMATION

LEVELS OF AUTOMATIONLEVELS OF AUTOMATION

LEVELS OF AUTOMATIONLEVELS OF AUTOMATION

LEVELS OF AUTOMATIONLEVELS OF AUTOMATION

APPLICATION LIFECYCLEAPPLICATION LIFECYCLEMANAGEMENTMANAGEMENT

APPLICATION LIFECYCLE MANAGEMENTAPPLICATION LIFECYCLE MANAGEMENT

CONFIGURATION ANDCHANGE MANAGEMENT

AUTOMATEDTESTING

CONTINUOUSINTEGRATION

MANAGEMENT/MONITORING

DEPLOYMENTPIPELINES

DefinitionDefinition

All artifacts relevant to theproject, and therelationships betweenthem, are stored, retrieved,uniquely identified, andmodified. (Humble andFarley, 2011)

BenefitsBenefitsAllows you to exactly reproduce an entireenvironment (OS, system configuration,application server, server configuration,application, etc.)

Trace changesRollback an environment to earlier workingstate

ToolsToolsVersion control and library repositories

CONFIGURATION MANAGEMENTCONFIGURATION MANAGEMENT

CONFIGURATION MANAGEMENTCONFIGURATION MANAGEMENTWITH OPENSHIFTWITH OPENSHIFT

Images as Managed Artifacts

CONFIGURATION MANAGEMENTCONFIGURATION MANAGEMENTWITH OPENSHIFTWITH OPENSHIFT

Application Topology as Managed Artifact

DefinitionDefinition

Automate tests beyond unit,including integration, system,functional, and even some non-functional acceptance tests(performance, security, etc.)

Trigger tests from thecontinuous integration process

BenefitsBenefitsSupports rapid development byproviding quick feedback (throughCI process) on functional breaks,performance degradationSafeguards against regression whenrefactoring

ToolsToolsAutomated functional and behavior-drivendevelopment test suites

AUTOMATED TESTINGAUTOMATED TESTING

AUTOMATED TESTINGAUTOMATED TESTINGWITH OPENSHIFTWITH OPENSHIFT

Traditional OpenShift

AUTOMATED TESTINGAUTOMATED TESTINGWITH OPENSHIFTWITH OPENSHIFT

SELF-CONTAINED UNITTESTS RUN ON ALL COMPONENTS:

OS resourcesApplication serverConfigurationApplicationLibrariesAnd the interactions of all of these

DefinitionDefinition

Every time somebody commitsa change, the entire applicationis built and a comprehensiveset of automated tests are runagainst it. (Humble and Farley,2011)

Requires frequent code checkins, good test coverage,preferably a CI server

BenefitsBenefitsNormal state of the application is working,functionalIf the application is broken, it is treated asabnormal and requiring immediateattention

ToolsToolsVersion controlCI server

CONTINUOUS INTEGRATIONCONTINUOUS INTEGRATION

CONTINUOUS INTEGRATIONCONTINUOUS INTEGRATIONWITH OPENSHIFTWITH OPENSHIFT

DefinitionDefinition

Having tools that provide finegrained detail on all aspects ofthe application lifecycle:

Design-time API governanceBuild-time quality metricsFeature traceabilityRun-time application andplatform behavior

BenefitsBenefitsAbility to gauge software quality andinfrastructure performanceAbility to gauge DevOps programimprovement

ToolsToolsApplication monitoring suitesCloud management tools

MANAGEMENT AND MONITORINGMANAGEMENT AND MONITORING

MANAGEMENT AND MONITORINGMANAGEMENT AND MONITORING

Traditional OpenShift

Standardized container system and orchestration leads tostandardized management and monitoring, driving down MTTR.

DefinitionDefinition

Well-described, automated,measured, andcontinually optimized processfor moving an applicationthrough the life cycle from ideato production

BenefitsBenefitsProcess control over releases: Releasescannot go to production without passingthrough all prior stages of validationOptimization of the entire delivery process:Understanding where bottlenecks are andmeans to reduce them

ToolsToolsSelf-service requirements of deploymentpipelines require mature automation ofbuilds and deployments (includingenvironment provisioning)Version control, binary management (e.g.Maven), CI/CD server

DEPLOYMENT PIPELINESDEPLOYMENT PIPELINES

DEPLOYMENT PIPELINE EXAMPLEDEPLOYMENT PIPELINE EXAMPLE

DEPLOYMENT PIPELINE WITH OPENSHIFTDEPLOYMENT PIPELINE WITH OPENSHIFTUAT STAGE EXAMPLEUAT STAGE EXAMPLE

DEMO (OSE 2)DEMO (OSE 2)

OPENSHIFT AS DEVOPS ACCELERATOROPENSHIFT AS DEVOPS ACCELERATOR

QUESTIONSQUESTIONS

Recommended