SlideShare una empresa de Scribd logo
1 de 90
Descargar para leer sin conexión
6 Steps to Transform Enterprise
Applications
Daniel Oh
Senior Specialist Solution Architect
Agile & DevOps Community of Practice Manager
Every business is a
technology business.
More Developer Reality
▪ Your deployments likely take 6 to 9 months today (super stars
might deploy every 3 to 4 weeks but that is not the norm).
▪ What if competitive pressures change?
▪ What if regulatory requirements change?
▪ What if a major CVE descends on your OS, App Server, JVM,
framework?
Digital Darwinism
The Developer’s Journey
Self-Service,
On-Demand,
Elastic
Infrastructure
Automation
Puppet, Chef,
Ansible,
Kubernetes
CI & CD
Deployment
Pipeline
Advanced
Deployment
Techniques
Microservices
(and flying
elephants!)
Re-Org to
DevOps
1 Re-Org to DevOps
№
Any organization that designs
a system will inevitably produce
a design whose structure is
a copy of the organization's
communication structure.
Conway’s Law
Chinese Whispers
https://en.wikipedia.org/wiki/Chinese_whispers
Upgrade to JRE 1.8,
bug fixes, Lambdas
Upgrade to Java 1.8,
bunch of bug fixes, Lambdas
Upgrade Java
bugs and lambaz
Upgrade Java
bugs and lembas
Upgrade Java?
bugs and lembas
WTF? Java upgrade
bugs and lambs?
Damn Devs want Java upgrade!
something about buggy sheep?
I think I heard of that sheep bug
When restructuring
teams yields better
results, it illustrates
once again that …
… software development is still
mostly a communication problem.
ThoughtWorks Radar
Only 11% of organizations across industries
indicated their existing in-house talent has
the competitive skills necessary for success
in the digital economy.
MIT Sloan Management Review, 2016
Companies are looking for people who have a
balance of technical and soft skills. Today, people
with deep technical knowledge are expected to
have solid skills in areas such as communication.
MIT Sloan Management Review, 2016
Seek first to understand,
then to be understood.
Stephen R. Covey
No man ever listened
himself out of a job.
Calvin Coolidge
2 Self-Service, On-Demand,
Elastic Infrastructure
№
How many weeks do you wait for
a new VM to be provisioned?
Why do expensive resources
like developers wait so long for
inexpensive resources like VMs?
Self-Service
Means No
Tickets
3 Automation, Puppet, Chef,
Ansible, Kubernetes
№
▪ Phoenix Servers vs. Snowflakes
(https://martinfowler.com/bliki/PhoenixServer.html)
▪ Programmable Infrastructure as Code
▪ Containers move developers closer to
a production environment, even on
a laptop
▪ Address the “But it works on my
machine!” issue
▪ Datasource
▪ Version of the JDBC driver
▪ Configuration of the db connection pool
▪ JVM settings
▪ JMS Queues
▪ Default User/Passwords
▪ “/” vs. “”
4 CI & CD
Deployment Pipeline
№
Jez Humble Continuous
Integration
▪ Software (trunk) is always deployable
▪ Everyone is checking into trunk daily (at
least)—not feature branches
▪ If the build breaks, it’s fixed in 10 minutes
(all hands on deck)
▪ A new engineer can be on-boarded in 1
day—with a production-like environment on
the developer workstation
▪ Deployment is a low-risk, push-button affair
The job of a deployment pipeline
is to prove that the release
candidate is unreleasable.
Jez Humble
5 Advanced Deployment
Techniques
№
‘Speed Kills!’ vs.
‘Go Fast, Go Safe’
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0160
118K JMX
Consoles
https://puppet.com/resources/whitepaper/2016-state-of-devops-report
Starts with a “git commit and git push”
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
BUILD
SCM
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
BUILD
SCM
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
BUILD
SCM
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
BUILD
SCM
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
BUILDSCM
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Blue/Green Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
6 Microservices
(and flying elephants!)
№
THE QUICK SHALL
INHERIT THE EARTH.
Fast is better than slow.
Facebook’s Little Red Book
Why Pipeline?
Code offers no value until it deploys.
Why Canary
Deployments?
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Canary Deployment
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
THE BEST CODE
˭
Our experience at Microsoft is no
different—only about 1/3 of ideas
improve the metrics they were
designed to improve.
Ronny Kohavi, Microsoft (Amazon)
http://ai.stanford.edu/~ronnyk/ExPThinkWeek2009Public.pdf
If you must code,
first do no harm!
Developers’ Hippocratic Oath
So what’s your
hypothesis?
In search of the Holy Grail (A/B Testing)
A/B Testing
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
SCM
Hypothesis & Experiment (two variants):
Check-out button placement increase sales conversions for iOS users?
ACME Laptop
128GB SSD, 8GB RAM
$323.56
Touchscreen
128GB SSD
8GB RAM
Core i3
Windows 10
Add to Cart
In-Store Pickup (15 available)
Raleigh, Central Ave, Store #1123
Recommendations
A
ACME Laptop
128GB SSD, 8GB RAM
$323.56
Touchscreen
128GB SSD
8GB RAM
Core i3
Windows 10
Add to Cart
In-Store Pickup (15 available)
Raleigh, Central Ave, Store #1123
Recommendations
B
A
ACME Laptop
128GB SSD, 8GB RAM
$323.56
Touchscreen
128GB SSD
8GB RAM
Core i3
Windows 10
Add to Cart
In-Store Pickup (15 available)
Raleigh, Central Ave, Store #1123
Recommendations
B
ACME Laptop
128GB SSD, 8GB RAM
$323.56
Touchscreen
128GB SSD
8GB RAM
Core i3
Windows 10
Add to Cart
In-Store Pickup (15 available)
Raleigh, Central Ave, Store #1123
Recommendations
A
ACME Laptop
128GB SSD, 8GB RAM
$323.56
Touchscreen
128GB SSD
8GB RAM
Core i3
Windows 10
Add to Cart
In-Store Pickup (15 available)
Raleigh, Central Ave, Store #1123
Recommendations
B
ACME Laptop
128GB SSD, 8GB RAM
$323.56
Touchscreen
128GB SSD
8GB RAM
Core i3
Windows 10
Add to Cart
In-Store Pickup (15 available)
Raleigh, Central Ave, Store #1123
At 1-week deployment intervals?
https://m.signalvnoise.com/the-majestic-monolith-29166d022228#.4skbfc2gj
Majestic Monolith
https://developers.redhat.com/blog/2016/10/27/the-fast-moving-monolith-how-
we-sped-up-delivery-from-every-three-months-to-every-week/
Assess whether this meets your needs!
Not yet fast enough?
Shrink your elephant!
• The network is reliable.
• Latency is zero.
• Bandwidth is infinite.
• The network is secure.
The first rule of distributed computing is DO NOT!
https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
• Topology doesn't change.
• There is one administrator.
• Transport cost is zero.
• The network is homogeneous.
Fallacies of Distributed
Computing
Strangle the Monolith
Your Monolithic Database
(Your DBA will kill you.)
Download a copy
of Edson’s book at
developers.redhat.com
There’s an Elephant
in the Room
java -jar myapp.jar
DropWizard
www.dropwizard.io
JAX-RS API
First to market
DropWizard Metrics
Embeddable servers:
Jetty
Spring Boot
projects.spring.io/spring
-boot
Spring API
(@RestController)
‘Starter’ POMs:
start.spring.io
Embeddable servers:
Tomcat, Jetty, Undertow
WildFly Swarm
wildfly-swarm.io
Java EE 7 APIs
‘Starter’ POMs:
wildfly-swarm.io/gen
erator
Embeddable servers:
WildFly (Undertow)
Vert.x
vertx.io
Reactive
Async/non-blocking
vertx run myhttp.java
HTTP, HTTP/2, TCP,
UDP, Websockets, etc
out-of-the-box
Failure Happens
CHAPTER 2:
The Exception that
Grounded an Airline
The delays were shown on
Good Morning America (complete with
video of pathetically stranded single
moms and their babies) …
VERIZON OUTAGE CRASHES JETBLUE
AIRLINES’ ELECTRONICS SYSTEMS, DELAYING
FLIGHTS AND BRINGING DOWN ONLINE SITES
FOR BOOKING AND CHECK-IN
January 14, 2016. A Verizon data center outage
Thursday morning brought down JetBlue’s
electronic systems, causing flight delays and
shutting down the airline’s website, along with its
online booking and check-in systems.
SOUTHWEST AIRLINES SYSTEM OUTAGE
BRINGS FLIGHTLINE TO FULL GROUND STOP,
DELAYS AND MADDENS PASSENGERS
July 21, 2016. Southwest Airlines has cancelled
1,150 flights since the airline's full ground stop for
on Wednesday. The trouble started with a "system
outage," and the ground stop lasted for just over an
hour.
DELTA AIRLINES SAYS THE TOTAL BILL FOR
ITS DEVASTATING COMPUTER OUTAGE WILL
COME TO $150 MILLION, AUGUST 8, 2016
COMPUTER OUTAGE GROUNDS DELTA
FLIGHTS IN U.S., JANUARY 17, 2017
Digital Darwinism
The Developer’s Journey
Self-Service,
On-Demand,
Elastic
Infrastructure
Automation
Puppet, Chef,
Ansible,
Kubernetes
CI & CD
Deployment
Pipeline
Advanced
Deployment
Techniques
Microservices
(and flying
elephants!)
Re-Org to
DevOps
If we don’t create the thing that
kills Facebook, someone else will.
‘Embracing change’ isn’t enough. It has
to be so hardwired into who we are that
even talking about it seems redundant.
Facebook’s Little Red Book
1. Learn Linux, AWS/GCP/Azure, Docker & Kubernetes
2. Start an Email List
3. Every other week Demo Day
4. Opposite every other week Book Club
5. Quarterly Mini-Conference—internal and external presenters
6. Document your Value Stream Map
THANK YOU!
https://twitter.com/rhdevelopers/https://developers.redhat.com/

Más contenido relacionado

La actualidad más candente

Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014
CloudBees
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
Docker, Inc.
 

La actualidad más candente (20)

Continuously serving the developer community with Continuous Integration and...
Continuously serving the developer community with  Continuous Integration and...Continuously serving the developer community with  Continuous Integration and...
Continuously serving the developer community with Continuous Integration and...
 
Analyze This! CloudBees Jenkins Cluster Operations and Analytics
Analyze This! CloudBees Jenkins Cluster Operations and AnalyticsAnalyze This! CloudBees Jenkins Cluster Operations and Analytics
Analyze This! CloudBees Jenkins Cluster Operations and Analytics
 
Anatomy of a Build Pipeline
Anatomy of a Build PipelineAnatomy of a Build Pipeline
Anatomy of a Build Pipeline
 
Delivery Pipeline as Code: using Jenkins 2.0 Pipeline
Delivery Pipeline as Code: using Jenkins 2.0 PipelineDelivery Pipeline as Code: using Jenkins 2.0 Pipeline
Delivery Pipeline as Code: using Jenkins 2.0 Pipeline
 
Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014
 
Docker Enables DevOps
Docker Enables DevOpsDocker Enables DevOps
Docker Enables DevOps
 
Enabling Cloud Native Buildpacks for Windows Containers
Enabling Cloud Native Buildpacks for Windows ContainersEnabling Cloud Native Buildpacks for Windows Containers
Enabling Cloud Native Buildpacks for Windows Containers
 
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
 
JUC 2015 - Keynote Address and Opening Remarks by Kohsuke Kawaguchi, Founder,...
JUC 2015 - Keynote Address and Opening Remarks by Kohsuke Kawaguchi, Founder,...JUC 2015 - Keynote Address and Opening Remarks by Kohsuke Kawaguchi, Founder,...
JUC 2015 - Keynote Address and Opening Remarks by Kohsuke Kawaguchi, Founder,...
 
DevTernity - DevOps with smell
DevTernity - DevOps with smellDevTernity - DevOps with smell
DevTernity - DevOps with smell
 
CI/CD Pipeline to Deploy and Maintain an OpenStack IaaS Cloud
CI/CD Pipeline to Deploy and Maintain an OpenStack IaaS CloudCI/CD Pipeline to Deploy and Maintain an OpenStack IaaS Cloud
CI/CD Pipeline to Deploy and Maintain an OpenStack IaaS Cloud
 
From Continuous Integration to DevOps
From Continuous Integration to DevOpsFrom Continuous Integration to DevOps
From Continuous Integration to DevOps
 
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShift
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShiftUltimate DevOps - Jenkins Enterprise & Red Hat OpenShift
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShift
 
Building a Service Delivery Platform - JCICPH 2014
Building a Service Delivery Platform - JCICPH 2014Building a Service Delivery Platform - JCICPH 2014
Building a Service Delivery Platform - JCICPH 2014
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
 
DOES14 - Gary Gruver - Macy's - Transforming Traditional Enterprise Software ...
DOES14 - Gary Gruver - Macy's - Transforming Traditional Enterprise Software ...DOES14 - Gary Gruver - Macy's - Transforming Traditional Enterprise Software ...
DOES14 - Gary Gruver - Macy's - Transforming Traditional Enterprise Software ...
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
 
Javaone 2014 - Git & Docker with Jenkins
Javaone 2014 - Git & Docker with JenkinsJavaone 2014 - Git & Docker with Jenkins
Javaone 2014 - Git & Docker with Jenkins
 
JUC Europe 2015: Bringing CD at Cloud-Scale with Jenkins, Docker and "Tiger"
JUC Europe 2015: Bringing CD at Cloud-Scale with Jenkins, Docker and "Tiger"JUC Europe 2015: Bringing CD at Cloud-Scale with Jenkins, Docker and "Tiger"
JUC Europe 2015: Bringing CD at Cloud-Scale with Jenkins, Docker and "Tiger"
 
Intro to Git: a hands-on workshop
Intro to Git: a hands-on workshopIntro to Git: a hands-on workshop
Intro to Git: a hands-on workshop
 

Similar a [RHFSeoul2017]6 Steps to Transform Enterprise Applications

Cloud Best Practices
Cloud Best PracticesCloud Best Practices
Cloud Best Practices
Eric Bottard
 

Similar a [RHFSeoul2017]6 Steps to Transform Enterprise Applications (20)

Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
 
Teaching Elephants to Dance (and Fly!): A Developer's Journey to Digital Tran...
Teaching Elephants to Dance (and Fly!): A Developer's Journey to Digital Tran...Teaching Elephants to Dance (and Fly!): A Developer's Journey to Digital Tran...
Teaching Elephants to Dance (and Fly!): A Developer's Journey to Digital Tran...
 
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
 
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
 
PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM i
 
DevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & AnsibleDevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & Ansible
 
Introduction Into Docker Ecosystem
Introduction Into Docker EcosystemIntroduction Into Docker Ecosystem
Introduction Into Docker Ecosystem
 
Cloud Best Practices
Cloud Best PracticesCloud Best Practices
Cloud Best Practices
 
Entrepreneurship3
Entrepreneurship3Entrepreneurship3
Entrepreneurship3
 
Google App Engine for Java v0.0.2
Google App Engine for Java v0.0.2Google App Engine for Java v0.0.2
Google App Engine for Java v0.0.2
 
Pipeline as code for your infrastructure as Code
Pipeline as code for your infrastructure as CodePipeline as code for your infrastructure as Code
Pipeline as code for your infrastructure as Code
 
Simplified DevOps Bliss -with OpenAI API
Simplified DevOps Bliss -with OpenAI APISimplified DevOps Bliss -with OpenAI API
Simplified DevOps Bliss -with OpenAI API
 
(java2days) Is the Future of Java Cloudy?
(java2days) Is the Future of Java Cloudy?(java2days) Is the Future of Java Cloudy?
(java2days) Is the Future of Java Cloudy?
 
Chaos Engineering – why we should all practice breaking things on purpose by ...
Chaos Engineering – why we should all practice breaking things on purpose by ...Chaos Engineering – why we should all practice breaking things on purpose by ...
Chaos Engineering – why we should all practice breaking things on purpose by ...
 
Teaching Elephants to Dance, Burr Sutter
Teaching Elephants to Dance, Burr SutterTeaching Elephants to Dance, Burr Sutter
Teaching Elephants to Dance, Burr Sutter
 
Continuous Deployment: The Dirty Details
Continuous Deployment: The Dirty DetailsContinuous Deployment: The Dirty Details
Continuous Deployment: The Dirty Details
 
When Web Services Go Bad
When Web Services Go BadWhen Web Services Go Bad
When Web Services Go Bad
 
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
 
Accelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and MicroservicesAccelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and Microservices
 
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusD. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
 

Más de Daniel Oh

ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...
ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...
ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...
Daniel Oh
 

Más de Daniel Oh (10)

[DevConf.US 2019]Quarkus Brings Serverless to Java Developers
[DevConf.US 2019]Quarkus Brings Serverless to Java Developers[DevConf.US 2019]Quarkus Brings Serverless to Java Developers
[DevConf.US 2019]Quarkus Brings Serverless to Java Developers
 
Podman, Buildah, and Quarkus - The Latest in Linux Containers Technologies
Podman, Buildah, and Quarkus - The Latest in Linux Containers Technologies Podman, Buildah, and Quarkus - The Latest in Linux Containers Technologies
Podman, Buildah, and Quarkus - The Latest in Linux Containers Technologies
 
Quarkus on Knative at Red Hat Summit 2019
Quarkus on Knative at Red Hat Summit 2019Quarkus on Knative at Red Hat Summit 2019
Quarkus on Knative at Red Hat Summit 2019
 
Knative makes Developers Incredible on Serverless
Knative makes Developers Incredible on ServerlessKnative makes Developers Incredible on Serverless
Knative makes Developers Incredible on Serverless
 
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
 
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
 
[OSSummitEU2017]Ten Llayers of Linux Container Security
[OSSummitEU2017]Ten Llayers of Linux Container Security[OSSummitEU2017]Ten Llayers of Linux Container Security
[OSSummitEU2017]Ten Llayers of Linux Container Security
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
 
Automate App Container Delivery with CI/CD and DevOps
Automate App Container Delivery with CI/CD and DevOpsAutomate App Container Delivery with CI/CD and DevOps
Automate App Container Delivery with CI/CD and DevOps
 
ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...
ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...
ApacheCon Europe 2016 : CONTAINERS IN ACTION - Transform Application Delivery...
 

Último

Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven CuriosityUnlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Hung Le
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
amilabibi1
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
David Celestin
 
Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac Folorunso
Kayode Fayemi
 
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
ZurliaSoop
 

Último (17)

in kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait Cityin kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of Drupal
 
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
 
Introduction to Artificial intelligence.
Introduction to Artificial intelligence.Introduction to Artificial intelligence.
Introduction to Artificial intelligence.
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio III
 
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven CuriosityUnlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatment
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
 
Zone Chairperson Role and Responsibilities New updated.pptx
Zone Chairperson Role and Responsibilities New updated.pptxZone Chairperson Role and Responsibilities New updated.pptx
Zone Chairperson Role and Responsibilities New updated.pptx
 
Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac Folorunso
 
ICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdfICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdf
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Bailey
 
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
 

[RHFSeoul2017]6 Steps to Transform Enterprise Applications

  • 1. 6 Steps to Transform Enterprise Applications Daniel Oh Senior Specialist Solution Architect Agile & DevOps Community of Practice Manager
  • 2. Every business is a technology business.
  • 3.
  • 4.
  • 5. More Developer Reality ▪ Your deployments likely take 6 to 9 months today (super stars might deploy every 3 to 4 weeks but that is not the norm). ▪ What if competitive pressures change? ▪ What if regulatory requirements change? ▪ What if a major CVE descends on your OS, App Server, JVM, framework?
  • 6. Digital Darwinism The Developer’s Journey Self-Service, On-Demand, Elastic Infrastructure Automation Puppet, Chef, Ansible, Kubernetes CI & CD Deployment Pipeline Advanced Deployment Techniques Microservices (and flying elephants!) Re-Org to DevOps
  • 7. 1 Re-Org to DevOps №
  • 8. Any organization that designs a system will inevitably produce a design whose structure is a copy of the organization's communication structure. Conway’s Law
  • 10.
  • 11.
  • 12. Upgrade to JRE 1.8, bug fixes, Lambdas Upgrade to Java 1.8, bunch of bug fixes, Lambdas Upgrade Java bugs and lambaz Upgrade Java bugs and lembas Upgrade Java? bugs and lembas WTF? Java upgrade bugs and lambs? Damn Devs want Java upgrade! something about buggy sheep? I think I heard of that sheep bug
  • 13.
  • 14.
  • 15. When restructuring teams yields better results, it illustrates once again that …
  • 16. … software development is still mostly a communication problem. ThoughtWorks Radar
  • 17. Only 11% of organizations across industries indicated their existing in-house talent has the competitive skills necessary for success in the digital economy. MIT Sloan Management Review, 2016
  • 18. Companies are looking for people who have a balance of technical and soft skills. Today, people with deep technical knowledge are expected to have solid skills in areas such as communication. MIT Sloan Management Review, 2016
  • 19. Seek first to understand, then to be understood. Stephen R. Covey
  • 20. No man ever listened himself out of a job. Calvin Coolidge
  • 22. How many weeks do you wait for a new VM to be provisioned? Why do expensive resources like developers wait so long for inexpensive resources like VMs?
  • 24. 3 Automation, Puppet, Chef, Ansible, Kubernetes №
  • 25. ▪ Phoenix Servers vs. Snowflakes (https://martinfowler.com/bliki/PhoenixServer.html) ▪ Programmable Infrastructure as Code ▪ Containers move developers closer to a production environment, even on a laptop ▪ Address the “But it works on my machine!” issue
  • 26. ▪ Datasource ▪ Version of the JDBC driver ▪ Configuration of the db connection pool ▪ JVM settings ▪ JMS Queues ▪ Default User/Passwords ▪ “/” vs. “”
  • 27. 4 CI & CD Deployment Pipeline №
  • 28. Jez Humble Continuous Integration ▪ Software (trunk) is always deployable ▪ Everyone is checking into trunk daily (at least)—not feature branches ▪ If the build breaks, it’s fixed in 10 minutes (all hands on deck) ▪ A new engineer can be on-boarded in 1 day—with a production-like environment on the developer workstation ▪ Deployment is a low-risk, push-button affair
  • 29. The job of a deployment pipeline is to prove that the release candidate is unreleasable. Jez Humble
  • 31. ‘Speed Kills!’ vs. ‘Go Fast, Go Safe’
  • 33.
  • 36. Starts with a “git commit and git push” Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS BUILD SCM
  • 37. Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS BUILD SCM
  • 38. Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS BUILD SCM
  • 39. Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS BUILD SCM
  • 40. Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS BUILDSCM
  • 41. Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 42. Blue/Green Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 43. 6 Microservices (and flying elephants!) №
  • 44. THE QUICK SHALL INHERIT THE EARTH. Fast is better than slow. Facebook’s Little Red Book
  • 45. Why Pipeline? Code offers no value until it deploys.
  • 47.
  • 48. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 49. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 50. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 51. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 52. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 53. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 54. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 55. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 56. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 57. Canary Deployment DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM
  • 59. Our experience at Microsoft is no different—only about 1/3 of ideas improve the metrics they were designed to improve. Ronny Kohavi, Microsoft (Amazon) http://ai.stanford.edu/~ronnyk/ExPThinkWeek2009Public.pdf
  • 60. If you must code, first do no harm! Developers’ Hippocratic Oath
  • 61. So what’s your hypothesis? In search of the Holy Grail (A/B Testing)
  • 62. A/B Testing DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS SCM Hypothesis & Experiment (two variants): Check-out button placement increase sales conversions for iOS users?
  • 63. ACME Laptop 128GB SSD, 8GB RAM $323.56 Touchscreen 128GB SSD 8GB RAM Core i3 Windows 10 Add to Cart In-Store Pickup (15 available) Raleigh, Central Ave, Store #1123 Recommendations A ACME Laptop 128GB SSD, 8GB RAM $323.56 Touchscreen 128GB SSD 8GB RAM Core i3 Windows 10 Add to Cart In-Store Pickup (15 available) Raleigh, Central Ave, Store #1123 Recommendations B
  • 64. A ACME Laptop 128GB SSD, 8GB RAM $323.56 Touchscreen 128GB SSD 8GB RAM Core i3 Windows 10 Add to Cart In-Store Pickup (15 available) Raleigh, Central Ave, Store #1123 Recommendations B ACME Laptop 128GB SSD, 8GB RAM $323.56 Touchscreen 128GB SSD 8GB RAM Core i3 Windows 10 Add to Cart In-Store Pickup (15 available) Raleigh, Central Ave, Store #1123 Recommendations
  • 65. A ACME Laptop 128GB SSD, 8GB RAM $323.56 Touchscreen 128GB SSD 8GB RAM Core i3 Windows 10 Add to Cart In-Store Pickup (15 available) Raleigh, Central Ave, Store #1123 Recommendations B ACME Laptop 128GB SSD, 8GB RAM $323.56 Touchscreen 128GB SSD 8GB RAM Core i3 Windows 10 Add to Cart In-Store Pickup (15 available) Raleigh, Central Ave, Store #1123
  • 66. At 1-week deployment intervals? https://m.signalvnoise.com/the-majestic-monolith-29166d022228#.4skbfc2gj Majestic Monolith https://developers.redhat.com/blog/2016/10/27/the-fast-moving-monolith-how- we-sped-up-delivery-from-every-three-months-to-every-week/ Assess whether this meets your needs!
  • 67. Not yet fast enough? Shrink your elephant!
  • 68.
  • 69. • The network is reliable. • Latency is zero. • Bandwidth is infinite. • The network is secure. The first rule of distributed computing is DO NOT! https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing • Topology doesn't change. • There is one administrator. • Transport cost is zero. • The network is homogeneous. Fallacies of Distributed Computing
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80. Your Monolithic Database (Your DBA will kill you.) Download a copy of Edson’s book at developers.redhat.com There’s an Elephant in the Room
  • 81. java -jar myapp.jar DropWizard www.dropwizard.io JAX-RS API First to market DropWizard Metrics Embeddable servers: Jetty Spring Boot projects.spring.io/spring -boot Spring API (@RestController) ‘Starter’ POMs: start.spring.io Embeddable servers: Tomcat, Jetty, Undertow WildFly Swarm wildfly-swarm.io Java EE 7 APIs ‘Starter’ POMs: wildfly-swarm.io/gen erator Embeddable servers: WildFly (Undertow) Vert.x vertx.io Reactive Async/non-blocking vertx run myhttp.java HTTP, HTTP/2, TCP, UDP, Websockets, etc out-of-the-box
  • 83. CHAPTER 2: The Exception that Grounded an Airline The delays were shown on Good Morning America (complete with video of pathetically stranded single moms and their babies) …
  • 84. VERIZON OUTAGE CRASHES JETBLUE AIRLINES’ ELECTRONICS SYSTEMS, DELAYING FLIGHTS AND BRINGING DOWN ONLINE SITES FOR BOOKING AND CHECK-IN January 14, 2016. A Verizon data center outage Thursday morning brought down JetBlue’s electronic systems, causing flight delays and shutting down the airline’s website, along with its online booking and check-in systems.
  • 85. SOUTHWEST AIRLINES SYSTEM OUTAGE BRINGS FLIGHTLINE TO FULL GROUND STOP, DELAYS AND MADDENS PASSENGERS July 21, 2016. Southwest Airlines has cancelled 1,150 flights since the airline's full ground stop for on Wednesday. The trouble started with a "system outage," and the ground stop lasted for just over an hour.
  • 86. DELTA AIRLINES SAYS THE TOTAL BILL FOR ITS DEVASTATING COMPUTER OUTAGE WILL COME TO $150 MILLION, AUGUST 8, 2016 COMPUTER OUTAGE GROUNDS DELTA FLIGHTS IN U.S., JANUARY 17, 2017
  • 87. Digital Darwinism The Developer’s Journey Self-Service, On-Demand, Elastic Infrastructure Automation Puppet, Chef, Ansible, Kubernetes CI & CD Deployment Pipeline Advanced Deployment Techniques Microservices (and flying elephants!) Re-Org to DevOps
  • 88. If we don’t create the thing that kills Facebook, someone else will. ‘Embracing change’ isn’t enough. It has to be so hardwired into who we are that even talking about it seems redundant. Facebook’s Little Red Book
  • 89. 1. Learn Linux, AWS/GCP/Azure, Docker & Kubernetes 2. Start an Email List 3. Every other week Demo Day 4. Opposite every other week Book Club 5. Quarterly Mini-Conference—internal and external presenters 6. Document your Value Stream Map