13

AWS re:Invent 2017: How Netflix Tunes EC2

 4 years ago
source link: http://www.brendangregg.com/blog/2017-12-31/reinvent-netflix-ec2-tuning.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

AWS re:Invent 2017: How Netflix Tunes EC2

31 Dec 2017

My last talk for 2017 was at AWS re:Invent, on "How Netflix Tunes EC2 Instances for Performance," an updated version of my 2014 talk. There was so much demand for it this year that I had three overflow rooms streaming it, and people still couldn't get in. (I shouldn't let this go to my head, as there were 42,000 attendees at re:Invent looking for something to see!) Fortunately, it was videoed for those who missed it.

A video of the talk is on youtube:

The slides are on slideshare:

I love this talk as I get to share more about what the Performance and Operating Systems team at Netflix does, rather than just my work. Our team looks after the BaseAMI, kernel tuning, OS performance tools and profilers, and self-service tools like Vector. We're not the only people doing performance and performance tuning at Netflix either: all the development teams do performance work. We help where we can.

My talk included a section on Linux kernel tunables, as follows. WARNING: These tunables were developed in late 2017, for Ubuntu Xenial instances on EC2.

schedtool –B PID

Virtual Memory

vm.swappiness = 0       # from 60

Huge Pages

# echo madvise > /sys/kernel/mm/transparent_hugepage/enabled
kernel.numa_balancing = 0

File System

vm.dirty_ratio = 80                     # from 40
vm.dirty_background_ratio = 5           # from 10
vm.dirty_expire_centisecs = 12000       # from 3000
mount -o defaults,noatime,discard,nobarrier …

Storage I/O

/sys/block/*/queue/rq_affinity  2
/sys/block/*/queue/scheduler        noop
/sys/block/*/queue/nr_requests  256
/sys/block/*/queue/read_ahead_kb    256
mdadm –chunk=64 ...

Networking

net.core.somaxconn = 1000
net.core.netdev_max_backlog = 5000
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_wmem = 4096 12582912 16777216
net.ipv4.tcp_rmem = 4096 12582912 16777216
net.ipv4.tcp_max_syn_backlog = 8096
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 10240 65535
net.ipv4.tcp_abort_on_overflow = 1    # maybe

Hypervisor (Xen)

echo tsc > /sys/devices/system/clocksource/clocksource0/current_clocksource

Not a lot has changed with these tunables since my 2014 talk.

What I was most excited for was the launch of a new EC2 hypervisor, which I referred to in the video as the "c5 hypervisor". Later that night the real name was released: the "Nitro" hypervisor, as well as the bare metal instance type. My last post on Introducing Nitro explained it and the hypervisor development journey.

Many other Netflix staff spoke at re:Invent (list here). Here are the talks from my immediate colleagues in building F, level 2 at Netflix:

Check them out. It's awesome to see my coworkers on the big stage doing great!


Recommend

  • 99

    几年前如果你有一个问题在寻找解决方案,很可能别人会告诉你用大数据。这几年,这个答案变成了机器学习、人工智能。至于如何搭建一个、机器学习、人工智能解决方案,我在今年 AWS re:Invent 看到很多 AWS 客户的答案是 Serverless。 这篇文章简单回顾了今年 AWS re...

  • 12

    Step-by-Step AWS EC2 Set-up Tutorial This article is a simple walk-through of the process of setting up an AWS EC2 instance. We will go through instance initialization, transferring of files from your local files...

  • 16

    Dec 1, 2017 Aws Ec2 Virtualization 2017: Introducing Nitro http://www.brendangregg.com/blog/2017-11-29/aws-ec2-virtualization-2017.html @木芽 AWS EC2虚拟化2017 :介绍Nitro虚拟化 在云计算中,硬件虚拟化经历了漫长...

  • 11
    • blog.kylegalbraith.com 4 years ago
    • Cache

    The Enormous Diversity Problem at AWS re:Invent 2017

    The Enormous Diversity Problem at AWS re:Invent 2017📅 December 08, 2017 – Kyle GalbraithI will be the first to admit I don't have all the answers. I will also say that I speak as a white male programmer in a position of p...

  • 9
    • netflixtechblog.com 4 years ago
    • Cache

    Netflix at AWS re:Invent 2019

    Responses by Shefali Vyas DalalAWS re:Invent is a couple weeks away a...

  • 8
    • towardsdatascience.com 4 years ago
    • Cache

    Jupyter notebook on AWS EC2 Instance

    Jupyter notebook on AWS EC2 InstanceA great mix of ubiquitous cloud and usability of Jupyter

  • 11

    AWS Session Manager 管理 EC2 实例 2021-02-16 — Yanbin 管理一个远程机器最常规的做法是 SSH(Unix/Linux, Mac) 或 PowerShell/RDP(Windows),这就要求远端机器要开通相应的访问端口及打开防火墙,配置好登陆用的用户名密码或 SSH Key。当选...

  • 7

    AWS EC2 (2 Part Series) In this exercise we will start a basic ec2 server and host a small server on it. Type AWS EC2 in the search console...

  • 11

    How Netflix Tunes EC2 Instances for Performance 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How Netflix Tunes EC2 Instan...

  • 8

    AWS re:Invent 2017: How Netflix Tunes Amazon EC2 Instances for Performance (CMP325)14,861 viewsDec 13, 2017 ...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK