3. Electric
Edge Node
Smart Factory
Logic Control
Motion Control
Functional Safety
HMI
HW
Services (Cloud)
Internet
Local Network
Actuator Instrument Pump
●●●
…
…
Usability & flexibility
• Reduced turnover time for new
deployment
• Flexible HW resource
management
Cost-effectiveness
• Streamlined & adaptable
deployment process
• Reduced CAPEX & OPEX
Edge Node
Logic Control
Motion Control
Functional Safety
HMI
HW
Compute Storage Orchestration Monitor
4. ACRN’s Heterogeneous Workload Consolidation
Service VM
ACRN 设备模型
ACRN Hypervisor
Device Model
VM
Management
RTVM
(Post-launched VM)
net
User
Kernel
User
Kernel
Native
drivers
ACRN kernel
driver
blk
console
Virtio
NIC
Non-RT
Task
RT task
Windows HMI VM (Post-launched VM)
OVMF
net
blk
Virtio
GPU
Audio
Passthru
Emulated
App#2
User
Kernel
GPU
Audio
…
USB
NIC
NIC
Disk
Cache
CPU3
Non-
real-
time
Real-
time
CPU0
Cache
Memory
CPU2
USB
…
OVMF
Workload
Applications
Safety VM
(Pre-launched VM)
User
Kernel
ISI
NIC
Native Drivers
RT task
LAPIC passthru
Functional
Safety
Cache
CPU1
ISI
NIC
Passthru
LAPIC passthru
Memory
Memory
Memory
Consolidate
• Safety workload
• Realtime workload
• HMI workload
5. Smart Factory + ACRN
Electric
Edge Node
Service VM
HMI/RT VM
Safety VM
RT VM
HW
Services (Cloud)
Actuator Instrument Pump
●●●
…
…
Orchestrator
ACRN hypervisor
Nova-compute/
Kubelet
Edge Node
Service VM
Safety VM
HW
ACRN hypervisor
Nova-compute/
Kubelet
Popular orchestrators
• StarlingX
• Openstack
• Kubernetes
HMI/RT VM RT VM
6. ACRN – Libvirt
Edge Node
Service VM
HMI/RT VM
Safety VM
RT VM
HW
Services (Cloud)
ACRN hypervisor
Nova-compute
StarlingX/Openstack performs VM
controls/deployment via libvirt API
Using a uniform API, ACRN can be
seamlessly integrated into the orchestration
software stack
Libvirt
Libvirt API
Xen driver
QEMU driver
ACRN driver
Others
Orchestrator
User
Kernel
ACRN设备模拟
ACRN device
model
Libvirt: the virtualization API
• The libvirt project is a toolkit to manage
virtualization platforms
• Licensed under open-source licenses
7. ACRN – Libvirt (cont’d)
ACRN is an IoT-focused lightweight hypervisor. Only a subset of the entire libvirt API is supported.
Function Description
Domain • Create, destroy, lookup, define, undefine, stats
Connect • Standard support (socket, ssh)
Storage • Standard support (raw images, virtio, ahci)
Physical Networks • Bridge/TAP device
Virtual Networks • Virtio
Nodedev • Detach, reattach
Misc • Console
Tutorial document: projectacrn.github.io/latest/tutorials/setup_openstack_libvirt
Acrn-libvirt code: github.com/projectacrn/acrn-libvirt
8. ACRN – Secure Containers
Edge Node
Service VM
Safety VM
HW
Services (Cloud)
ACRN hypervisor
Kubelet
Kata Containers perform like container but
provide the workload isolation and security
advantages of VMs. It combines the benefits
of containers and VMs. Kata Containers are
OCI-compliant, making them easy to
integrate with StarlingX & K8s.
Kata Containers now have support for ACRN
and can be run & managed in a Service VM.
Kata-runtime
Command handle
Agent client
ACRN
hypervisor
Qemu
hypervisor
Orchestrator
User
Kernel
Container / Sandbox interface
Kata-proxy
RT VM
RT VM
Kata-agent
vconsole driver
Acrn-dm
ACRN device
model
Virtio-console
OCI
Kata Containers
Kata Containers is an open source community working to
build a secure container runtime with lightweight virtual
machines that feel and perform like containers, but provide
stronger workload isolation using hardware virtualization
technology as a second layer of defense.
9. Conclusions
ACRN based workloads can easier extend to exist popular orchestrators
now whatever the solution is VM-based or container-based.
All these supports are aimed to let users seamlessly bridging ACRN to
the edge/cloud ecosystem!