Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

GCP Meetup #3 - Approaches to Cloud Native Architectures

570 views

Published on

Talk by Daniel Leahy and Nic Gibson, given at the Google Cloud Meetup on March 3, 2020, hosted by Nine Internet Solutions AG - Your Swiss Managed Cloud Service Provider.

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

GCP Meetup #3 - Approaches to Cloud Native Architectures

  1. 1. Techtalk Approaches to Cloud Native Daniel Leahy & Nic Gibson Google Cloud Zurich
  2. 2. Proprietary + Confidential Your Customers Are Changing Proprietary + Confidential Your Business is Changing
  3. 3. How Application Development Changed ● Waterfall → Agile ● Physical Servers → Containers ● Closed Source → Open Source ● Application Servers → Embedded in code ● Monoliths → Microservices ● ESB → Service Mesh ● C & Assembler → JS, Python & Go ● Rise of Frameworks ● Public APIs ● Mobile Apps
  4. 4. Compute Options
  5. 5. Compute Options IaaS (GCE) Virtual Machines You manage everything on top of the Hypervisor KaaS (GKE) Containers You manage everything on top of Kubernetes CaaS (Run) Containers You manage everything within your containers PaaS (GAE) Apps You manage your application and dependencies FaaS (GCF) Functions You manage your functions and dependencies
  6. 6. Of course, all the services run on a physical server in the real data center. You just don’t have to take care of them. You can focus on the important things.
  7. 7. Proprietary + Confidential Accelerating Innovation: a Platform Approach Networking Storage Servers Virtualization Operating System Middleware Runtime Data ApplicationYouManage Networking Storage Servers Virtualization Operating System Middleware Runtime Data Application YouManage IaaS On-prem or On-Cloud Unified Platform
  8. 8. Microservice Design Recommendations ● Be Customer Driven ● CRUD Operations Are Great Candidates ● Provide APIs ● Favor asynchronous requests ● Make apps stateless ● Know Your Latencies And Trace Requests ● Use The “Database per Service” Pattern ● Know “Why” You Are Using Microservices ● Follow The 12 Factors ● Think 10X
  9. 9. Confidential & Proprietary What We Mean By “Serverless” Programming model Focus on code Event-driven Stateless Operational model Billing model Pay for usageZero ops Automatic scaling Managed security
  10. 10. Microservice sprawl
  11. 11. Proprietary + Confidential It’s all about the apps: the Cloud Native Maturity Model Cloud Native Cloud Resilient Cloud Friendly Cloud Ready Microservices, API-first architecture DevOps, CI/CD, Zero Downtime Updates Fault Tolerant and Resilient Metrics and monitoring Tested for failure modes 12 Factor methodology Stateless services, Horizontal scalability Leverage platform for scale and availability Externalized storage and caching Self contained Platform managed configuration and services
  12. 12. Proprietary + Confidential Platform Design Scale Resiliency Automation Security Autoscale infrastructure as needed Optimize infrastructure for use cases (CPU, Memory) Provide Scale-Out data services Design for failure Distribute over multiple zones and regions Have Infrastructure respond intelligently No manual maintenance Canary deploys and rollbacks Immutable, Disposable infrastructure Monitoring and Alerting to meet Service Objectives Auto-rotate credentials and nodes Automate regular node & pod replacements Container scanning
  13. 13. Beyond Kubernetes: Reintroducing Serverless ● Serverless is not new ○ AWS Lambda et. al. took the world by storm ○ Google App Engine has been around since 2008 ● But existing solutions provided vendor lock-in, and often limited runtimes ● For many, Kubernetes was the perfect abstraction layer
  14. 14. 😁 Want to Write code 😱 Still Have to Build docker image locally Upload image to registry Deploy service Expose to the internet Setup logging & monitoring Scale workload... Kubernetes for developers
  15. 15. Anthos: Bringing the cloud to you. CI/CD Logging & monitoring Service management Serverless MarketplaceOn-prem Cloud Config. management Solutions Core Services
  16. 16. Cloud Run Bringing serverless to containers Introducing
  17. 17. Cloud Run Fully serverless No cluster to manage Pay for what you use Cloud Run on GKE Serverless developer experience Runs in your GKE cluster Pay for provisioned resources Serverless containers, where you want them
  18. 18. Cloud Run GKE Managed Kubernetes Knative Compatible 😁 Want to Write code 😁 Don’t Have to Build docker image locally Upload image to registry Deploy service Expose to the internet Setup logging & monitoring Scale workload... Cloud Run on GKE for developers
  19. 19. Products Google Cloud Run Red Hat OpenShift SAP Kyma Pivotal Function Service IBM Cloud Kubernetes Service TriggerMesh Build Serving KubernetesPlatform Primitives Events ... Knative-based products
  20. 20. Knative Momentum Long tail of contributors drive community momentum VMware, Huawei, Cisco, TriggerMesh, Dropbox, SAP, Microsoft, Schibsted, Apache, Independent, China Mobile NTT, CloudBees, Caicloud, Inovex, Docker, Heureka, CNCF, Liz Rice, Zalando, Douyu.com, Nebula. OpsGenie. Terracotta, Eldarion, Giant Swarm, Heroku, Revolgy, SORINT.lab, Switch, Ticketmaster, Virtustream,, Alipay, Blue Box, Cruise Automation, EPAM Systems, EVRY, Foreningen Kollegienet Odense, Giddyinc, IPB, Manifold.co, Orange, Puppet, Stark & Wayne, Weaveworks, Disney Interactive, Ivx, Mediative, Ministère de l'Agriculture et de l'Alimentation, NatureServe, Samsung SDS. Typeform, Wise2c Knative contributions by company, avg % since launch Source: CNCF knative.teststats.cncf.io Redhat (9%) Google (61%) Pivotal (6%) IBM (4%) All others (20%)
  21. 21. Software Delivery on cloud is becoming critical Anthos is Google’s hybrid product enabling use and management of Kubernetes/GKE and friends everywhere. Control Plane Marketplace Cloud Services Other Clouds
  22. 22. © 2018 Google LLC. All rights reserved. Continuous Integration (CI) The practice of merging the work products of individual developers together into a repository regularly. The primary purpose is to enable early detection of integration bugs, resulting in tighter cohesion and more development collaboration. Continuous Delivery (CD) A software engineering approach in which teams produce software in short cycles and use processes ensuring that the software can be reliably released to production at any time. What is CI/CD? An approach that helps reduce the risk of delivering changes by allowing for more frequent and incremental updates to applications in production.
  23. 23. Software Delivery on GCP Run Continuous Integration (CI) steps and build containers with Cloud Build Store containers in Container Registry Use Spinnaker for Continuous Deployment (CD) Run, auto-scale, and heal your app (Kubernetes Engine, App Engine, Compute Engine, Cloud Functions) Monitor, debug, and optimize your apps and services using Stackdriver Let Istio secure and manage your services Push code to revision control repository
  24. 24. Software Delivery on GCP Run Continuous Integration (CI) steps and build containers with Cloud Build Store containers in Container Registry Use Spinnaker for Continuous Deployment (CD) Run, auto-scale, and heal your app (Kubernetes Engine, App Engine, Compute Engine, Cloud Functions) Monitor, debug, and optimize your apps and services using Stackdriver Let Istio secure and manage your services Push code to revision control repository Build Run
  25. 25. © 2018 Google LLC. All rights reserved. Best Practices for Effective Pipelines ● Full automation with the exception of manual approval gates. ● No bottlenecks, i.e. delays in promoting a given code change do not block other, potentially more critical changes from being promoted. Speed ● Changes are thoroughly tested before being deployed to production. ● Production deploys are performed in a safe manner, e.g. canary or blue/green to reduce risk, with failures triggering an automatic rollback to the prior version. Quality ● Pipelines are fully integrated with the SCM branching and merging strategy. ● Important events (failures, etc.) trigger alerts to the appropriate stakeholders. ● Each artifact is marked with the metadata necessary to trace how it was produced and the path it has taken in the pipeline. Visibility Scalability ● Stages that are common across pipelines are organized into a library to be centrally managed and highly reused.
  26. 26. How ready is GCP for Hybrid / Multi-Cloud? Platform as a Service Deployment Tools Developers End Users CI/CD and DevOps Store Containers Container Registry Deploy Changes Spinnaker on GKE CaaS Kubernetes EngineDevelop & Merge Source Repositories Trigger & Build Cloud Build Monitor Systems Stackdriver FaaS Cloud Functions Microservices Control/Audit Istio Microservices Microservices Deployment Manager Terraform Loose Coupling and Partner APIs Multi / Hybrid Partner Systems
  27. 27. How ready is GCP for Hybrid / Multi-Cloud? Developers End Users Store Containers Container Registry Develop & Merge Source Repositories Trigger & Build Container Builder FaaS Cloud Functions Microservices Microservices Deployment Manager Multi / Hybrid Partner Systems Platform as a Service Deployment Tools CI/CD and DevOps Deploy Changes Spinnaker on GKE CaaS Kubernetes Engine Monitor Systems Stackdriver Microservices Control/Audit Istio Terraform Loose Coupling and Partner APIs ✔ ✔ ✔ ✔ ✔
  28. 28. Open Source for Cloud Native and Cloud Agnostic Approach Borg 2012 2002 2004 2006 2008 2010 GFS MapReduce Bigtable Dremel Colossus FlumeJava Spanner Kubernetes 2015 2018 TensorFlow
  29. 29. see the documentation GCP Marketplace Explore, launch, and manage solutions in just a few clicks Production-grade software offering Quickest way to explore, launch, manage pre-built solutions and services on Google Cloud Unified billing Built on top of Deployment Manager
  30. 30. GCP Marketplace for Anthos lets you manage production-grade 3rd party software in just a few clicks. ● Deploy packaged Kubernetes applications to wherever Anthos runs ● Single bill for GCP and 3rd party services ● Managed updates
  31. 31. Migrate for Anthos Bringing the power of containers to existing workloads. ● Live migrate VMs into containers in GKE: ○ Service processes converted into Dockerfiles ○ Disks imported to Persistent Volumes ○ Everything assembled in a StatefulSet ● Capitalize on Kubernetes APIs and unified logging and monitoring ● Migrate from VMs to Google Kubernetes Engine (GKE)
  32. 32. Analyze GIS data in BigQuery with familiar SQL BigQuery GIS Accurate spatial analyses with Geography data type over GeoJSON and WKT formats Support for core GIS functions – measurements, transforms, constructors, etc. – using familiar SQL Automate data delivery Make insights accessible Tee up real-time insights Protect business data Simplify data operations Build the foundation for ML & AI
  33. 33. Smart city innovations, enabled by BigQuery Predicting hazardous driving behavior Using BigQuery ML and BigQuery GIS Weather datasets External GIS data BigQuery 2.5B streaming inserts, daily Automate data delivery Make insights accessible Tee up real-time insights Protect business data Simplify data operations Build the foundation for ML & AI
  34. 34. The future of applications, and the infrastructure that they run on, is created with containerized microservices, managed through a declarative system with a single control experience that uses a service mesh to spans all application locations. Google’s POV
  35. 35. Cloud Native, Cloud Agnostic “Our customers will benefit from the winning combination of Temenos’ functionally rich and technologically advanced digital banking platform on Google Cloud. Together, we will enable banks to reduce their time to market and operational complexity, as well as elastically scale and deliver outstanding digital customer experiences. With Google Cloud’s Anthos, we give banks the freedom to innovate and reap the true benefits of multi-cloud.” Max Chuard, CEO Temenos
  36. 36. No more trade-offs Development is agile and rapid, without causing a security risk - policies are universal Engineering culture is unified, not segmented Portability and reliability are inherent Freedom is granted despite enterprise grade delivery capabilities Customers aren’t penalized for their legacy or preference

×