Microservices at Netflix Scale. First Principles, Tradeoffs, Lessons Learned Ruslan

Similar documents
Architecting for Scale

A Cloud Gateway - A Large Scale Company s First Line of Defense. Mikey Cohen Manager - Edge Gateway Netflix

How Netflix Leverages Multiple Regions to Increase Availability: Isthmus and Active-Active Case Study

Designing Fault-Tolerant Applications

Elastic Efficient Execution of Varied Containers. Sharma Podila Nov 7th 2016, QCon San Francisco

Deploying and Operating Cloud Native.NET apps

Deploying and Operating Cloud Native.NET apps

Cloud-Native Applications. Copyright 2017 Pivotal Software, Inc. All rights Reserved. Version 1.0

Cloud Native Architecture 300. Copyright 2014 Pivotal. All rights reserved.

@joerg_schad Nightmares of a Container Orchestration System

Zero to Microservices in 5 minutes using Docker Containers. Mathew Lodge Weaveworks

ARCHITECTING WEB APPLICATIONS FOR THE CLOUD: DESIGN PRINCIPLES AND PRACTICAL GUIDANCE FOR AWS

DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing WHAT IS CLOUD COMPUTING? 2. Slide 3. Slide 1. Why is it called Cloud?

Microservices Architekturen aufbauen, aber wie?

@unterstein #bedcon. Operating microservices with Apache Mesos and DC/OS

BUILDING MICROSERVICES ON AZURE. ~ Vaibhav

Cloud I - Introduction

Testing in the Cloud. Not just for the Birds, but Monkeys Too!

Design Patterns for the Cloud. MCSN - N. Tonellotto - Distributed Enabling Platforms 68

STATE OF MODERN APPLICATIONS IN THE CLOUD

About Intellipaat. About the Course. Why Take This Course?

Principal Solutions Architect. Architecting in the Cloud

Microservices on AWS. Matthias Jung, Solutions Architect AWS

WHITEPAPER. Embracing Containers & Microservices for future-proof application modernization

Cloud Computing design patterns blueprints

Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

Lessons Learned: Deploying Microservices Software Product in Customer Environments Mark Galpin, Solution Architect, JFrog, Inc.

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

amazon.com s Journey to the Cloud Jon Jenkins AWS Summit June 13, 2011

Alexandre Menezes Cloud Solution Architect

Making Non-Distributed Databases, Distributed. Ioannis Papapanagiotou, PhD Shailesh Birari

Building Web-Scale Applications with AWS

Logging, Monitoring, and Alerting

Kuberiter White Paper. Kubernetes. Cloud Provider Comparison Chart. Lawrence Manickam Kuberiter Inc

Microservices Lessons Learned From a Startup Perspective

5 reasons why choosing Apache Cassandra is planning for a multi-cloud future

Scaling on AWS. From 1 to 10 Million Users. Matthias Jung, Solutions Architect

RELIABILITY & AVAILABILITY IN THE CLOUD

Open Connect Overview

70-532: Developing Microsoft Azure Solutions

YOUR APPLICATION S JOURNEY TO THE CLOUD. What s the best way to get cloud native capabilities for your existing applications?

Deploying Applications on DC/OS

How to Keep UP Through Digital Transformation with Next-Generation App Development

Elastic Load Balancing

Embracing Failure. Fault Injec,on and Service Resilience at Ne6lix. Josh Evans Director of Opera,ons Engineering, Ne6lix

Reactive Microservices Architecture on AWS

PrepAwayExam. High-efficient Exam Materials are the best high pass-rate Exam Dumps

Container-Native Storage

CONTINUOUS DELIVERY WITH DC/OS AND JENKINS

Using AWS to Build a Large Scale Dockerized Microservices Architecture. Dr. Oliver Wahlen moovel Group GmbH Frankfurt, 30.

Send me up to 5 good questions in your opinion, I ll use top ones Via direct message at slack. Can be a group effort. Try to add some explanation.

Application Centric Microservices Ken Owens, CTO Cisco Intercloud Services. Redhat Summit 2015

CONTINUOUS DELIVERY WITH MESOS, DC/OS AND JENKINS

A Journey to DynamoDB

Building Microservices with the 12 Factor App Pattern

Architecting Applications to Scale in the Cloud

When (and how) to move applications from VMware to Cisco Metacloud

Cloud Computing. Technologies and Types

Extend NonStop Applications with Cloud-based Services. Phil Ly, TIC Software John Russell, Canam Software

Microservices without the Servers: AWS Lambda in Action

利用 Mesos 打造高延展性 Container 環境. Frank, Microsoft MTC

Microservices Beyond the Hype. SATURN San Diego May 3, 2016 Paulo Merson

PREPARING FOR DISASTER

AWS Solution Architecture Patterns

Introduction to the Active Everywhere Database

This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and

How to go serverless with AWS Lambda

Pimp My Data Grid. Brian Oliver Senior Principal Solutions Architect <Insert Picture Here>

Container 2.0. Container: check! But what about persistent data, big data or fast data?!

Container Orchestration on Amazon Web Services. Arun

Training on Amazon AWS Cloud Computing. Course Content

Enroll Now to Take online Course Contact: Demo video By Chandra sir

Architecting for Failure in a Containerized World. Tom Faulhaber Infolace

Zabbix on a Clouds. Another approach to a building a fault-resilient, scalable monitoring platform

Securely Access Services Over AWS PrivateLink. January 2019

Oracle WebLogic Server 12c on AWS. December 2018

Amazon Aurora Relational databases reimagined.

Servers fail, who cares? (Answer: I do, sort of) Gregg Ulrich, #netflixcloud #cassandra12

SBB. Java User Group 27.9 & Tobias Denzler, Philipp Oser

Service Mesh and Microservices Networking

Industry-leading Application PaaS Platform

BARCELONA. 2015, Amazon Web Services, Inc. or its affiliates. All rights reserved

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

CS-580K/480K Advanced Topics in Cloud Computing. NoSQL Database

Cloud Computing Patterns & Best Practices. Ezhil Arasan Babaraj Director of R&D Labs CSS Corp, India

AWS Administration. Suggested Pre-requisites Basic IT Knowledge

Architekturen für die Cloud

Service Computation 2018 February 18 22, Keynote Speech on Microservices A modern, agile approach to SOA

Document Sub Title. Yotpo. Technical Overview 07/18/ Yotpo

AWS Integration Guide

Aspirin as a Service: Using the Cloud to Cure Security Headaches

SUPERIOR MISSION SYSTEMS Faster, Resilient, Secure & More Affordable

Jim Mains Director of Business Strategy and Media Services Media Solutions Group, EMC Corporation

Getting Started with AWS Security

To Kill a Monolith: Slaying the Demons of a Monolith with Node.js Microservices on CloudFoundry. Tony Erwin,

Personal Statement. Skillset I MongoDB / Cassandra / Redis / CouchDB. My name is Dale-Kurt Murray. I'm a Solutiof

The Evolution of Microservices. Adrian Technology Fellow - Battery Ventures June 2016

Machine Learning meets Databases. Ioannis Papapanagiotou Cloud Database Engineering

4 Effective Tools for Docker Monitoring. By Ranvijay Jamwal

Transcription:

Microservices at Netflix Scale First Principles, Tradeoffs, Lessons Learned Ruslan Meshenberg @rusmeshenberg

Microservices: all benefits, no costs?

Netflix is the world s leading Internet television network with over 81 million members in over 190 countries enjoying more than 125 million hours of TV shows and movies per day, including original series, documentaries and feature films.

Ruslan Meshenberg Director, Platform Engineering Runtime Systems Container Runtime Persistence and Databases Real Time Data Infrastructure

Netflix runs on microservices

Netflix journey to microservices

Our journey took 7 years https://media.netflix.com/en/company-blog/completing-the-netflix-cloud-migration

Data Center - Monolith RDBMS

August 2008

First Principles

Buy vs. Build Use or contribute to OSS technologies first Only build what you have to

Services should be stateless* Must not rely on sticky sessions Prove by Chaos testing *Except the Persistence / Caching layers

Scale out vs. scale up If you keep scaling up, you ll hit a limit Horizontal scaling gives you a longer runway

Redundancy and Isolation For Resiliency Make more than one of anything Isolate the blast radius for any given failure

Automate destructive testing Simian Army Started with Chaos Monkey

First Principles In Action

Stateless services Service A Service B Service B Service B Service B Service B

Verify stateless

Data from RDBMS to Cassandra NoSQL at scale Open Source Multi-Regional Multi-directional Available Partition Tolerance Tunable Consistency*

Multi-Regional Replication Zone B 500ms Zone B Zone A Zone B Zone A Zone B Client Client Zone A Local Quorum (Typical) Zone C Zone A Zone C Zone C Zone C Region A Bi-directional Nightly compare & repair Region B

Last, but not least - Billing

Microservices Benefits

Our Priorities 3. Efficiency 1. Innovation 2. Reliability

Innovation: tight coupling doesn t work Develop Team A Team B Team C Test Release

Innovation: Loose coupling Team A Team B Team C Develop, Test, Deploy, Support Develop, Test, Deploy, Support Develop, Test, Deploy, Support

Support Architect Run Design End-end ownership Deploy Develop Test Review

End-end ownership + velocity Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support Architect Design Develop Review Test Deploy Run Support

Separation of concerns UI Feature A Feature B Feature C Personalization Feature D A/B Test E Leverage Mid-tier A/B Test F Feature H Infrastructure Availability Scalability Security

Microservices Costs

Microservices Is an org change! Org changes are hard!

Evolving the organization

Central infrastructure investment

Migration doesn t happen overnight Living in the hybrid world Supporting 2 tech stacks Double the maintenance Multi-master data replication

Microservices - Lessons Learned

IPC is crucial for loose coupling Common language between the services Establishes the contract of interaction

Caching to protect DBs Client Application Request Cache Client Library EVCache Client Service Client...... S S S S 1. Read from Cache 2. On cache miss call service 3. Service calls DB and responds 4. Service updates the cache... DB DB DB DB

Operational visibility matters If you can t see it, you can t improve it

Will your Telemetry scale? Observe Orient Act Decide

Edge Middle Tier & Platform Zuul EVCache ELB API Cassandra Playback

Reliability Matters We strive for 4 9 s of availability That leaves only 52 minutes of downtime per YEAR Netflix outages lead to

Disappointment

Outrage

Withdrawal

Humor

Cascading failures 99% availability 99% availability 99% availability 99% 500 = 0.0657%

Microservice failure FIT Fault-Injection Test Framework

Regional fail-over x x

Regional fail-over

A word on containers Containers change the level of encapsulation from VM to process Containers can help deliver great developer experience To run containers in production at scale

Requires something like this: Cassandra Zookeeper Docker Docker Registry Docker Registry Registry S3 Titus UI Titus UI Titus UI Titus Rhea Rhea API Titus Master Job Management & Scheduler Fenzo Mesos Master Titus Agent container container container container container container docker zfs docker metrics agent Titus executor logging agent VPC networking driver CI/CD EC2 Autocaling API mesos agent AWS container metadata proxy Integration Amazon VM s 50

Microservices - Resources

http://netflix.github.com

http://netflix.github.com

http://netflix.github.com

http://netflix.github.com

http://netflix.github.com

http://netflix.github.com

Wrap up

Microservices bring great value to development velocity, availability and other dimensions

Microservices at scale require organizational change and centralized infrastructure investment

Be aware of your situation and what works for you

Questions? Ruslan Meshenberg @rusmeshenberg