EVE-OS - a SPOS for the distributed edge
https://github.com/lf-edge/eve
Presented by Erik Nordmark, EVE TSC Chair (and ZEDEDA CTO)
Problem we solve
Security challenge
Security challenge - existing approaches
Project EVE Approach
SaaS
Hardware
Free self-service
SaaS
Open Source
EVE API
APP
APP
APP
APP
Adam
Controller
Sandbox
Project EVE Approach
SaaS
Web Console
Edge Virtualization Engine (EVE)
Any Gateway at IoT Scale
Hardware
Free self-service
SaaS
Open Source
EVE API
App Marketplace
Any Application
VM or Container
APP
APP
APP
APP
No Compromise to Security
(TPM and vTPM)
Historian, SCADA
or On-Premises System
Any Cloud
Adam
Controller
Eden driver
Sandbox
EVE Architecture
containerd
User Edge Compute Hardware
Open API
Partition A
Partition B
EVE managed, workload-centric storage
EVE services
EVE Controller
Disk overhead: 500M
RAM overhead: 500M�CPU overhead: 1 core
Hypervisor (Xen, KVM, ACRN)
On host/dom0
Dom 2
Dom 1
EVE Controller
Software Stack
Linuxkit
Linuxkit init
Onboot containers
containerd
EVE microservices as containers
Software Stack
Linuxkit
watchdog
newlogd
wlan
wwan
debug
nim
Linuxkit init
Onboot containers
containerd
baseosmgr
downloader
verifier
tpmmgr
vaultmgr
edgeview
guacd
Device, OS, runtime
orchest-�ration
volumemgr
Software Stack
Linuxkit
watchdog
newlogd
wlan
wwan
debug
nim
Linuxkit init
Onboot containers
containerd
baseosmgr
downloader
verifier
tpmmgr
vaultmgr
Runtime support
zedrouter
volumemgr
downloader
verifier
volumemgr
vtpm
kvm
meta-data
domainmgr
containerd
k3s
xen
longhorn
Workloads
VMs
containers
pods
edgeview
guacd
Device, OS, runtime
orchest-�ration
zedmanager
Disks and partitions
EVE API
Project EVE Architecture
Hardware Layer
EVE-EVC API - config, status, metrics, logs
EVEagent:
config, status, metrics
Downloader
EVEmanager:
instance orchestrator
Verifier
sha, sigs
HW info, metrics
Domain mgr
dom0
Crypto device identity
TEE/TPM
Measured boot and remote attestation
Device onboarding
Disk encryption
TLS 1.2/1.3 + object signing
Baseos manager
Grub gpt priority boot
Network interface manager
Device connectivity
log manager
Eth, RS 485, BTLE etc
Instance B
Instance C
Instance D
Driver domain(s)
Instance A
Edge Virtualization Engine
Eth, wlan, wwan
Hardware watchdog
Linux watchdog
Self update
Device connect-�ivity
Edge Container runtime
Deployed
Edge Containers
EVC sample: Adam
Commercial EVC:
Device APIs
Device Identity Onboarding Security Foundation
EVErouter:
DHCP
DNS
ACLs
VPN
Instance connectivity
local + NAT
I/O virtualizatiion
and
assignment
switch
cloud
Remote instance local
consoles
Volume manager
Edge Container connect-
ivity and storage
Project EVE Architecture
Hardware Layer
EVE-EVC API - config, status, metrics, logs
EVErouter:
DHCP
DNS
ACLs
VPN
EVEagent:
config, status, metrics
Downloader
EVEmanager:
instance orchestrator
Verifier
sha, sigs
HW info, metrics
Domain mgr
dom0
Crypto device identity
TEE/TPM
Measured boot and remote attestation
Device onboarding
Disk encryption
TLS 1.2/1.3 + object signing
Baseos manager
Grub gpt priority boot
Network interface manager
Device connectivity
Instance connectivity
log manager
Eth, RS 485, BTLE etc
local + NAT
I/O virtualizatiion
and
assignment
switch
cloud
Instance B
Instance C
Instance D
Driver domain(s)
Instance A
Edge Virtualization Engine
Eth, wlan, wwan
Hardware watchdog
Linux watchdog
Remote instance local
consoles
Volume manager
EVE Robustness Elements
EVE Robustness and Security Elements
Solving the hard - handle stolen disk or server
Potentially unique technology
Recent and future work