ACCELERATING DEVOPS THROUGH OPENSHIFT BY RED...
Transcript of ACCELERATING DEVOPS THROUGH OPENSHIFT BY RED...
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