SlideShare una empresa de Scribd logo
1 de 43
Descargar para leer sin conexión
5 NEW HIGH-PERFORMANCE
FEATURES IN RED HAT OPENSHIFT
Patterns and technology to run critical, high
performance line-of-business applications on Red
Hat OpenShift Container Platform
Derek Carr, Jeremy Eder
Red Hat Product Engineering
May 2018
A SHORT STORY
I WANT TO RUN ON
OPENSHIFT
BUT MY WORKLOAD IS
SPECIAL
IT IS LATENCY SENSITIVE
IT HAS A HUGE CACHE
IT REQUIRES HOST
LEVEL TUNING
IT NEEDS A SPECIAL
DEVICE
IT’S A SNOWFLAKE
ACTUALLY, I HAVE A
LOT OF WORKLOADS
LIKE THIS!
WHAT HAS CHANGED
COMMUNITY
sig-node, sig-scheduling, wg-resource-mgmt
● Expand the set of workloads runnable on the platform
● Maintain reliability
● Keep it simple
WORKLOAD TYPES
Going beyond generic web hosting workloads
Big Data
NFV
FSI
Animation
ISVsHPC
Machine
Learning
● Identify requirement overlap
across verticals
● Plumb enhancements
generically
● Allow flexibility
DRILL DOWN ON OVERLAP
Feature FSI NFV ISV BD/ML ANIM HPC
CPU pinning (cpuset) Yes Yes Yes Maybe Maybe Yes
Device passthrough (GPU, NIC, etc.) Yes Yes Yes Yes Maybe Yes
Sysctl support Yes Yes Yes Yes Yes Yes
HugePages Yes Yes Yes Yes Maybe Maybe
NUMA Yes Yes Yes Maybe Maybe Yes
Separate control and data plane Yes Yes Yes Yes Yes Yes
Kernel module loading Yes Yes Yes Maybe Yes Maybe
PROGRESS REPORT
What has been done in the last year?
● CPU manager (static pinning)
● HugePages
● Device Plugins (GPU, etc.)
● Sysctl support
● Extended Resources
RESOURCE MANAGEMENT: PRIMER
RESOURCES AND TUNING OPTIONS
Natively understood
● CPU
● Memory
● Ephemeral storage
● Persistent storage
● HugePages
● Device Plugins
● Extended Resources
Control knobs available
● CPU Manager policy (none, static)
● sysctls (safe / unsafe)
RESOURCE REQUIREMENTS
Describes the compute resources needed by a pod
Limits
● Maximum burst (if available)
Requests
● Minimum amount
(guaranteed)
Overcommit
● Ration of limit to request
QUALITY OF SERVICE
Keep the end-user API simple, let the platform optimize for SLA guarantees
Burstable
● Requests < Limits
Best Effort
● No resource limits
Guaranteed
● Requests = Limits
Beware
● Workload SLA
● Eviction
Future
● QoS is an abstraction to allow kubelets to support different tuning
options in the future for particular resource types while keeping
API simple
CLUSTER TOPOLOGY
Control Plane
Compute Nodes and Storage Tier
Infrastructure
master
and etcd
master
and etcd
master
and etcd
registry
and
router
registry
and
router
LB
registry
and
router
NODE BOOTSTRAPPING
Compute Nodes...
Config Maps
node-compute
node-cpu-bound
node-master
node-highmem
Fetch config from server
● Default kubelet arguments
● Default labels
● Default taints
● Changes are kept in sync
node-config.yaml
(node-highmem)
node-config.yaml
(node-cpu-bound)
FEATURE 1: CPU MANAGER
CPU
How is it exposed?
● Compressible
● Measured in cores
● Not normalized for clock speed
● Use node labels to differentiate
● Assigned per container
CPU
How is it enforced?
Result
● Distributed across all cores
● Throttling
Completely Fair
Scheduler (CFS)
● Requests via cpu.shares
● Limits via cpu.cfs_quota_us
Challenge
● CPU bound workloads
(cache affinity and
scheduling latency) are
impacted
CPU MANAGEMENT POLICY
Tuning the node for cpu-bound workloads
Supported policies
● none is the default policy (just integrates with CFS)
● static allows containers in Guaranteed pods with integer cpu requests
exclusive CPUs on the node enforced via cpuset cgroup controller
Benefits
● End-user API is simple (kubelet option)
● Increases CPU affinity and decreases context switches
● Kubelet manages local node topology (important when doing devices)
● More dynamic policies could be introduced in the future
DEMO 1 - CPU Pinning
Enable cpu pinning via dynamic node config: Demo
● Inspect node config map, see kubeletArguments
for --cpu-manager-policy=static
● Inspect cpuset.cpus of pod containers assigned
either shared or exclusive cores
FEATURE 2: HUGE PAGES
HUGE PAGES
Supports the allocation and consumption of pre-allocated huge pages
Scenario
● Large memory
working set sensitive
to TLB misses
(RDBMS, JVM, cache,
packet processors)
HUGE PAGES
Example Pod
Usage
● Pod request
● Node must pre-allocate
● EmptyDir
(medium=hugepages)
● shmget w/ SHM_HUGETLB
DEMO 2 - Pod that requires huge pages
Dynamically pre-allocate huge pages and schedule a pod: Demo
● Deploy DaemonSet to pre-allocate huge pages
● Inspect node allocatable
● Deploy a pod that consumes huge pages
FEATURES 3, 4:
EXTENDED RESOURCES
and
DEVICE PLUGINS
DEMO 3 - Extended Resources
Counting dongles: Demo
● Implementation detail
○ For device plugins
● Industry leading UX!
○ (PATCH via curl)
DEVICE PLUGINS
gRPC service to expose devices to kubelet
Initialization
● Is the device healthy?
Registration
● Register with kubelet
Serving mode
● Monitor device health
● Allocate device
DEMO 4, 5 - GPUs
Consume a GPU in OpenShift: Infrastructure Demo, Multi-GPU Jupyter/Caffe Demo
● Deploy
nvidia-device-plugin
DaemonSet
● Inspect node
allocatable
● Deploy a pod that
consumes a GPU
FEATURE 5: SYSCTL
SYSCTL
The three types
Unsafe
● Experimental Kubelet Flag
● kernel.sem*
● kernel.shm*
● kernel.msg*
● fs.mqueue.*
● net.*
Safe
● Enabled by default
● kernel.shm_rmid_forced
● net.ipv4.ip_local_port_range
● net.ipv4.tcp_syncookies
Node-level
● Can’t set from a pod
● Potentially affects other
pods
● Many interesting sysctls
● Use TuneD
Red Hat is working to graduate this feature to Beta during Kubernetes 1.11 release
● KEP: Promote sysctl annotations to fields
● Feedback welcome!
DEMO 6 - SYSCTL
Usage in a pod: Demo
WHAT’S NEXT
ROADMAP
Red Hat continues to invest in evolving support
Topic areas
● NUMA
● Co-located device scheduling
● External device monitoring
● Resource API V2
Red Hat Confidential
WORKLOAD COVERAGE: Metal, KVM, Containers
Code Path Coverage
● CPU – linpack, lmbench
● Memory – lmbench, McCalpin STREAM
● Disk IO – iozone, fio
● Networks – netperf – 10/40Gbit,
Infiniband/RoCE, Bypass
Application Performance
● Linpack MPI, HPC workloads
● Database: DB2, Oracle 11/12, Sybase 15.x ,
MySQL, MariaDB, Postgres, MongoDB
● OLTP – TPC-C, TPC-VMS
● DSS – TPC-H/xDS
● Big Data – TPCx-HS, Bigbench
● SPEC cpu, jbb, sfs, virt, cloud
● SAP – SLCS, SD
● STAC = FSI (STAC-N,A2)
● SAS mixed Analytic, SAS grid (gfs2)
QUESTIONS?
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHat
THANK YOU

Más contenido relacionado

La actualidad más candente

LinuxCon NA 2016: When Containers and Virtualization Do - and Don’t - Work T...
LinuxCon NA 2016:  When Containers and Virtualization Do - and Don’t - Work T...LinuxCon NA 2016:  When Containers and Virtualization Do - and Don’t - Work T...
LinuxCon NA 2016: When Containers and Virtualization Do - and Don’t - Work T...Jeremy Eder
 
OSCON 2017: To contain or not to contain
OSCON 2017:  To contain or not to containOSCON 2017:  To contain or not to contain
OSCON 2017: To contain or not to containJeremy Eder
 
Protecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and Ceph
Protecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and CephProtecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and Ceph
Protecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and CephSean Cohen
 
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...Jeremy Eder
 
2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific Dashboard2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific DashboardCeph Community
 
Ceph Tech Talk: Ceph at DigitalOcean
Ceph Tech Talk: Ceph at DigitalOceanCeph Tech Talk: Ceph at DigitalOcean
Ceph Tech Talk: Ceph at DigitalOceanCeph Community
 
Red Hat Summit 2017: Wicked Fast PaaS: Performance Tuning of OpenShift and D...
Red Hat Summit 2017:  Wicked Fast PaaS: Performance Tuning of OpenShift and D...Red Hat Summit 2017:  Wicked Fast PaaS: Performance Tuning of OpenShift and D...
Red Hat Summit 2017: Wicked Fast PaaS: Performance Tuning of OpenShift and D...Jeremy Eder
 
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureCeph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureDanielle Womboldt
 
Part 2 Maximizing the utilization of GPU resources on-premise and in the cloud
Part 2   Maximizing the utilization of GPU resources on-premise and in the cloudPart 2   Maximizing the utilization of GPU resources on-premise and in the cloud
Part 2 Maximizing the utilization of GPU resources on-premise and in the cloudUniva, an Altair Company
 
Deploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStackDeploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStackStephen Gordon
 
XPDS16: Live scalability for vGPU using gScale - Xiao Zheng, Intel
XPDS16: Live scalability for vGPU using gScale - Xiao Zheng, IntelXPDS16: Live scalability for vGPU using gScale - Xiao Zheng, Intel
XPDS16: Live scalability for vGPU using gScale - Xiao Zheng, IntelThe Linux Foundation
 
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and ContributionsCeph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and ContributionsColleen Corrice
 
Designing for High Performance Ceph at Scale
Designing for High Performance Ceph at ScaleDesigning for High Performance Ceph at Scale
Designing for High Performance Ceph at ScaleJames Saint-Rossy
 
02 ai inference acceleration with components all in open hardware: opencapi a...
02 ai inference acceleration with components all in open hardware: opencapi a...02 ai inference acceleration with components all in open hardware: opencapi a...
02 ai inference acceleration with components all in open hardware: opencapi a...Yutaka Kawai
 
ceph openstack dream team
ceph openstack dream teamceph openstack dream team
ceph openstack dream teamUdo Seidel
 
Let's turn your PostgreSQL into columnar store with cstore_fdw
Let's turn your PostgreSQL into columnar store with cstore_fdwLet's turn your PostgreSQL into columnar store with cstore_fdw
Let's turn your PostgreSQL into columnar store with cstore_fdwJan Holčapek
 
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander KukushkinPGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander KukushkinEqunix Business Solutions
 
What's New with Ceph - Ceph Day Silicon Valley
What's New with Ceph - Ceph Day Silicon ValleyWhat's New with Ceph - Ceph Day Silicon Valley
What's New with Ceph - Ceph Day Silicon ValleyCeph Community
 

La actualidad más candente (20)

LinuxCon NA 2016: When Containers and Virtualization Do - and Don’t - Work T...
LinuxCon NA 2016:  When Containers and Virtualization Do - and Don’t - Work T...LinuxCon NA 2016:  When Containers and Virtualization Do - and Don’t - Work T...
LinuxCon NA 2016: When Containers and Virtualization Do - and Don’t - Work T...
 
OSCON 2017: To contain or not to contain
OSCON 2017:  To contain or not to containOSCON 2017:  To contain or not to contain
OSCON 2017: To contain or not to contain
 
Protecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and Ceph
Protecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and CephProtecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and Ceph
Protecting the Galaxy - Multi-Region Disaster Recovery with OpenStack and Ceph
 
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...
 
2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific Dashboard2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific Dashboard
 
Ceph Tech Talk: Ceph at DigitalOcean
Ceph Tech Talk: Ceph at DigitalOceanCeph Tech Talk: Ceph at DigitalOcean
Ceph Tech Talk: Ceph at DigitalOcean
 
Red Hat Summit 2017: Wicked Fast PaaS: Performance Tuning of OpenShift and D...
Red Hat Summit 2017:  Wicked Fast PaaS: Performance Tuning of OpenShift and D...Red Hat Summit 2017:  Wicked Fast PaaS: Performance Tuning of OpenShift and D...
Red Hat Summit 2017: Wicked Fast PaaS: Performance Tuning of OpenShift and D...
 
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureCeph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
 
Part 2 Maximizing the utilization of GPU resources on-premise and in the cloud
Part 2   Maximizing the utilization of GPU resources on-premise and in the cloudPart 2   Maximizing the utilization of GPU resources on-premise and in the cloud
Part 2 Maximizing the utilization of GPU resources on-premise and in the cloud
 
Deploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStackDeploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStack
 
XPDS16: Live scalability for vGPU using gScale - Xiao Zheng, Intel
XPDS16: Live scalability for vGPU using gScale - Xiao Zheng, IntelXPDS16: Live scalability for vGPU using gScale - Xiao Zheng, Intel
XPDS16: Live scalability for vGPU using gScale - Xiao Zheng, Intel
 
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and ContributionsCeph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
 
Designing for High Performance Ceph at Scale
Designing for High Performance Ceph at ScaleDesigning for High Performance Ceph at Scale
Designing for High Performance Ceph at Scale
 
NantOmics
NantOmicsNantOmics
NantOmics
 
02 ai inference acceleration with components all in open hardware: opencapi a...
02 ai inference acceleration with components all in open hardware: opencapi a...02 ai inference acceleration with components all in open hardware: opencapi a...
02 ai inference acceleration with components all in open hardware: opencapi a...
 
ceph openstack dream team
ceph openstack dream teamceph openstack dream team
ceph openstack dream team
 
CephFS Update
CephFS UpdateCephFS Update
CephFS Update
 
Let's turn your PostgreSQL into columnar store with cstore_fdw
Let's turn your PostgreSQL into columnar store with cstore_fdwLet's turn your PostgreSQL into columnar store with cstore_fdw
Let's turn your PostgreSQL into columnar store with cstore_fdw
 
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander KukushkinPGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
 
What's New with Ceph - Ceph Day Silicon Valley
What's New with Ceph - Ceph Day Silicon ValleyWhat's New with Ceph - Ceph Day Silicon Valley
What's New with Ceph - Ceph Day Silicon Valley
 

Similar a Red Hat Summit 2018 5 New High Performance Features in OpenShift

Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra...
 Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra... Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra...
Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra...HostedbyConfluent
 
Red Hat Enterprise Linux: Open, hyperconverged infrastructure
Red Hat Enterprise Linux: Open, hyperconverged infrastructureRed Hat Enterprise Linux: Open, hyperconverged infrastructure
Red Hat Enterprise Linux: Open, hyperconverged infrastructureRed_Hat_Storage
 
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...Stephen Gordon
 
SCM Puppet: from an intro to the scaling
SCM Puppet: from an intro to the scalingSCM Puppet: from an intro to the scaling
SCM Puppet: from an intro to the scalingStanislav Osipov
 
Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMDevOps.com
 
Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMdata://disrupted®
 
Kubernetes and Cloud Native Update Q4 2018
Kubernetes and Cloud Native Update Q4 2018Kubernetes and Cloud Native Update Q4 2018
Kubernetes and Cloud Native Update Q4 2018CloudOps2005
 
Deploying PostgreSQL on Kubernetes
Deploying PostgreSQL on KubernetesDeploying PostgreSQL on Kubernetes
Deploying PostgreSQL on KubernetesJimmy Angelakos
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209mffiedler
 
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...javier ramirez
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Stephen Gordon
 
Known basic of NFV Features
Known basic of NFV FeaturesKnown basic of NFV Features
Known basic of NFV FeaturesRaul Leite
 
Rook - cloud-native storage
Rook - cloud-native storageRook - cloud-native storage
Rook - cloud-native storageKarol Chrapek
 
LCU14 310- Cisco ODP v2
LCU14 310- Cisco ODP v2LCU14 310- Cisco ODP v2
LCU14 310- Cisco ODP v2Linaro
 
What_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdfWhat_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdfchalermpany
 
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong KimCeph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong KimCeph Community
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community
 
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architectureCeph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architectureCeph Community
 

Similar a Red Hat Summit 2018 5 New High Performance Features in OpenShift (20)

Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra...
 Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra... Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra...
Disaster Recovery Options Running Apache Kafka in Kubernetes with Rema Subra...
 
Red Hat Enterprise Linux: Open, hyperconverged infrastructure
Red Hat Enterprise Linux: Open, hyperconverged infrastructureRed Hat Enterprise Linux: Open, hyperconverged infrastructure
Red Hat Enterprise Linux: Open, hyperconverged infrastructure
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
 
SCM Puppet: from an intro to the scaling
SCM Puppet: from an intro to the scalingSCM Puppet: from an intro to the scaling
SCM Puppet: from an intro to the scaling
 
Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVM
 
Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVM
 
Kubernetes and Cloud Native Update Q4 2018
Kubernetes and Cloud Native Update Q4 2018Kubernetes and Cloud Native Update Q4 2018
Kubernetes and Cloud Native Update Q4 2018
 
Deploying PostgreSQL on Kubernetes
Deploying PostgreSQL on KubernetesDeploying PostgreSQL on Kubernetes
Deploying PostgreSQL on Kubernetes
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209
 
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)
 
tburke_rhel6_summit.pdf
tburke_rhel6_summit.pdftburke_rhel6_summit.pdf
tburke_rhel6_summit.pdf
 
Known basic of NFV Features
Known basic of NFV FeaturesKnown basic of NFV Features
Known basic of NFV Features
 
Rook - cloud-native storage
Rook - cloud-native storageRook - cloud-native storage
Rook - cloud-native storage
 
LCU14 310- Cisco ODP v2
LCU14 310- Cisco ODP v2LCU14 310- Cisco ODP v2
LCU14 310- Cisco ODP v2
 
What_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdfWhat_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdf
 
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong KimCeph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph
 
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architectureCeph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
 

Último

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Último (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Red Hat Summit 2018 5 New High Performance Features in OpenShift

  • 1. 5 NEW HIGH-PERFORMANCE FEATURES IN RED HAT OPENSHIFT Patterns and technology to run critical, high performance line-of-business applications on Red Hat OpenShift Container Platform Derek Carr, Jeremy Eder Red Hat Product Engineering May 2018
  • 3. I WANT TO RUN ON OPENSHIFT
  • 4. BUT MY WORKLOAD IS SPECIAL
  • 5. IT IS LATENCY SENSITIVE
  • 6. IT HAS A HUGE CACHE
  • 8. IT NEEDS A SPECIAL DEVICE
  • 10. ACTUALLY, I HAVE A LOT OF WORKLOADS LIKE THIS!
  • 11.
  • 13. COMMUNITY sig-node, sig-scheduling, wg-resource-mgmt ● Expand the set of workloads runnable on the platform ● Maintain reliability ● Keep it simple
  • 14. WORKLOAD TYPES Going beyond generic web hosting workloads Big Data NFV FSI Animation ISVsHPC Machine Learning ● Identify requirement overlap across verticals ● Plumb enhancements generically ● Allow flexibility
  • 15. DRILL DOWN ON OVERLAP Feature FSI NFV ISV BD/ML ANIM HPC CPU pinning (cpuset) Yes Yes Yes Maybe Maybe Yes Device passthrough (GPU, NIC, etc.) Yes Yes Yes Yes Maybe Yes Sysctl support Yes Yes Yes Yes Yes Yes HugePages Yes Yes Yes Yes Maybe Maybe NUMA Yes Yes Yes Maybe Maybe Yes Separate control and data plane Yes Yes Yes Yes Yes Yes Kernel module loading Yes Yes Yes Maybe Yes Maybe
  • 16. PROGRESS REPORT What has been done in the last year? ● CPU manager (static pinning) ● HugePages ● Device Plugins (GPU, etc.) ● Sysctl support ● Extended Resources
  • 18. RESOURCES AND TUNING OPTIONS Natively understood ● CPU ● Memory ● Ephemeral storage ● Persistent storage ● HugePages ● Device Plugins ● Extended Resources Control knobs available ● CPU Manager policy (none, static) ● sysctls (safe / unsafe)
  • 19. RESOURCE REQUIREMENTS Describes the compute resources needed by a pod Limits ● Maximum burst (if available) Requests ● Minimum amount (guaranteed) Overcommit ● Ration of limit to request
  • 20. QUALITY OF SERVICE Keep the end-user API simple, let the platform optimize for SLA guarantees Burstable ● Requests < Limits Best Effort ● No resource limits Guaranteed ● Requests = Limits Beware ● Workload SLA ● Eviction Future ● QoS is an abstraction to allow kubelets to support different tuning options in the future for particular resource types while keeping API simple
  • 21. CLUSTER TOPOLOGY Control Plane Compute Nodes and Storage Tier Infrastructure master and etcd master and etcd master and etcd registry and router registry and router LB registry and router
  • 22. NODE BOOTSTRAPPING Compute Nodes... Config Maps node-compute node-cpu-bound node-master node-highmem Fetch config from server ● Default kubelet arguments ● Default labels ● Default taints ● Changes are kept in sync node-config.yaml (node-highmem) node-config.yaml (node-cpu-bound)
  • 23. FEATURE 1: CPU MANAGER
  • 24. CPU How is it exposed? ● Compressible ● Measured in cores ● Not normalized for clock speed ● Use node labels to differentiate ● Assigned per container
  • 25. CPU How is it enforced? Result ● Distributed across all cores ● Throttling Completely Fair Scheduler (CFS) ● Requests via cpu.shares ● Limits via cpu.cfs_quota_us Challenge ● CPU bound workloads (cache affinity and scheduling latency) are impacted
  • 26. CPU MANAGEMENT POLICY Tuning the node for cpu-bound workloads Supported policies ● none is the default policy (just integrates with CFS) ● static allows containers in Guaranteed pods with integer cpu requests exclusive CPUs on the node enforced via cpuset cgroup controller Benefits ● End-user API is simple (kubelet option) ● Increases CPU affinity and decreases context switches ● Kubelet manages local node topology (important when doing devices) ● More dynamic policies could be introduced in the future
  • 27. DEMO 1 - CPU Pinning Enable cpu pinning via dynamic node config: Demo ● Inspect node config map, see kubeletArguments for --cpu-manager-policy=static ● Inspect cpuset.cpus of pod containers assigned either shared or exclusive cores
  • 29. HUGE PAGES Supports the allocation and consumption of pre-allocated huge pages Scenario ● Large memory working set sensitive to TLB misses (RDBMS, JVM, cache, packet processors)
  • 30. HUGE PAGES Example Pod Usage ● Pod request ● Node must pre-allocate ● EmptyDir (medium=hugepages) ● shmget w/ SHM_HUGETLB
  • 31. DEMO 2 - Pod that requires huge pages Dynamically pre-allocate huge pages and schedule a pod: Demo ● Deploy DaemonSet to pre-allocate huge pages ● Inspect node allocatable ● Deploy a pod that consumes huge pages
  • 32. FEATURES 3, 4: EXTENDED RESOURCES and DEVICE PLUGINS
  • 33. DEMO 3 - Extended Resources Counting dongles: Demo ● Implementation detail ○ For device plugins ● Industry leading UX! ○ (PATCH via curl)
  • 34. DEVICE PLUGINS gRPC service to expose devices to kubelet Initialization ● Is the device healthy? Registration ● Register with kubelet Serving mode ● Monitor device health ● Allocate device
  • 35. DEMO 4, 5 - GPUs Consume a GPU in OpenShift: Infrastructure Demo, Multi-GPU Jupyter/Caffe Demo ● Deploy nvidia-device-plugin DaemonSet ● Inspect node allocatable ● Deploy a pod that consumes a GPU
  • 37. SYSCTL The three types Unsafe ● Experimental Kubelet Flag ● kernel.sem* ● kernel.shm* ● kernel.msg* ● fs.mqueue.* ● net.* Safe ● Enabled by default ● kernel.shm_rmid_forced ● net.ipv4.ip_local_port_range ● net.ipv4.tcp_syncookies Node-level ● Can’t set from a pod ● Potentially affects other pods ● Many interesting sysctls ● Use TuneD Red Hat is working to graduate this feature to Beta during Kubernetes 1.11 release ● KEP: Promote sysctl annotations to fields ● Feedback welcome!
  • 38. DEMO 6 - SYSCTL Usage in a pod: Demo
  • 40. ROADMAP Red Hat continues to invest in evolving support Topic areas ● NUMA ● Co-located device scheduling ● External device monitoring ● Resource API V2
  • 41. Red Hat Confidential WORKLOAD COVERAGE: Metal, KVM, Containers Code Path Coverage ● CPU – linpack, lmbench ● Memory – lmbench, McCalpin STREAM ● Disk IO – iozone, fio ● Networks – netperf – 10/40Gbit, Infiniband/RoCE, Bypass Application Performance ● Linpack MPI, HPC workloads ● Database: DB2, Oracle 11/12, Sybase 15.x , MySQL, MariaDB, Postgres, MongoDB ● OLTP – TPC-C, TPC-VMS ● DSS – TPC-H/xDS ● Big Data – TPCx-HS, Bigbench ● SPEC cpu, jbb, sfs, virt, cloud ● SAP – SLCS, SD ● STAC = FSI (STAC-N,A2) ● SAS mixed Analytic, SAS grid (gfs2)