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

Go: The Cloud Native Language

Andre Almar
November 10, 2020

Go: The Cloud Native Language

Andre Almar

November 10, 2020
Tweet

More Decks by Andre Almar

Other Decks in Technology

Transcript

  1. Go: The Cloud Native
    Language
    Andre Almar
    Principal Solutions Architect
    This presentation is available at:
    https://github.com/andrealmar/talks

    View Slide

  2. © 2018 Cloud Native Computing Foundation
    2
    $whoami
    ● Site Reliability Engineer / DevOps Engineer
    ● Speaker
    ● DevOps BH - Meetup Organizer
    ● DevOpsDays BH - Organizer
    ● TDC BH 2019-2020 - Organizer & Technical Committee
    Member
    ● CNCF BH - Organizer

    View Slide

  3. © 2018 Cloud Native Computing Foundation
    3
    Projects Members

    View Slide

  4. © 2018 Cloud Native Computing Foundation
    4
    Containers
    Cloud
    Native
    From Virtualization to Cloud Native
    •Cloud native computing uses an open source
    software stack to:
    – segment applications into microservices,
    – package each part into its own container
    – and dynamically orchestrate those containers
    to optimize resource utilization
    Open
    Source
    IaaS
    PaaS
    Open
    Source
    PaaS
    Virtualiza-
    tion
    2000 2001 2006 2009 2010 2011
    Non-
    Virtualized
    Hardware
    2013 2015
    IaaS

    View Slide

  5. View Slide

  6. Cloud Native

    View Slide

  7. © 2018 Cloud Native Computing Foundation
    7
    Cloud Native
    The MODERN WAY to develop software

    View Slide

  8. © 2018 Cloud Native Computing Foundation
    8
    Cloud Native
    It is NOT Lift & Shift

    View Slide

  9. © 2018 Cloud Native Computing Foundation
    9
    Cloud Native Apps characteristics
    Always Available
    Elasticity
    Redundancy
    Automation
    Modular Design
    Stateless

    View Slide

  10. Go (Golang)

    View Slide

  11. Robert Griesemer Rob Pike Ken Thompson

    View Slide

  12. © 2018 Cloud Native Computing Foundation
    12
    Simplicity
    Programming Happiness
    Compilation (Fast & Cross)
    Standard Library
    Garbage Collection

    View Slide

  13. © 2018 Cloud Native Computing Foundation
    13

    View Slide

  14. © 2018 Cloud Native Computing Foundation
    14
    CNCF Graduated Projects

    View Slide

  15. © 2018 Cloud Native Computing Foundation
    15
    CNCF Incubated Projects

    View Slide

  16. © 2018 Cloud Native Computing Foundation
    16
    Go is FAST!!!

    View Slide

  17. © 2018 Cloud Native Computing Foundation
    17
    Code Style and Linting

    View Slide

  18. © 2018 Cloud Native Computing Foundation
    18
    Doesn't need a runtime

    View Slide

  19. © 2018 Cloud Native Computing Foundation
    19
    JAVA the Hutt

    View Slide

  20. © 2018 Cloud Native Computing Foundation
    20

    View Slide

  21. © 2018 Cloud Native Computing Foundation
    21
    Key Takeaways
    Your Apps & Infrastructure MUST be:
    - Horizontally scalable
    - No single point of failure
    - Resilient and self-healing
    - Minimal operator overhead
    - Decoupled from the underlying platform

    View Slide

  22. © 2018 Cloud Native Computing Foundation
    22
    Key Takeaways
    You are now a SOFTWARE ENGINEER

    View Slide

  23. © 2018 Cloud Native Computing Foundation
    23
    Key Takeaways
    Please learn some Go

    View Slide

  24. Please follow up with Andre Almar
    [email protected],
    @andrealmar_ on Twitter,
    @andrealmar on Instagram
    andrealmar.com
    This presentation is available at:
    https://github.com/andrealmar/talks

    View Slide