SlideShare a Scribd company logo
1 of 38
Download to read offline
Let’s decompose storage (again)
Why? How? Huh?
MSST May 17 2017
Evan Powell
blog.openebs.io
https://github.com/openebs
Join the
community
#slack
slack.openebs.io
@openebs
What’s new?
http://www.slideshare.net/ColleenCorrice/persistent-storage-for-containerized-applications
What’s new?
http://www.slideshare.net/ColleenCorrice/persistent-storage-for-containerized-applications
CERTIFIED
SYSADMIN(S)
Layering
Storage Medium
(Disk, Flash, RAM)
XFS, ZFS, LVM, EXT4
POSIX
(IO, Checksum, Snapshots)
NFS,iSCSI
Enterprise Storage
(SAN, NAS, ScaleOut,
DP, DR, Backup,
Compression, Dedup)
(3-TIER APPs)
Format Disks and Use.
Manage Few Disks
Supervised Provisioning
Manage Storage Upgrades!
Manage 100s of Volumes
Managed Upgrades
GEEK(LOCAL APPs)
CERTIFIED
SYSADMIN(S)
Layering
Storage Medium
(Disk, Flash, RAM)
XFS, ZFS, LVM, EXT4
POSIX
(IO, Checksum, Snapshots)
NFS,iSCSI
Enterprise Storage
(SAN, NAS, ScaleOut,
DP, DR, Backup,
Compression, Dedup)
OpenStack
Cinder, VASA
Cloud Storage - SDS
(Public, Private,
Hybrid)
(3-TIER APPs)
(CLOUD SERVICE)
OpenEBS
Containerized Storage
(Hyper-Converged,
Auto-Scaling,
Auto-Upgradable, Yaml
Driven)
(MICRO APPS)
Format Disks and Use.
Manage Few Disks
Supervised Provisioning
Manage Storage Upgrades!
Manage 100s of Volumes
Managed Upgrades
Auto-Provisioned
Delegated Administration
Manage Shared Infra
Manage 1000s of Volumes
Scheduled Upgrades
Auto-magically Provisioned
Auto-managed Storage(ML)
Data Mobility
Manage Millions of Volumes
Seamless Upgrades
GEEK
DEVOPS AT SPEED
OpenSource Technology Stack
(LOCAL APPs)
PAAS ADMINs
Happy days!
Manifests
express
intent
stateless
Painful persistence
Manifests
express
intent
K8S used rarely for apps requiring persistence
because they require brittle tight coupling.
Container 1 Container 2 Container 2
Hard wired connections via plug-in
stateless stateful
NAS SAN S3 NAS SAN S3
Manifests
express
intent
stateless stateful
No changes to DevOps workflow even for containers requiring
persistence. Users manifest their intent and the storage and
storage controllers adjust automatically as needed.
OpenEBS
Policy engine
Remote Storage
Local Storage
OpenEBS Storage
Hosts
OpenEBS VSMs
OpenEBS Storage Cluster
EBSAPIs
Containers and underlying storage,
local on host or dedicated storage
pods OR remote S3 or EBS storage
all grouped into a storage cloud that
just works.
Manifests
express
intent
Desired state of state
Architecture and
Design
- Powered by Linux, Go and
OpenSource
- Built and Delivered as
Containers / Micro-services
- Longhorn, Gotgt, Kubernetes,
Consul
Fault tolerant and secure by default
Low entry barrier, easy to setup
Storage optimized for Containerized
Applications
Horizontally scalable to millions of
Containers
Seamless integration into existing
private and public cloud
environments
Non-disruptive upgrades
Design Goals and Constraints
Developer and Operators Friendly
Completely OpenSource (Apache
license)
Microservices based
DevOps architecture
Remote Storage
Local Storage
OpenEBS Storage Hosts
Data
Storage
Driver
HTTPS
(manage)
Overview & Terminology
K8s master
K8s minions
OpenEBS
Maya
master
OpenEBS VSMs / Storage Pod
Pod
Network (Flannel*)
Network (Flannel)
Network (Flannel)
TCP
OpenEBS
Maya-K8s
Adaptors
Deployment - Hyper-Converged
K8s master
K8s minions
Storage Pods(3)Pod
TCMU
OpenEBS Maya Storage
Orchestrator
VSM - Storage in Containers
Local Disks NAS or SAN Cloud
Storage
NVMe Flash
Maya Storage Orchestrator
Backend Containers
to Persist Data
(Cached, Protected)
Frontend ContainersVSM / Storage
Pod
OpenEBS
Storage Hosts
Storage
Data (iSCSI/TCMU)
Container (Docker)
Inline Replication
Multiple Storage Backends
Jiva - Containerized Storage Image
OpenEBS Container runtime (Maya)
Compute
Network
Storage
fapi-server
qorum-net
fe-iscsi fe-tcmu
stats-db
IO Processor
meta-cache
IO Store
Replication/Multiplex
Backend Store
snap r/w
snap-s3 snap-local
NVF RWCTTA
Compression/Encryption
syncer
snap control
bapi-server
monitor
snap-qcow
Hot Data Deduplication
key-vault Front-end
Container
Backend
Container
Container Image
https://hub.docker.com/r/openebs/jiva/
key-vault
QoS
QoS
TTA
Pull/Push
Maya - Container Storage Orchestration
maya mSCH
mDB
mAgent
mAPI
mCluster
mTelmetry
mAIEngine
maya
mConnect
mCluster
mStorageInterface
Integrations
OpenEBS Maya
Master
OpenEBS
Storage Host
mTerrafor
m
mAWS-MPmDriver
mJRunner
mGUI
mAnalytics
Storage Internals
- Capacity Management
- QoS
- Access - iSCSI, TCMU
- Snapshot / Restore (S3)
- Backup / Migration
- Caching/Tiering
- Replication / Rebuild
OpenEBS - Core differentiations
● The block storage software is made into a micro service
● The ‘micro service’ has its own block protocol stack, tiering engine, QoS engine and ML prediction
capability
● The block storage knowledge is maintained on a per-volume basis. The data of each volume is divided into
cold-data and hot-data. Cold-data resides on NVMe-Flash or on 3DX-Memory. Hot-data resides in slower
disks / SAN/ Cloud-Storage/S3
● The metadata knowledge also is maintained at a volume level (not the entire storage). This saves us from
the issue of huge-metadata-sifting at scale. The traversal through meta-data depends on the “size of the
volume” and not on the “number of volumes”.
● Within the volume the meta data is not managed at “block-level” but at “chunk-level”. Typical block-size is
4KB and Typical chunk-size is 4 MB. This results in the huge reduction of metadata size of the
block-volume that needs to be maintained.
● Checksum - One of the important metadata is checksum. OpenEBS guarantees bit-rot protection through
the use of checksums. The checksums are managed at a chunk level only on Cold-Data. The checksums
are not managed on hot-data, the blocks go in and out of chunks on the hot-data without the need of
checksum calculation on the fly.
● Deduplication-while-tiering: Deduplication has capacity benefits but kills performance (either inline or
offline). But in OpenEBS, we do this while moving the data from hot-to-cold tiers. In effect, the benefits of
deduplication without the performance penalty.
Cchchchcunking
LVM RAID
XFSNvme - RAID
KernelUserland
lun1.1.metabook lun1.2.metabook
lun1 data chunks lun2 data chunks lun3 data chunks
Read - uncompress Write Dedup and compress
DatainnvmeFlash
Data blocks in NVRAM (NVDIMM)
Blocks to chunks (coalescing)
lun chunkbooks
Data block to chunkbook mapper
OpenEBS - Metadata at scale is not an issue
Global Metadata at a system level
Logical
volumes
Lun
Application
Metadata is managed at
block level
IO Blocks
IO Blocks
100TB
Raw
8 TB
Meta
100TB
Raw
XFS Meta data XFS Meta data2 TB
Meta
2 TB
Meta
Logical
Volumes in XFS files
Volume
meta
Lun
Application
IO Blocks
IO Chunks
Metadata of the volume is
managed at chunk level
100 GB
Meta
The volume IO processing has to
deal with the global metadata of
8TB
The volume IO processing has to
deal with the volume metadata of
100GB
Storage Data format
/xfs/outside/lun1 (sparse file)
Block layout of the lun inside the xfs file
Meta table of the lun
(Fixed size)
Two dimensional
array indexed chunk
number.
Chunk number (computed
with block byte range)
● Location (fast
memory/chunk)
● A
● B
● C
● D
● ?
Chunk table1 (Fixed
size)
Chunk table2 (Fixed
size)
Storage Interface
- HardDisks
- SAS/SATA Flash
- NVMe Flash
- PCIe Flash
- S3
- Cloud Block Storage
VSM Network
Interface - Host Networking
- VLANs / IPSpaces
Ease of
Configuration
- VSM Configuration Spec
- Infra Spec
- Integrate into K8s / EBS
Compatible
Integration to
Orchestration
Options to consume the storage by
containers:
- iSCSI Driver ( Pre-provisioned)
- Maya Volume Driver
- Integrated Orchestration
Network (Flannel*)
Network (Flannel)
Remote Storage
Local Storage
OpenEBS Storage Hosts
iSCSI
iSCSI
Driver
HTTPS
(manage)
Storage Connectivity - iSCSI Claims
K8s master
K8s minions
OpenEBS
Maya
master
OpenEBS VSMs / Storage Pod
Pod
Network (Flannel*)
Network (Flannel)
Remote Storage
Local Storage
OpenEBS Storage Hosts
iSCSI
Maya
Driver
HTTPS
(manage)
Storage Connectivity - Maya Driver
K8s master
K8s minions
OpenEBS
Maya
master
OpenEBS VSMs / Storage Pod
Pod
Network (Flannel)
Remote Storage
Local Storage
OpenEBS Storage Hosts
TCP
Maya
Driver
HTTPS
(manage)
Storage Connectivity - Shared Orchestration
K8s master
K8s minions
OpenEBS
Maya
master
OpenEBS VSMs / Storage Pod
Pod
TCMU
Resiliency and
Fault Tolerance
- Scaleout
- Blue-Green Upgrades - Infra
- Rolling Upgrades - VSMs
- High-Availability
Security
- Data Security
- Encryption
- Secure Delete
Telemetry
- Monitoring and
Troubleshooting
- Analytics
Performance
- IO Latency
- Provisioning
- Analytics
Scale - Capacity
- Number of Volumes
Deployment
Flexibility
OpenEBS Deployment Options for:
- Dedicated Storage (External)
- Hyper-converged
- Hybrid-Cloud (AWS)
OpenEBS Roadmap
0.1
0.4
1.0
0.3
0.2
● Soft launch / Basic version
● Containerized controller
● Longhorn integration basics
0.2 - Basic k8s integration
0.3 - Full k8s integration
(Hyper-Converged)
0.4 - Tiering and distributed storage
1.0 - First enterprise edition
(Full functionality for basic
production usage)
● K8s Provisioning via EBS-like driver
● S3 building blocks
● Complete longhorn integration
● First usable release for community
consumption
● Complete K8s integration
● Fully hyper-converged
● Support for local backing store
● Building blocks of Q0S
● Building blocks of Tiering
● Tiering and QoS demonstrated
● Building blocks of ML for storage
analytics
● DevOps operator use cases
demonstrated
● Integration into Enterprise LDAP w/ role
based access control
● All features supportable at scale
Nov, 2017
Sep, 2017
Jun, 2017
Mar, 2017
Jan, 2017
blog.openebs.io
https://github.com/openebs
Join the
community
#slack
slack.openebs.io
@openebs
Stateful containers?!
http://www.slideshare.net/Red_Hat_Storage/red-hat-storage-day-boston-persistent-storage-for-containers
Stateful containers?!
http://www.slideshare.net/Red_Hat_Storage/red-hat-storage-day-boston-persistent-storage-for-containers

More Related Content

What's hot

Linux MMAP & Ioremap introduction
Linux MMAP & Ioremap introductionLinux MMAP & Ioremap introduction
Linux MMAP & Ioremap introductionGene Chang
 
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화OpenStack Korea Community
 
Ceph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking ToolCeph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking ToolCeph Community
 
Ceph and RocksDB
Ceph and RocksDBCeph and RocksDB
Ceph and RocksDBSage Weil
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing GuideCeph Performance and Sizing Guide
Ceph Performance and Sizing GuideJose De La Rosa
 
Performance tuning in BlueStore & RocksDB - Li Xiaoyan
Performance tuning in BlueStore & RocksDB - Li XiaoyanPerformance tuning in BlueStore & RocksDB - Li Xiaoyan
Performance tuning in BlueStore & RocksDB - Li XiaoyanCeph Community
 
Page cache in Linux kernel
Page cache in Linux kernelPage cache in Linux kernel
Page cache in Linux kernelAdrian Huang
 
ceph optimization on ssd ilsoo byun-short
ceph optimization on ssd ilsoo byun-shortceph optimization on ssd ilsoo byun-short
ceph optimization on ssd ilsoo byun-shortNAVER D2
 
High Performance Object Storage in 30 Minutes with Supermicro and MinIO
High Performance Object Storage in 30 Minutes with Supermicro and MinIOHigh Performance Object Storage in 30 Minutes with Supermicro and MinIO
High Performance Object Storage in 30 Minutes with Supermicro and MinIORebekah Rodriguez
 
High Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando PatroniHigh Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando PatroniZalando Technology
 
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
 
SeaweedFS introduction
SeaweedFS introductionSeaweedFS introduction
SeaweedFS introductionchrislusf
 
不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向についてYasunori Goto
 
DPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet ProcessingDPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet ProcessingMichelle Holley
 
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...Odinot Stanislas
 
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
Gluster technical overview
Gluster technical overviewGluster technical overview
Gluster technical overviewGluster.org
 
RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017
RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017
RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017Amazon Web Services
 

What's hot (20)

Linux MMAP & Ioremap introduction
Linux MMAP & Ioremap introductionLinux MMAP & Ioremap introduction
Linux MMAP & Ioremap introduction
 
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
 
Ceph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking ToolCeph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking Tool
 
Ceph and RocksDB
Ceph and RocksDBCeph and RocksDB
Ceph and RocksDB
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing GuideCeph Performance and Sizing Guide
Ceph Performance and Sizing Guide
 
Performance tuning in BlueStore & RocksDB - Li Xiaoyan
Performance tuning in BlueStore & RocksDB - Li XiaoyanPerformance tuning in BlueStore & RocksDB - Li Xiaoyan
Performance tuning in BlueStore & RocksDB - Li Xiaoyan
 
Page cache in Linux kernel
Page cache in Linux kernelPage cache in Linux kernel
Page cache in Linux kernel
 
ceph optimization on ssd ilsoo byun-short
ceph optimization on ssd ilsoo byun-shortceph optimization on ssd ilsoo byun-short
ceph optimization on ssd ilsoo byun-short
 
High Performance Object Storage in 30 Minutes with Supermicro and MinIO
High Performance Object Storage in 30 Minutes with Supermicro and MinIOHigh Performance Object Storage in 30 Minutes with Supermicro and MinIO
High Performance Object Storage in 30 Minutes with Supermicro and MinIO
 
High Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando PatroniHigh Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando Patroni
 
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
 
SeaweedFS introduction
SeaweedFS introductionSeaweedFS introduction
SeaweedFS introduction
 
不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について
 
DPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet ProcessingDPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet Processing
 
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
 
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Gluster technical overview
Gluster technical overviewGluster technical overview
Gluster technical overview
 
Ceph issue 해결 사례
Ceph issue 해결 사례Ceph issue 해결 사례
Ceph issue 해결 사례
 
Apache Hadoopの未来 3系になって何が変わるのか?
Apache Hadoopの未来 3系になって何が変わるのか?Apache Hadoopの未来 3系になって何が変わるのか?
Apache Hadoopの未来 3系になって何が変わるのか?
 
RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017
RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017
RDS Postgres and Aurora Postgres | AWS Public Sector Summit 2017
 

Similar to Learning from ZFS to Scale Storage on and under Containers

Containerized Storage for Containers Meetup #3
Containerized Storage for Containers Meetup #3Containerized Storage for Containers Meetup #3
Containerized Storage for Containers Meetup #3OpenEBS
 
Containerized Storage for Containers - Meetup #3
Containerized Storage for Containers - Meetup #3Containerized Storage for Containers - Meetup #3
Containerized Storage for Containers - Meetup #3kiran mova
 
It's the End of Data Storage As We Know It (And I Feel Fine)
It's the End of Data Storage As We Know It (And I Feel Fine)It's the End of Data Storage As We Know It (And I Feel Fine)
It's the End of Data Storage As We Know It (And I Feel Fine)Stephen Foskett
 
The Pendulum Swings Back: Converged and Hyperconverged Environments
The Pendulum Swings Back: Converged and Hyperconverged EnvironmentsThe Pendulum Swings Back: Converged and Hyperconverged Environments
The Pendulum Swings Back: Converged and Hyperconverged EnvironmentsTony Pearson
 
S016827 pendulum-swings-nola-v1710d
S016827 pendulum-swings-nola-v1710dS016827 pendulum-swings-nola-v1710d
S016827 pendulum-swings-nola-v1710dTony Pearson
 
OSS Presentation by Kevin Halgren
OSS Presentation by Kevin HalgrenOSS Presentation by Kevin Halgren
OSS Presentation by Kevin HalgrenOpenStorageSummit
 
Storage Technology Overview
Storage Technology OverviewStorage Technology Overview
Storage Technology Overviewnomathjobs
 
Varrow datacenter storage today and tomorrow
Varrow   datacenter storage today and tomorrowVarrow   datacenter storage today and tomorrow
Varrow datacenter storage today and tomorrowpittmantony
 
Ceph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To EnterpriseCeph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To EnterpriseAlex Lau
 
Storage Virtualization Introduction
Storage Virtualization IntroductionStorage Virtualization Introduction
Storage Virtualization IntroductionStephen Foskett
 
Oracle rac 10g best practices
Oracle rac 10g best practicesOracle rac 10g best practices
Oracle rac 10g best practicesHaseeb Alam
 
openSUSE storage workshop 2016
openSUSE storage workshop 2016openSUSE storage workshop 2016
openSUSE storage workshop 2016Alex Lau
 
Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Community
 
Experience In Building Scalable Web Sites Through Infrastructure's View
Experience In Building Scalable Web Sites Through Infrastructure's ViewExperience In Building Scalable Web Sites Through Infrastructure's View
Experience In Building Scalable Web Sites Through Infrastructure's ViewPhuwadon D
 
Rearchitecting Storage for Server Virtualization
Rearchitecting Storage for Server VirtualizationRearchitecting Storage for Server Virtualization
Rearchitecting Storage for Server VirtualizationStephen Foskett
 
Enterprise Storage NAS - Dual Controller
Enterprise Storage NAS - Dual ControllerEnterprise Storage NAS - Dual Controller
Enterprise Storage NAS - Dual ControllerFernando Barrientos
 

Similar to Learning from ZFS to Scale Storage on and under Containers (20)

Containerized Storage for Containers Meetup #3
Containerized Storage for Containers Meetup #3Containerized Storage for Containers Meetup #3
Containerized Storage for Containers Meetup #3
 
Containerized Storage for Containers - Meetup #3
Containerized Storage for Containers - Meetup #3Containerized Storage for Containers - Meetup #3
Containerized Storage for Containers - Meetup #3
 
TDS-16489U-R2 0215 EN
TDS-16489U-R2 0215 ENTDS-16489U-R2 0215 EN
TDS-16489U-R2 0215 EN
 
Open ebs 101
Open ebs 101Open ebs 101
Open ebs 101
 
It's the End of Data Storage As We Know It (And I Feel Fine)
It's the End of Data Storage As We Know It (And I Feel Fine)It's the End of Data Storage As We Know It (And I Feel Fine)
It's the End of Data Storage As We Know It (And I Feel Fine)
 
The Pendulum Swings Back: Converged and Hyperconverged Environments
The Pendulum Swings Back: Converged and Hyperconverged EnvironmentsThe Pendulum Swings Back: Converged and Hyperconverged Environments
The Pendulum Swings Back: Converged and Hyperconverged Environments
 
S016827 pendulum-swings-nola-v1710d
S016827 pendulum-swings-nola-v1710dS016827 pendulum-swings-nola-v1710d
S016827 pendulum-swings-nola-v1710d
 
OSS Presentation by Kevin Halgren
OSS Presentation by Kevin HalgrenOSS Presentation by Kevin Halgren
OSS Presentation by Kevin Halgren
 
3487570
34875703487570
3487570
 
Storage Technology Overview
Storage Technology OverviewStorage Technology Overview
Storage Technology Overview
 
Varrow datacenter storage today and tomorrow
Varrow   datacenter storage today and tomorrowVarrow   datacenter storage today and tomorrow
Varrow datacenter storage today and tomorrow
 
Ceph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To EnterpriseCeph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To Enterprise
 
Storage Virtualization Introduction
Storage Virtualization IntroductionStorage Virtualization Introduction
Storage Virtualization Introduction
 
Oracle rac 10g best practices
Oracle rac 10g best practicesOracle rac 10g best practices
Oracle rac 10g best practices
 
Emc
EmcEmc
Emc
 
openSUSE storage workshop 2016
openSUSE storage workshop 2016openSUSE storage workshop 2016
openSUSE storage workshop 2016
 
Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise
 
Experience In Building Scalable Web Sites Through Infrastructure's View
Experience In Building Scalable Web Sites Through Infrastructure's ViewExperience In Building Scalable Web Sites Through Infrastructure's View
Experience In Building Scalable Web Sites Through Infrastructure's View
 
Rearchitecting Storage for Server Virtualization
Rearchitecting Storage for Server VirtualizationRearchitecting Storage for Server Virtualization
Rearchitecting Storage for Server Virtualization
 
Enterprise Storage NAS - Dual Controller
Enterprise Storage NAS - Dual ControllerEnterprise Storage NAS - Dual Controller
Enterprise Storage NAS - Dual Controller
 

More from inside-BigData.com

Preparing to program Aurora at Exascale - Early experiences and future direct...
Preparing to program Aurora at Exascale - Early experiences and future direct...Preparing to program Aurora at Exascale - Early experiences and future direct...
Preparing to program Aurora at Exascale - Early experiences and future direct...inside-BigData.com
 
Transforming Private 5G Networks
Transforming Private 5G NetworksTransforming Private 5G Networks
Transforming Private 5G Networksinside-BigData.com
 
The Incorporation of Machine Learning into Scientific Simulations at Lawrence...
The Incorporation of Machine Learning into Scientific Simulations at Lawrence...The Incorporation of Machine Learning into Scientific Simulations at Lawrence...
The Incorporation of Machine Learning into Scientific Simulations at Lawrence...inside-BigData.com
 
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...inside-BigData.com
 
Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...
Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...
Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...inside-BigData.com
 
HPC Impact: EDA Telemetry Neural Networks
HPC Impact: EDA Telemetry Neural NetworksHPC Impact: EDA Telemetry Neural Networks
HPC Impact: EDA Telemetry Neural Networksinside-BigData.com
 
Biohybrid Robotic Jellyfish for Future Applications in Ocean Monitoring
Biohybrid Robotic Jellyfish for Future Applications in Ocean MonitoringBiohybrid Robotic Jellyfish for Future Applications in Ocean Monitoring
Biohybrid Robotic Jellyfish for Future Applications in Ocean Monitoringinside-BigData.com
 
Machine Learning for Weather Forecasts
Machine Learning for Weather ForecastsMachine Learning for Weather Forecasts
Machine Learning for Weather Forecastsinside-BigData.com
 
HPC AI Advisory Council Update
HPC AI Advisory Council UpdateHPC AI Advisory Council Update
HPC AI Advisory Council Updateinside-BigData.com
 
Fugaku Supercomputer joins fight against COVID-19
Fugaku Supercomputer joins fight against COVID-19Fugaku Supercomputer joins fight against COVID-19
Fugaku Supercomputer joins fight against COVID-19inside-BigData.com
 
Energy Efficient Computing using Dynamic Tuning
Energy Efficient Computing using Dynamic TuningEnergy Efficient Computing using Dynamic Tuning
Energy Efficient Computing using Dynamic Tuninginside-BigData.com
 
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPODHPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPODinside-BigData.com
 
Versal Premium ACAP for Network and Cloud Acceleration
Versal Premium ACAP for Network and Cloud AccelerationVersal Premium ACAP for Network and Cloud Acceleration
Versal Premium ACAP for Network and Cloud Accelerationinside-BigData.com
 
Zettar: Moving Massive Amounts of Data across Any Distance Efficiently
Zettar: Moving Massive Amounts of Data across Any Distance EfficientlyZettar: Moving Massive Amounts of Data across Any Distance Efficiently
Zettar: Moving Massive Amounts of Data across Any Distance Efficientlyinside-BigData.com
 
Scaling TCO in a Post Moore's Era
Scaling TCO in a Post Moore's EraScaling TCO in a Post Moore's Era
Scaling TCO in a Post Moore's Erainside-BigData.com
 
CUDA-Python and RAPIDS for blazing fast scientific computing
CUDA-Python and RAPIDS for blazing fast scientific computingCUDA-Python and RAPIDS for blazing fast scientific computing
CUDA-Python and RAPIDS for blazing fast scientific computinginside-BigData.com
 
Introducing HPC with a Raspberry Pi Cluster
Introducing HPC with a Raspberry Pi ClusterIntroducing HPC with a Raspberry Pi Cluster
Introducing HPC with a Raspberry Pi Clusterinside-BigData.com
 

More from inside-BigData.com (20)

Major Market Shifts in IT
Major Market Shifts in ITMajor Market Shifts in IT
Major Market Shifts in IT
 
Preparing to program Aurora at Exascale - Early experiences and future direct...
Preparing to program Aurora at Exascale - Early experiences and future direct...Preparing to program Aurora at Exascale - Early experiences and future direct...
Preparing to program Aurora at Exascale - Early experiences and future direct...
 
Transforming Private 5G Networks
Transforming Private 5G NetworksTransforming Private 5G Networks
Transforming Private 5G Networks
 
The Incorporation of Machine Learning into Scientific Simulations at Lawrence...
The Incorporation of Machine Learning into Scientific Simulations at Lawrence...The Incorporation of Machine Learning into Scientific Simulations at Lawrence...
The Incorporation of Machine Learning into Scientific Simulations at Lawrence...
 
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
 
Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...
Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...
Evolving Cyberinfrastructure, Democratizing Data, and Scaling AI to Catalyze ...
 
HPC Impact: EDA Telemetry Neural Networks
HPC Impact: EDA Telemetry Neural NetworksHPC Impact: EDA Telemetry Neural Networks
HPC Impact: EDA Telemetry Neural Networks
 
Biohybrid Robotic Jellyfish for Future Applications in Ocean Monitoring
Biohybrid Robotic Jellyfish for Future Applications in Ocean MonitoringBiohybrid Robotic Jellyfish for Future Applications in Ocean Monitoring
Biohybrid Robotic Jellyfish for Future Applications in Ocean Monitoring
 
Machine Learning for Weather Forecasts
Machine Learning for Weather ForecastsMachine Learning for Weather Forecasts
Machine Learning for Weather Forecasts
 
HPC AI Advisory Council Update
HPC AI Advisory Council UpdateHPC AI Advisory Council Update
HPC AI Advisory Council Update
 
Fugaku Supercomputer joins fight against COVID-19
Fugaku Supercomputer joins fight against COVID-19Fugaku Supercomputer joins fight against COVID-19
Fugaku Supercomputer joins fight against COVID-19
 
Energy Efficient Computing using Dynamic Tuning
Energy Efficient Computing using Dynamic TuningEnergy Efficient Computing using Dynamic Tuning
Energy Efficient Computing using Dynamic Tuning
 
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPODHPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
 
State of ARM-based HPC
State of ARM-based HPCState of ARM-based HPC
State of ARM-based HPC
 
Versal Premium ACAP for Network and Cloud Acceleration
Versal Premium ACAP for Network and Cloud AccelerationVersal Premium ACAP for Network and Cloud Acceleration
Versal Premium ACAP for Network and Cloud Acceleration
 
Zettar: Moving Massive Amounts of Data across Any Distance Efficiently
Zettar: Moving Massive Amounts of Data across Any Distance EfficientlyZettar: Moving Massive Amounts of Data across Any Distance Efficiently
Zettar: Moving Massive Amounts of Data across Any Distance Efficiently
 
Scaling TCO in a Post Moore's Era
Scaling TCO in a Post Moore's EraScaling TCO in a Post Moore's Era
Scaling TCO in a Post Moore's Era
 
CUDA-Python and RAPIDS for blazing fast scientific computing
CUDA-Python and RAPIDS for blazing fast scientific computingCUDA-Python and RAPIDS for blazing fast scientific computing
CUDA-Python and RAPIDS for blazing fast scientific computing
 
Introducing HPC with a Raspberry Pi Cluster
Introducing HPC with a Raspberry Pi ClusterIntroducing HPC with a Raspberry Pi Cluster
Introducing HPC with a Raspberry Pi Cluster
 
Overview of HPC Interconnects
Overview of HPC InterconnectsOverview of HPC Interconnects
Overview of HPC Interconnects
 

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
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
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
 
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
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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
 
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
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
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
 
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
 

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
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
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
 
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
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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
 
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
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
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
 
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
 

Learning from ZFS to Scale Storage on and under Containers

  • 1. Let’s decompose storage (again) Why? How? Huh? MSST May 17 2017 Evan Powell
  • 5. CERTIFIED SYSADMIN(S) Layering Storage Medium (Disk, Flash, RAM) XFS, ZFS, LVM, EXT4 POSIX (IO, Checksum, Snapshots) NFS,iSCSI Enterprise Storage (SAN, NAS, ScaleOut, DP, DR, Backup, Compression, Dedup) (3-TIER APPs) Format Disks and Use. Manage Few Disks Supervised Provisioning Manage Storage Upgrades! Manage 100s of Volumes Managed Upgrades GEEK(LOCAL APPs)
  • 6. CERTIFIED SYSADMIN(S) Layering Storage Medium (Disk, Flash, RAM) XFS, ZFS, LVM, EXT4 POSIX (IO, Checksum, Snapshots) NFS,iSCSI Enterprise Storage (SAN, NAS, ScaleOut, DP, DR, Backup, Compression, Dedup) OpenStack Cinder, VASA Cloud Storage - SDS (Public, Private, Hybrid) (3-TIER APPs) (CLOUD SERVICE) OpenEBS Containerized Storage (Hyper-Converged, Auto-Scaling, Auto-Upgradable, Yaml Driven) (MICRO APPS) Format Disks and Use. Manage Few Disks Supervised Provisioning Manage Storage Upgrades! Manage 100s of Volumes Managed Upgrades Auto-Provisioned Delegated Administration Manage Shared Infra Manage 1000s of Volumes Scheduled Upgrades Auto-magically Provisioned Auto-managed Storage(ML) Data Mobility Manage Millions of Volumes Seamless Upgrades GEEK DEVOPS AT SPEED OpenSource Technology Stack (LOCAL APPs) PAAS ADMINs
  • 8. Painful persistence Manifests express intent K8S used rarely for apps requiring persistence because they require brittle tight coupling. Container 1 Container 2 Container 2 Hard wired connections via plug-in stateless stateful NAS SAN S3 NAS SAN S3
  • 9. Manifests express intent stateless stateful No changes to DevOps workflow even for containers requiring persistence. Users manifest their intent and the storage and storage controllers adjust automatically as needed. OpenEBS Policy engine Remote Storage Local Storage OpenEBS Storage Hosts OpenEBS VSMs OpenEBS Storage Cluster EBSAPIs Containers and underlying storage, local on host or dedicated storage pods OR remote S3 or EBS storage all grouped into a storage cloud that just works. Manifests express intent Desired state of state
  • 10. Architecture and Design - Powered by Linux, Go and OpenSource - Built and Delivered as Containers / Micro-services - Longhorn, Gotgt, Kubernetes, Consul
  • 11. Fault tolerant and secure by default Low entry barrier, easy to setup Storage optimized for Containerized Applications Horizontally scalable to millions of Containers Seamless integration into existing private and public cloud environments Non-disruptive upgrades Design Goals and Constraints Developer and Operators Friendly Completely OpenSource (Apache license) Microservices based DevOps architecture
  • 12. Remote Storage Local Storage OpenEBS Storage Hosts Data Storage Driver HTTPS (manage) Overview & Terminology K8s master K8s minions OpenEBS Maya master OpenEBS VSMs / Storage Pod Pod Network (Flannel*) Network (Flannel)
  • 13. Network (Flannel) TCP OpenEBS Maya-K8s Adaptors Deployment - Hyper-Converged K8s master K8s minions Storage Pods(3)Pod TCMU OpenEBS Maya Storage Orchestrator
  • 14. VSM - Storage in Containers Local Disks NAS or SAN Cloud Storage NVMe Flash Maya Storage Orchestrator Backend Containers to Persist Data (Cached, Protected) Frontend ContainersVSM / Storage Pod OpenEBS Storage Hosts Storage Data (iSCSI/TCMU) Container (Docker) Inline Replication Multiple Storage Backends
  • 15. Jiva - Containerized Storage Image OpenEBS Container runtime (Maya) Compute Network Storage fapi-server qorum-net fe-iscsi fe-tcmu stats-db IO Processor meta-cache IO Store Replication/Multiplex Backend Store snap r/w snap-s3 snap-local NVF RWCTTA Compression/Encryption syncer snap control bapi-server monitor snap-qcow Hot Data Deduplication key-vault Front-end Container Backend Container Container Image https://hub.docker.com/r/openebs/jiva/ key-vault QoS QoS TTA Pull/Push
  • 16. Maya - Container Storage Orchestration maya mSCH mDB mAgent mAPI mCluster mTelmetry mAIEngine maya mConnect mCluster mStorageInterface Integrations OpenEBS Maya Master OpenEBS Storage Host mTerrafor m mAWS-MPmDriver mJRunner mGUI mAnalytics
  • 17. Storage Internals - Capacity Management - QoS - Access - iSCSI, TCMU - Snapshot / Restore (S3) - Backup / Migration - Caching/Tiering - Replication / Rebuild
  • 18. OpenEBS - Core differentiations ● The block storage software is made into a micro service ● The ‘micro service’ has its own block protocol stack, tiering engine, QoS engine and ML prediction capability ● The block storage knowledge is maintained on a per-volume basis. The data of each volume is divided into cold-data and hot-data. Cold-data resides on NVMe-Flash or on 3DX-Memory. Hot-data resides in slower disks / SAN/ Cloud-Storage/S3 ● The metadata knowledge also is maintained at a volume level (not the entire storage). This saves us from the issue of huge-metadata-sifting at scale. The traversal through meta-data depends on the “size of the volume” and not on the “number of volumes”. ● Within the volume the meta data is not managed at “block-level” but at “chunk-level”. Typical block-size is 4KB and Typical chunk-size is 4 MB. This results in the huge reduction of metadata size of the block-volume that needs to be maintained. ● Checksum - One of the important metadata is checksum. OpenEBS guarantees bit-rot protection through the use of checksums. The checksums are managed at a chunk level only on Cold-Data. The checksums are not managed on hot-data, the blocks go in and out of chunks on the hot-data without the need of checksum calculation on the fly. ● Deduplication-while-tiering: Deduplication has capacity benefits but kills performance (either inline or offline). But in OpenEBS, we do this while moving the data from hot-to-cold tiers. In effect, the benefits of deduplication without the performance penalty.
  • 19. Cchchchcunking LVM RAID XFSNvme - RAID KernelUserland lun1.1.metabook lun1.2.metabook lun1 data chunks lun2 data chunks lun3 data chunks Read - uncompress Write Dedup and compress DatainnvmeFlash Data blocks in NVRAM (NVDIMM) Blocks to chunks (coalescing) lun chunkbooks Data block to chunkbook mapper
  • 20. OpenEBS - Metadata at scale is not an issue Global Metadata at a system level Logical volumes Lun Application Metadata is managed at block level IO Blocks IO Blocks 100TB Raw 8 TB Meta 100TB Raw XFS Meta data XFS Meta data2 TB Meta 2 TB Meta Logical Volumes in XFS files Volume meta Lun Application IO Blocks IO Chunks Metadata of the volume is managed at chunk level 100 GB Meta The volume IO processing has to deal with the global metadata of 8TB The volume IO processing has to deal with the volume metadata of 100GB
  • 21. Storage Data format /xfs/outside/lun1 (sparse file) Block layout of the lun inside the xfs file Meta table of the lun (Fixed size) Two dimensional array indexed chunk number. Chunk number (computed with block byte range) ● Location (fast memory/chunk) ● A ● B ● C ● D ● ? Chunk table1 (Fixed size) Chunk table2 (Fixed size)
  • 22. Storage Interface - HardDisks - SAS/SATA Flash - NVMe Flash - PCIe Flash - S3 - Cloud Block Storage
  • 23. VSM Network Interface - Host Networking - VLANs / IPSpaces
  • 24. Ease of Configuration - VSM Configuration Spec - Infra Spec - Integrate into K8s / EBS Compatible
  • 25. Integration to Orchestration Options to consume the storage by containers: - iSCSI Driver ( Pre-provisioned) - Maya Volume Driver - Integrated Orchestration
  • 26. Network (Flannel*) Network (Flannel) Remote Storage Local Storage OpenEBS Storage Hosts iSCSI iSCSI Driver HTTPS (manage) Storage Connectivity - iSCSI Claims K8s master K8s minions OpenEBS Maya master OpenEBS VSMs / Storage Pod Pod
  • 27. Network (Flannel*) Network (Flannel) Remote Storage Local Storage OpenEBS Storage Hosts iSCSI Maya Driver HTTPS (manage) Storage Connectivity - Maya Driver K8s master K8s minions OpenEBS Maya master OpenEBS VSMs / Storage Pod Pod
  • 28. Network (Flannel) Remote Storage Local Storage OpenEBS Storage Hosts TCP Maya Driver HTTPS (manage) Storage Connectivity - Shared Orchestration K8s master K8s minions OpenEBS Maya master OpenEBS VSMs / Storage Pod Pod TCMU
  • 29. Resiliency and Fault Tolerance - Scaleout - Blue-Green Upgrades - Infra - Rolling Upgrades - VSMs - High-Availability
  • 30. Security - Data Security - Encryption - Secure Delete
  • 32. Performance - IO Latency - Provisioning - Analytics
  • 33. Scale - Capacity - Number of Volumes
  • 34. Deployment Flexibility OpenEBS Deployment Options for: - Dedicated Storage (External) - Hyper-converged - Hybrid-Cloud (AWS)
  • 35. OpenEBS Roadmap 0.1 0.4 1.0 0.3 0.2 ● Soft launch / Basic version ● Containerized controller ● Longhorn integration basics 0.2 - Basic k8s integration 0.3 - Full k8s integration (Hyper-Converged) 0.4 - Tiering and distributed storage 1.0 - First enterprise edition (Full functionality for basic production usage) ● K8s Provisioning via EBS-like driver ● S3 building blocks ● Complete longhorn integration ● First usable release for community consumption ● Complete K8s integration ● Fully hyper-converged ● Support for local backing store ● Building blocks of Q0S ● Building blocks of Tiering ● Tiering and QoS demonstrated ● Building blocks of ML for storage analytics ● DevOps operator use cases demonstrated ● Integration into Enterprise LDAP w/ role based access control ● All features supportable at scale Nov, 2017 Sep, 2017 Jun, 2017 Mar, 2017 Jan, 2017