SlideShare a Scribd company logo
1 of 65
Download to read offline
NoXS: Death to the XenStore
Filipe Manco NEC Europe Ltd.
Costin Lupu University Politehnica of Bucharest
Florian Schmidt NEC Europe Ltd.
Oh… but, why?
2
Why do we care?
3
Why do we care?
4
● Specialized applications on Unikernels
○ ClickOS: Middleboxes (ClickOS)
○ MiniCache: Edge content caches
● Micro-services with VMs
● Per-user virtualized services
● Edge devices
○ Constrained ARM boards
Why do we care?
5
● Specialized applications on Unikernels
○ ClickOS: Middleboxes (ClickOS)
○ MiniCache: Edge content caches
● Micro-services with VMs
● Per-user virtualized services
● Edge devices
○ Constrained ARM boards
● Performance
○ Low boot times
○ Good scalability
○ Low overhead
Why do we care?
6
● Specialized applications on Unikernels
○ ClickOS: Middleboxes (ClickOS)
○ MiniCache: Edge content caches
● Micro-services with VMs
● Per-user virtualized services
● Edge devices
○ Constrained ARM boards
● Performance
○ Low boot times
○ Good scalability
○ Low overhead
● Specific functionality
○ PV or PVH (no QEMU)
○ Usually only vif and block devices
○ No “legacy”
What’s wrong with the XenStore?
7
What’s wrong with the XenStore?
● Performance
○ Biggest contributor for domain creation time after few hundreds
8
Domain creation time breakdown for booting 1000 MiniOS guests (8MB RAM, 1 vCPU and 1 VIF) on Xen 4.8 9
What’s wrong with the XenStore?
● Performance
○ Biggest contributor for domain creation time after few hundreds
10
What’s wrong with the XenStore?
● Performance
○ Biggest contributor for domain creation time after few hundreds
● Protocol
○ Too generic: requires dozens of messages to create a domain
○ Limits directory size, i.e. number of VMs
○ Searches are expensive
11
What’s wrong with the XenStore?
● Performance
○ Biggest contributor for domain creation time after few hundreds
● Protocol
○ Too generic: requires dozens of messages to create a domain
○ Limits directory size, i.e. number of VMs
○ Searches are expensive
● Centralized service
○ Central point-of-failure
○ Harder to make Dom0 rebootable
12
What’s wrong with the XenStore?
● Performance
○ Biggest contributor for domain creation time after few hundreds
● Protocol
○ Too generic: requires dozens of messages to create a domain
○ Limits directory size, i.e. number of VMs
○ Searches are expensive
● Centralized service
○ Central point-of-failure
○ Harder to make Dom0 rebootable
● Certification
○ One more piece of software to certificate 13
What can we do?
14
Create a new
protocol…
15
Improve the
implementation…
16
LiXS
LightWeight XenStore
https://github.com/cnplab/lixs
17
18
Add new
functionality...
Why not kill it?
J.J. at the English language
Wikipedia / CC BY-SA 3.0
19
NoXS: No XenStore
20
NoXS Goals
21
XenStore functionality
22
XenStore functionality
● Keep basic domain information
23
XenStore functionality
● Keep basic domain information
24
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
25
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
26
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
27
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
28
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
29
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
30
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
● Virtual device setup a.k.a. XenBus
31
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
● Virtual device setup a.k.a. XenBus
32
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
● Virtual device setup a.k.a. XenBus
● Power control, i.e., power off and suspend
33
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
● Virtual device setup a.k.a. XenBus
● Power control, i.e., power off and suspend
34
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
● Virtual device setup a.k.a. XenBus
● Power control, i.e., power off and suspend
● Guest specific functionality
○ ClickOS uses XenStore to install configurations
○ Mirage’s Jitsu uses XenStore to advertise service endpoints
35
XenStore functionality
● Keep basic domain information
● CPU hot-plugging
● Dynamic setup of balloon target
● Keep toolstack related information
● Virtual device setup a.k.a. XenBus
● Power control, i.e., power off and suspend
● Guest specific functionality
○ ClickOS uses XenStore to install configurations
○ Mirage’s Jitsu uses XenStore to advertise service endpoints
36
NoXS Goals
37
● Features
○ XenBus
○ Guest control
NoXS Goals
38
● Features
○ XenBus
○ Guest control
● Simple and specialized mechanism
○ Efficient and fast
○ Few lines-of-code: easy to certify
NoXS Goals
39
● Features
○ XenBus
○ Guest control
● Simple and specialized mechanism
○ Efficient and fast
○ Few lines-of-code: easy to certify
● Not based on centralized daemon
NoXS Goals
40
● Features
○ XenBus
○ Guest control
● Simple and specialized mechanism
○ Efficient and fast
○ Few lines-of-code: easy to certify
● Not based on centralized daemon
● Run side-by-side with the xenstore
NoXS Goals
41
NoXS Design
42
43NoXS basic architecture
44NoXS basic architecture
45NoXS basic architecture
Device Info Page (DevIP)
typedef struct noxs_devip {
uint32_t version;
uint32_t dev_count;
noxs_devip_entry_t devs[NOXS_DEV_COUNT_MAX];
} noxs_devip_t;
46
typedef struct noxs_devip_entry {
noxs_dev_type_t type;
noxs_dev_id_t id;
domid_t be_id;
grant_ref_t grant;
evtchn_port_t evtchn;
} noxs_devip_entry_t;
47NoXS basic architecture
Device Control Page (DevCP) for Network
typedef struct noxs_devcp_vif {
noxs_devcp_t hdr;
int vifid;
struct vif_be_features be_feat;
int multi_queue_max_queues;
int multi_queue_num_queues;
grant_ref_t tx_ring_ref;
grant_ref_t rx_ring_ref;
evtchn_port_t event_channel_tx;
evtchn_port_t event_channel_rx;
unsigned int request_rx_copy;
struct vif_fe_features fe_feat;
grant_ref_t ctrl_ring_ref;
evtchn_port_t event_channel_ctrl;
uint8_t mac[ETH_LEN];
uint32_t ip;
char bridge[IF_LEN];
} noxs_devcp_vif_t;
48
typedef struct noxs_devcp_hdr {
int devid;
int be_state;
int fe_state;
noxs_watch_state_t fe_watch_state;
noxs_watch_state_t be_watch_state;
} noxs_devcp_hdr_t;
49Domain creation with NoXS
Guest initialization with NoXS 50
51NoXS basic architecture
52NoXS basic architecture
Guest Control
53
● Virtual device
○ Based on the split driver model
● Features
○ Power control
○ CPU hot-plugging
○ Ballooning
● Can be extended to add other features
gCtl: Guest Control Device
54
Suspend with NoXS’ gCtl 55
What’s done already
56
Implemented features
57
● Basic mechanism
● Linux support
○ Network
○ Block
○ gCtl
● Toolstack support
○ Chaos toolstack
● gCtl
○ Power control
Chaos
Virtualization Toolstack
https://github.com/cnplab/chaos
58
Xen
[N-0978] xen $ git diff RELEASE-4.8.1 --stat
xen/arch/x86/hypercall.c | 2 +
xen/common/Makefile | 2 +
xen/common/devctl.c | 100 ++++++++++++++++++++++++++++
xen/common/domain.c | 12 +++-
xen/common/noxs.c | 94 ++++++++++++++++++++++++++
xen/include/public/devctl.h | 63 ++++++++++++++++++
xen/include/public/io/noxs.h | 250 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
xen/include/public/xen.h | 1 +
xen/include/xen/hypercall.h | 4 ++
xen/include/xen/noxs.h | 18 +++++
xen/include/xen/sched.h | 3 +
11 files changed, 548 insertions(+), 1 deletion(-)
59
Linux
[N-0978] linux $ git diff v4.8.17 --shortstat
70 files changed, 9272 insertions(+), 1576 deletions(-)
[N-0978] linux $ git diff v4.8.17 --dirstat
12.6% drivers/block/xen-blkback/
9.3% drivers/block/
11.9% drivers/net/xen-netback/
7.1% drivers/net/
47.4% drivers/xen/xenbus/
9.4% include/xen/
60
What’s missing
61
● Basic mechanism
○ Crash-recovery
○ Device hot-plugging
● Linux support
○ Stub-domain support
○ Serial console drivers
● Toolstack support
○ xl/libxl
● gCtl
○ CPU hot-plugging
○ Ballooning
Missing features
62
Performance
63
64Domain boot times comparison: Standard vs NoXS with Chaos
65
Questions

More Related Content

What's hot

Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMDevOps.com
 
Optimizing FUSE for Cloud Storage
Optimizing FUSE for Cloud StorageOptimizing FUSE for Cloud Storage
Optimizing FUSE for Cloud StorageOpenVZ
 
Ovirt and gluster_hyperconvergence_devconf-2016
Ovirt and gluster_hyperconvergence_devconf-2016Ovirt and gluster_hyperconvergence_devconf-2016
Ovirt and gluster_hyperconvergence_devconf-2016Ramesh Nachimuthu
 
Nytro-XV_NWD_VM_Performance_Acceleration
Nytro-XV_NWD_VM_Performance_AccelerationNytro-XV_NWD_VM_Performance_Acceleration
Nytro-XV_NWD_VM_Performance_AccelerationKhai Le
 
JetStor ZFS DUAL NAS introduction
JetStor ZFS DUAL NAS introductionJetStor ZFS DUAL NAS introduction
JetStor ZFS DUAL NAS introductionGene Leyzarovich
 
LSA2 - 01 Virtualization with KVM
LSA2 - 01 Virtualization with KVMLSA2 - 01 Virtualization with KVM
LSA2 - 01 Virtualization with KVMMarian Marinov
 
The new AMD EPYC solutions from OVHcloud: what benefits?
The new AMD EPYC solutions from OVHcloud: what benefits?The new AMD EPYC solutions from OVHcloud: what benefits?
The new AMD EPYC solutions from OVHcloud: what benefits?OVHcloud
 
Storage best practices
Storage best practicesStorage best practices
Storage best practicesMaor Lipchuk
 
Kubernetes networking
Kubernetes networkingKubernetes networking
Kubernetes networkingSim Janghoon
 
Storage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStackStorage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStackShapeBlue
 
Disk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVMDisk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVMnknytk
 
Seamless migration from nova network to neutron in e bay production
Seamless migration from nova network to neutron in e bay productionSeamless migration from nova network to neutron in e bay production
Seamless migration from nova network to neutron in e bay productionChengyuan Li
 
Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)
Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)
Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)data://disrupted®
 
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
 
BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...
BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...
BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...BlueHat Security Conference
 
Optimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceOptimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceStorPool Storage
 
Sheepdog Status Report
Sheepdog Status ReportSheepdog Status Report
Sheepdog Status ReportLiu Yuan
 
Arbiter volumes in gluster
Arbiter volumes in glusterArbiter volumes in gluster
Arbiter volumes in glusteritisravi
 

What's hot (20)

Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVM
 
Optimizing FUSE for Cloud Storage
Optimizing FUSE for Cloud StorageOptimizing FUSE for Cloud Storage
Optimizing FUSE for Cloud Storage
 
Ovirt and gluster_hyperconvergence_devconf-2016
Ovirt and gluster_hyperconvergence_devconf-2016Ovirt and gluster_hyperconvergence_devconf-2016
Ovirt and gluster_hyperconvergence_devconf-2016
 
Nytro-XV_NWD_VM_Performance_Acceleration
Nytro-XV_NWD_VM_Performance_AccelerationNytro-XV_NWD_VM_Performance_Acceleration
Nytro-XV_NWD_VM_Performance_Acceleration
 
JetStor ZFS DUAL NAS introduction
JetStor ZFS DUAL NAS introductionJetStor ZFS DUAL NAS introduction
JetStor ZFS DUAL NAS introduction
 
LSA2 - 01 Virtualization with KVM
LSA2 - 01 Virtualization with KVMLSA2 - 01 Virtualization with KVM
LSA2 - 01 Virtualization with KVM
 
The new AMD EPYC solutions from OVHcloud: what benefits?
The new AMD EPYC solutions from OVHcloud: what benefits?The new AMD EPYC solutions from OVHcloud: what benefits?
The new AMD EPYC solutions from OVHcloud: what benefits?
 
Storage best practices
Storage best practicesStorage best practices
Storage best practices
 
Kubernetes networking
Kubernetes networkingKubernetes networking
Kubernetes networking
 
Storage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStackStorage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStack
 
Disk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVMDisk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVM
 
kdump: usage and_internals
kdump: usage and_internalskdump: usage and_internals
kdump: usage and_internals
 
Seamless migration from nova network to neutron in e bay production
Seamless migration from nova network to neutron in e bay productionSeamless migration from nova network to neutron in e bay production
Seamless migration from nova network to neutron in e bay production
 
Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)
Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)
Operation Unthinkable – Software Defined Storage @ Booking.com (Peter Buschman)
 
OpenStack on SmartOS
OpenStack on SmartOSOpenStack on SmartOS
OpenStack on SmartOS
 
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
 
BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...
BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...
BlueHat v18 || Straight outta v mware - modern exploitation of the svga devic...
 
Optimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceOptimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_Performance
 
Sheepdog Status Report
Sheepdog Status ReportSheepdog Status Report
Sheepdog Status Report
 
Arbiter volumes in gluster
Arbiter volumes in glusterArbiter volumes in gluster
Arbiter volumes in gluster
 

Similar to NoXS Death to XenStore

Improving Scalability of Xen: The 3,000 Domains Experiment
Improving Scalability of Xen: The 3,000 Domains ExperimentImproving Scalability of Xen: The 3,000 Domains Experiment
Improving Scalability of Xen: The 3,000 Domains ExperimentThe Linux Foundation
 
OpenEBS hangout #4
OpenEBS hangout #4OpenEBS hangout #4
OpenEBS hangout #4OpenEBS
 
Kubernetes @ Squarespace: Kubernetes in the Datacenter
Kubernetes @ Squarespace: Kubernetes in the DatacenterKubernetes @ Squarespace: Kubernetes in the Datacenter
Kubernetes @ Squarespace: Kubernetes in the DatacenterKevin Lynch
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Stephen Gordon
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kevin Lynch
 
[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...
[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...
[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...CODE BLUE
 
Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...
Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...
Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...Altoros
 
Ansiblefest 2018 Network automation journey at roblox
Ansiblefest 2018 Network automation journey at robloxAnsiblefest 2018 Network automation journey at roblox
Ansiblefest 2018 Network automation journey at robloxDamien Garros
 
Known basic of NFV Features
Known basic of NFV FeaturesKnown basic of NFV Features
Known basic of NFV FeaturesRaul Leite
 
DockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing AureaDockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing AureaŁukasz Piątkowski
 
Deploying MongoDB sharded clusters easily with Terraform and Ansible
Deploying MongoDB sharded clusters easily with Terraform and AnsibleDeploying MongoDB sharded clusters easily with Terraform and Ansible
Deploying MongoDB sharded clusters easily with Terraform and AnsibleAll Things Open
 
Current and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on LinuxCurrent and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on Linuxmountpoint.io
 
Linaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMLinaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMThe Linux Foundation
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...Puppet
 
Node in Real Time - The Beginning
Node in Real Time - The BeginningNode in Real Time - The Beginning
Node in Real Time - The BeginningAxilis
 
Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMdata://disrupted®
 
Qemu device prototyping
Qemu device prototypingQemu device prototyping
Qemu device prototypingYan Vugenfirer
 
HKG15-401: Ceph and Software Defined Storage on ARM servers
HKG15-401: Ceph and Software Defined Storage on ARM serversHKG15-401: Ceph and Software Defined Storage on ARM servers
HKG15-401: Ceph and Software Defined Storage on ARM serversLinaro
 
Best practices for optimizing Red Hat platforms for large scale datacenter de...
Best practices for optimizing Red Hat platforms for large scale datacenter de...Best practices for optimizing Red Hat platforms for large scale datacenter de...
Best practices for optimizing Red Hat platforms for large scale datacenter de...Jeremy Eder
 

Similar to NoXS Death to XenStore (20)

Improving Scalability of Xen: The 3,000 Domains Experiment
Improving Scalability of Xen: The 3,000 Domains ExperimentImproving Scalability of Xen: The 3,000 Domains Experiment
Improving Scalability of Xen: The 3,000 Domains Experiment
 
100Gbps OpenStack For Providing High-Performance NFV
100Gbps OpenStack For Providing High-Performance NFV100Gbps OpenStack For Providing High-Performance NFV
100Gbps OpenStack For Providing High-Performance NFV
 
OpenEBS hangout #4
OpenEBS hangout #4OpenEBS hangout #4
OpenEBS hangout #4
 
Kubernetes @ Squarespace: Kubernetes in the Datacenter
Kubernetes @ Squarespace: Kubernetes in the DatacenterKubernetes @ Squarespace: Kubernetes in the Datacenter
Kubernetes @ Squarespace: Kubernetes in the Datacenter
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
 
[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...
[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...
[CB19] Semzhu-Project – A self-made new world of embedded hypervisors and att...
 
Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...
Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...
Taking Cloud to Extremes: Scaled-down, Highly Available, and Mission-critical...
 
Ansiblefest 2018 Network automation journey at roblox
Ansiblefest 2018 Network automation journey at robloxAnsiblefest 2018 Network automation journey at roblox
Ansiblefest 2018 Network automation journey at roblox
 
Known basic of NFV Features
Known basic of NFV FeaturesKnown basic of NFV Features
Known basic of NFV Features
 
DockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing AureaDockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing Aurea
 
Deploying MongoDB sharded clusters easily with Terraform and Ansible
Deploying MongoDB sharded clusters easily with Terraform and AnsibleDeploying MongoDB sharded clusters easily with Terraform and Ansible
Deploying MongoDB sharded clusters easily with Terraform and Ansible
 
Current and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on LinuxCurrent and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on Linux
 
Linaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMLinaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARM
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
 
Node in Real Time - The Beginning
Node in Real Time - The BeginningNode in Real Time - The Beginning
Node in Real Time - The Beginning
 
Achieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVMAchieving the Ultimate Performance with KVM
Achieving the Ultimate Performance with KVM
 
Qemu device prototyping
Qemu device prototypingQemu device prototyping
Qemu device prototyping
 
HKG15-401: Ceph and Software Defined Storage on ARM servers
HKG15-401: Ceph and Software Defined Storage on ARM serversHKG15-401: Ceph and Software Defined Storage on ARM servers
HKG15-401: Ceph and Software Defined Storage on ARM servers
 
Best practices for optimizing Red Hat platforms for large scale datacenter de...
Best practices for optimizing Red Hat platforms for large scale datacenter de...Best practices for optimizing Red Hat platforms for large scale datacenter de...
Best practices for optimizing Red Hat platforms for large scale datacenter de...
 

More from The Linux Foundation

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleThe Linux Foundation
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...The Linux Foundation
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...The Linux Foundation
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...The Linux Foundation
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather ReportThe Linux Foundation
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...The Linux Foundation
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxThe Linux Foundation
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...The Linux Foundation
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderThe Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...The Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...The Linux Foundation
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixThe Linux Foundation
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdThe Linux Foundation
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...The Linux Foundation
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DThe Linux Foundation
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsThe Linux Foundation
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...The Linux Foundation
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...The Linux Foundation
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...The Linux Foundation
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEThe Linux Foundation
 

More from The Linux Foundation (20)

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather Report
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
 

Recently uploaded

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
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
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
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
 
🐬 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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
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
 

Recently uploaded (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 

NoXS Death to XenStore

  • 1. NoXS: Death to the XenStore Filipe Manco NEC Europe Ltd. Costin Lupu University Politehnica of Bucharest Florian Schmidt NEC Europe Ltd.
  • 3. Why do we care? 3
  • 4. Why do we care? 4 ● Specialized applications on Unikernels ○ ClickOS: Middleboxes (ClickOS) ○ MiniCache: Edge content caches ● Micro-services with VMs ● Per-user virtualized services ● Edge devices ○ Constrained ARM boards
  • 5. Why do we care? 5 ● Specialized applications on Unikernels ○ ClickOS: Middleboxes (ClickOS) ○ MiniCache: Edge content caches ● Micro-services with VMs ● Per-user virtualized services ● Edge devices ○ Constrained ARM boards ● Performance ○ Low boot times ○ Good scalability ○ Low overhead
  • 6. Why do we care? 6 ● Specialized applications on Unikernels ○ ClickOS: Middleboxes (ClickOS) ○ MiniCache: Edge content caches ● Micro-services with VMs ● Per-user virtualized services ● Edge devices ○ Constrained ARM boards ● Performance ○ Low boot times ○ Good scalability ○ Low overhead ● Specific functionality ○ PV or PVH (no QEMU) ○ Usually only vif and block devices ○ No “legacy”
  • 7. What’s wrong with the XenStore? 7
  • 8. What’s wrong with the XenStore? ● Performance ○ Biggest contributor for domain creation time after few hundreds 8
  • 9. Domain creation time breakdown for booting 1000 MiniOS guests (8MB RAM, 1 vCPU and 1 VIF) on Xen 4.8 9
  • 10. What’s wrong with the XenStore? ● Performance ○ Biggest contributor for domain creation time after few hundreds 10
  • 11. What’s wrong with the XenStore? ● Performance ○ Biggest contributor for domain creation time after few hundreds ● Protocol ○ Too generic: requires dozens of messages to create a domain ○ Limits directory size, i.e. number of VMs ○ Searches are expensive 11
  • 12. What’s wrong with the XenStore? ● Performance ○ Biggest contributor for domain creation time after few hundreds ● Protocol ○ Too generic: requires dozens of messages to create a domain ○ Limits directory size, i.e. number of VMs ○ Searches are expensive ● Centralized service ○ Central point-of-failure ○ Harder to make Dom0 rebootable 12
  • 13. What’s wrong with the XenStore? ● Performance ○ Biggest contributor for domain creation time after few hundreds ● Protocol ○ Too generic: requires dozens of messages to create a domain ○ Limits directory size, i.e. number of VMs ○ Searches are expensive ● Centralized service ○ Central point-of-failure ○ Harder to make Dom0 rebootable ● Certification ○ One more piece of software to certificate 13
  • 14. What can we do? 14
  • 19. Why not kill it? J.J. at the English language Wikipedia / CC BY-SA 3.0 19
  • 23. XenStore functionality ● Keep basic domain information 23
  • 24. XenStore functionality ● Keep basic domain information 24
  • 25. XenStore functionality ● Keep basic domain information ● CPU hot-plugging 25
  • 26. XenStore functionality ● Keep basic domain information ● CPU hot-plugging 26
  • 27. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target 27
  • 28. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target 28
  • 29. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information 29
  • 30. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information 30
  • 31. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information ● Virtual device setup a.k.a. XenBus 31
  • 32. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information ● Virtual device setup a.k.a. XenBus 32
  • 33. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information ● Virtual device setup a.k.a. XenBus ● Power control, i.e., power off and suspend 33
  • 34. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information ● Virtual device setup a.k.a. XenBus ● Power control, i.e., power off and suspend 34
  • 35. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information ● Virtual device setup a.k.a. XenBus ● Power control, i.e., power off and suspend ● Guest specific functionality ○ ClickOS uses XenStore to install configurations ○ Mirage’s Jitsu uses XenStore to advertise service endpoints 35
  • 36. XenStore functionality ● Keep basic domain information ● CPU hot-plugging ● Dynamic setup of balloon target ● Keep toolstack related information ● Virtual device setup a.k.a. XenBus ● Power control, i.e., power off and suspend ● Guest specific functionality ○ ClickOS uses XenStore to install configurations ○ Mirage’s Jitsu uses XenStore to advertise service endpoints 36
  • 38. ● Features ○ XenBus ○ Guest control NoXS Goals 38
  • 39. ● Features ○ XenBus ○ Guest control ● Simple and specialized mechanism ○ Efficient and fast ○ Few lines-of-code: easy to certify NoXS Goals 39
  • 40. ● Features ○ XenBus ○ Guest control ● Simple and specialized mechanism ○ Efficient and fast ○ Few lines-of-code: easy to certify ● Not based on centralized daemon NoXS Goals 40
  • 41. ● Features ○ XenBus ○ Guest control ● Simple and specialized mechanism ○ Efficient and fast ○ Few lines-of-code: easy to certify ● Not based on centralized daemon ● Run side-by-side with the xenstore NoXS Goals 41
  • 46. Device Info Page (DevIP) typedef struct noxs_devip { uint32_t version; uint32_t dev_count; noxs_devip_entry_t devs[NOXS_DEV_COUNT_MAX]; } noxs_devip_t; 46 typedef struct noxs_devip_entry { noxs_dev_type_t type; noxs_dev_id_t id; domid_t be_id; grant_ref_t grant; evtchn_port_t evtchn; } noxs_devip_entry_t;
  • 48. Device Control Page (DevCP) for Network typedef struct noxs_devcp_vif { noxs_devcp_t hdr; int vifid; struct vif_be_features be_feat; int multi_queue_max_queues; int multi_queue_num_queues; grant_ref_t tx_ring_ref; grant_ref_t rx_ring_ref; evtchn_port_t event_channel_tx; evtchn_port_t event_channel_rx; unsigned int request_rx_copy; struct vif_fe_features fe_feat; grant_ref_t ctrl_ring_ref; evtchn_port_t event_channel_ctrl; uint8_t mac[ETH_LEN]; uint32_t ip; char bridge[IF_LEN]; } noxs_devcp_vif_t; 48 typedef struct noxs_devcp_hdr { int devid; int be_state; int fe_state; noxs_watch_state_t fe_watch_state; noxs_watch_state_t be_watch_state; } noxs_devcp_hdr_t;
  • 54. ● Virtual device ○ Based on the split driver model ● Features ○ Power control ○ CPU hot-plugging ○ Ballooning ● Can be extended to add other features gCtl: Guest Control Device 54
  • 57. Implemented features 57 ● Basic mechanism ● Linux support ○ Network ○ Block ○ gCtl ● Toolstack support ○ Chaos toolstack ● gCtl ○ Power control
  • 59. Xen [N-0978] xen $ git diff RELEASE-4.8.1 --stat xen/arch/x86/hypercall.c | 2 + xen/common/Makefile | 2 + xen/common/devctl.c | 100 ++++++++++++++++++++++++++++ xen/common/domain.c | 12 +++- xen/common/noxs.c | 94 ++++++++++++++++++++++++++ xen/include/public/devctl.h | 63 ++++++++++++++++++ xen/include/public/io/noxs.h | 250 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ xen/include/public/xen.h | 1 + xen/include/xen/hypercall.h | 4 ++ xen/include/xen/noxs.h | 18 +++++ xen/include/xen/sched.h | 3 + 11 files changed, 548 insertions(+), 1 deletion(-) 59
  • 60. Linux [N-0978] linux $ git diff v4.8.17 --shortstat 70 files changed, 9272 insertions(+), 1576 deletions(-) [N-0978] linux $ git diff v4.8.17 --dirstat 12.6% drivers/block/xen-blkback/ 9.3% drivers/block/ 11.9% drivers/net/xen-netback/ 7.1% drivers/net/ 47.4% drivers/xen/xenbus/ 9.4% include/xen/ 60
  • 62. ● Basic mechanism ○ Crash-recovery ○ Device hot-plugging ● Linux support ○ Stub-domain support ○ Serial console drivers ● Toolstack support ○ xl/libxl ● gCtl ○ CPU hot-plugging ○ Ballooning Missing features 62
  • 64. 64Domain boot times comparison: Standard vs NoXS with Chaos