Herzlich willkommen - Digicomp ... Container App Container App Container App Container App Container

  • View
    0

  • Download
    0

Embed Size (px)

Text of Herzlich willkommen - Digicomp ... Container App Container App Container App Container App Container

  • 2

    Herzlich willkommen

    DevDay Zürich 2016

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Building Cloud Native Applications

    Andreas Postl Principal Sales Consultant Middleware PaaS Ambassador

    June 22th 2016

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Safe Harbor Statement

    The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Software Is Overtaking the World

    Time-to-market is key to success

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Better Segment Software Different software has different needs

    Find the Next Business

    Run the Current Business

    Run the Back Office

    New IT

    Old IT

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Different Types of Software Requires Different Practices A payroll system should be treated very different from a customer-facing .com

    Innovation Software - Find the Next Business

    Differentiation Software - Run Current Business

    Core Software - Keep the Lights On

    Release Hourly

    Fail Early

    Agile

    Business-centric

    Top Line Growth

    Bespoke Software

    Product-based

    Release Quarterly

    Fail Late

    Waterfall

    IT-centric

    Bottom Line Savings

    Packaged Software

    Project-based

    Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Change How Your Customers Procure Software Focus is on bringing new features to market very quickly

    C o

    m p

    et it

    iv e

    D if

    fe re

    n ti

    at io

    n

    Buy as SaaS Build

    Innovation Software

    Differentiation Software

    D evelo

    p er-led

    P ro

    cu rem

    en t

    Core Software

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Innovation and Differentiation Systems are Different! Stop treating them like systems of record

    IT-centric

    Focus on Saving Money

    Release Quarterly

    Waterfall

    Traditional Infrastructure

    Dev/Ops Separated

    Project-based

    One Large, Monolithic Application Software Manually Installed

    Manual Scaling

    Heavy Weight Governance

    Tight Coupling

    Stateful Middle Tiers

    Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Introducing Cloud Native Architecture Used to build Cloud Native applications

    1 0

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Microservices • Minimal Function • Service Discovery • API-first

    3 • Polyglot • Choreography • Loose Coupling

    DevOps • Automated Provisioning • Automated Setup • Continuous Integration

    1 • Continuous Delivery • Automated Testing • Agile • Culture Change

    * as a Service • Consume Infrastructure and

    Software as a Service • Fault Tolerant by Definition

    2 • Auto-scaling • Infinite Elasticity

    What is Cloud Native? A new style of architecture

    Distributed Computing • Multi-master • Many Data Centers • Many Fault Domains

    4 • Many Regions • Global Server Load Balancing • Replication

    C o

    m p

    et en

    cy

    Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Prerequisite #1 - DevOps Requires changes throughout your entire organization

    Culture Technology

    Respect

    Discuss

    Avoid Blaming

    “Done” Means Released

    Infra as Code

    Shared Version Control

    One Step Build/Deploy

    Don’t Fix Anything

    • Dev respect for ops • Ops respect for dev

    • Ops should be in dev discussions • Dev should be in ops discussions • Shared runbooks

    • No fingerpointing! • Everyone should have some

    culpability

    • Dev’s responsibility shouldn’t ever end – production support required

    • “Throwing it over the wall” is dead

    • Don’t build envs by hand • Scripts checked in and

    managed as src

    • Single system • Ship trunk • Enable features through flags

    • One button build/deploy • If verification fails, stop and

    alert or take action

    • If something breaks, re-deploy. Don’t fix

    • Fix environment setup scripts

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Start Using Containers Helpful to microservices but not a requirement

    Hardware

    Hypervisor

    VM 1

    OS

    App

    VM 2

    OS

    App

    Hardware Virtualization

    Hardware

    Operating System

    Hypervisor

    VM 1

    OS

    App

    VM 2

    OS

    App

    Para-virtualization

    Hardware

    Operating System

    Container 1

    App

    Container 2

    App

    Containers

    • #1 value – app packaging

    • Microservices doesn't rely on containers but they do help: – Higher density

    – Easy to start/stop

    – Portability

    • Containers are lightweight, just like microservices themselves

    • Containers can run in VMs too

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Containers Are Now the Standard Four main use cases

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Hardware

    Operating System

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Container

    App

    Application Packaging

    Continuous Integration DIY PaaS

    Infrastructure Consolidation

    Neatly package applications and supporting environment in immutable, portable containers

    All changes to an app are contained in one immutable container image. Container is tested and deployed as one atomic unit

    Get infrastructure utilization up to 100% (vs 5-10% with VMs) due to over-subscription of resources and near bare metal performance.

    Build a simple PaaS by wiring up containers to a load balancer. New code, patches, etc pushed as new immutable containers.

  • Copyright © 2016, Oracle and/or its affiliates. All rights reserved.

    Artifacts Are Now Immutable Containers – Not EARs, WARs Containers can have any