Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Operability in Serverless Environments

Operability in Serverless Environments

http://tokyo.serverlessconf.io/

Having your web applications inside serverless environments doesn’t mean forgetting operations. Others have already emphasized what to watch out for in terms of operability in serverless environments. Even though the technology stack, APIs and level of abstractions changed, the first principles in running, operating and maintaining your service for your customers is almost the same.

These concepts applies to your organization supporting your serverless applications as well. For example, without a corresponding organizational transformation, having a serverless team becomes a short-term organizational hack. The interest from technical debit will ask for payment. And suddenly, you realize that you’re back to where you started!

In this talk, I will share some lessons learned from running Platform-as-a-Service Solutions from my experiences as a backend services team and a vendor. There are a lot of similarities since both value propositions to developers and the rest of the organization are similar. Conway’s law is still alive and well when setting up teams to build and run your serverless applications.

Allan Espinosa

October 01, 2016
Tweet

More Decks by Allan Espinosa

Other Decks in Programming

Transcript

  1. Serverlessͷૢ࡞ੑ
    Allan Espinosa

    View Slide

  2. @AllanEspinosa
    PaaS Engineer

    View Slide

  3. View Slide

  4. @AllanEspinosa
    CloudFoundry Experience
    • ։ൃͱӡ༻
    • Private Cloud for other teams
    • “Platform team” “DevOps team”
    • ೔ຊͰ̏೥ಇ͖·ͨ͠

    View Slide

  5. @AllanEspinosa
    Engine Yard Cloud Experience
    • DevOpsαϙʔτΤϯδχΞ
    • chef-solo 0.6.x, 10.x.x, 12.x.x (new)
    • PaaS Vendor

    View Slide

  6. @AllanEspinosa
    Container Experience
    Kubernetes, CoreOS, Deis
    • DevOpsαϙʔτΤϯδχΞ
    • buildpacks
    • All container bugs!

    View Slide

  7. @AllanEspinosa
    Operability without Servers
    • monitoring
    • deployment
    • security
    • networking

    View Slide

  8. –M. Conway, “How Committees Invent,” Datamation, 1968.
    “… organizations which design systems… are constraint to
    produce designs which are copies of the communication
    structures of these organizations.”
    Conway’s Law
    @AllanEspinosa

    View Slide

  9. @AllanEspinosa
    Operability on Conway
    won’t be achieved unless
    • importance not communicated
    • no discussion
    • Ops as second class citizens

    View Slide

  10. Platform “Teams”

    View Slide

  11. @AllanEspinosa
    Early Days of
    • Developer focus
    • ։ൃ͚ͩʂ
    • no operation tooling
    • logs, metrics, instrumentation
    • fork to achieve ૯࠶ੜ

    View Slide

  12. @AllanEspinosa
    Fork
    • legal! bureaucracies!
    • priority mismatch
    • unaccepted patches
    ऐ͔ͬͨ͠

    View Slide

  13. @AllanEspinosa
    Organizational changes
    • OSS first
    • ࠜճ͠
    • ϗϨϯι

    View Slide

  14. @AllanEspinosa
    Community Evolution
    • Operability (Finally!)
    • Composability

    View Slide

  15. @AllanEspinosa
    Early Chef (0.6)
    • early corporate contributor
    • first Chef Server
    • mostly developers

    View Slide

  16. Early Docker

    View Slide

  17. @AllanEspinosa
    Show HN
    Resume-Driven Development
    , Inc.
    Raging and Forking
    Operability
    Time
    Visibility

    View Slide

  18. “Other” Developers

    View Slide

  19. @AllanEspinosa
    “Other” developers
    “Just focus on your application”
    • double-edged sword྆ਕͷ݋
    • dev-oriented incentives
    • communicate operability

    View Slide

  20. @AllanEspinosa
    Support Questions
    Devs
    • Our app is down. HELP!
    • How many instances should my application have?
    Ops
    • I debugged XXX, expected was A but got B. Can you help us dig
    deeper?

    View Slide

  21. @AllanEspinosa
    Container “Adopters”
    • network is “reliable”
    • decentralized logging
    • blaming Docker

    View Slide

  22. @AllanEspinosa

    View Slide

  23. View Slide

  24. So Serverless

    View Slide

  25. @AllanEspinosa
    Communication
    • Provider?
    • Customers?
    • Community?
    • Teammates?

    View Slide

  26. –Melvin Conway
    “… flexibiliy of organization is important to effective design.”
    Conwayͷ΋ͬͱॏཁͳϙΠϯτ
    @AllanEspinosa

    View Slide

  27. Thank You
    @AllanEspinosa
    ςΟʔγϟπ͕͋Γ·͢Αʂ

    View Slide