

AWS re:Invent 2017: How Netflix Tunes EC2
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.

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:
- Vadim Filanovsky (perf team) co-presented Auto Scaling Made Easy: How Target Tracking Scaling Policies Hit the Bullseye
- Dave Hahn (CORE team) gave an updated A Day in the Life of a Netflix Engineer III
- Nora Jones (chaos team) gave a keynote on Why We Need More Chaos - Chaos Engineering, That Is, as well as a talk Performing Chaos at Netflix Scale
- Casey Rosenthal (traffic and chaos) Models of Availability
- John Bennett (networking) co-presented How Netflix Monitors Applications in Near Real-Time with Amazon Kinesis
- Donovan Fritz and Joel Kodama (networking) A Day in the Life of a Cloud Network Engineer at Netflix
- Alex Maestretti (security) co-presented SecOps 2021 Today: Using AWS Services to Deliver SecOps
- Will Bengtson (security) co-presented Best Practices for Managing Security Operations on AWS
- Patrick Kelley and Travis McPeak (security) Using Access Advisor to Strike the Balance Between Security and Usability
- Andrew Spyker (Titus) co-presented Elastic Load Balancing Deep Dive and Best Practices
- Andrew Park and Sebastien de Larquier Tooling Up for Efficiency: DIY Solutions @ Netflix
- Rajan Mittal and Andrew Park Why Regional Reserved Instances Are a Game Changer for Netflix
- Monal Daxini Netflix Keystone SPaaS: Real-time Stream Processing as a Service
- Our department director Coburn Watson Walking the tightrope: Balancing Innovation, Reliability, Security, and Efficiency
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
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
Responses by Shefali Vyas DalalAWS re:Invent is a couple weeks away a...
-
8
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