37
Applications have changed and someone forgot to tell storage India System Development Lab 2019 SNIA INDIA 23 rd- 24 th May | Bangalore

Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Applications have changed and someone forgot to tell storage

India System Development Lab

2019 SNIA INDIA 23rd- 24th May | Bangalore

Page 2: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Abhishek Jain

Software Engineer

Yadavendra Yadav

Software Architect

Page 3: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Agenda• Application Modernization• Evolution of Container • Container Storage • Distributed File System – An Example• Container Native Storage

Page 4: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization
Page 5: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Monolithic

Page 6: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Microservice

Page 7: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Dev Ops

Automation

Business Agility

Rich User Interface

Cloud Native

Dynamic

Scalable

Architecture

Fast Time to Market

DecentralIndependent

Page 8: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Banking Services

Debit

Check Balance

Calculate Interest

Email Notification

Update Profile

Credit

Banking Services

Check balance

Email Service

Credit Debit

Calculate Interest

Example

Page 9: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Evolution of Container

Page 10: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization
Page 11: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization
Page 12: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

2001

Page 13: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Process Container

Page 14: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization
Page 15: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

LXC Container

Page 16: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization
Page 17: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Containers are Ephemeral,Storage is Not

Page 18: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Block, File and Object Storage

Block – Traditional storage is managed by OS i.e. LUN, DISK

File –Unstructured data is managed with folders i.e. FILE SYSTEMS

Object – Higher growth data is unstructured and managed by APPLICATIONS

Which Array/Volume/LUN

Which Directory/ Subdirectory/Filer

Page 19: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Container storage

Page 20: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

LocalHost

storage

Page 21: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Host

Dedicated storage

Storage Appliance

Page 22: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Distributed File System

Host

Distributed storage

Host

Page 23: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Kubernetes Container Storage

Persistent Volumes:

A Persistent Volume (PV) is a piece of storage in the cluster that has been provisioned by an administrator.

Persistent Volume Claim:

A Persistent Volume Claim (PVC) is a request for storage by a user.

Page 24: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

K8s HostPath

Plugin

Possible Ways to Configure Containers Storage:

Page 25: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

K8s NFS Plugin

Possible Ways to Configure Containers Storage:

Page 26: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Container Storage Plugin

Page 27: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Docker Volume PluginMesos Volume Plugin

K8s dynamic Provisioner

K8s flexvolume plugin

K8s in-tree plugin

Persi

Container Storage Interface

CSI Plugin

Page 28: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Distributed File system – A solution

Page 29: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

4321AvailabilityMobility Consistency Scalability

Global Namespace

Analytics

Transparent HDFSSpark

Powered by Clustered File SystemAutomated data placement and data migration

Disk TapeShared Nothing

ClusterFlash

SMBNFS

POSIX

File

JBOD/JBOF

Spectrum Scale RAID

Container Orchestrator

Worldwide Data Distribution

Site B

Site A

Site C

Encryption

DR Site

Page 30: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization
Page 31: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Container Granular Operations

Unified Orchestration for Apps and storage

Containerized Software-defined Storage

Seamless user experience for developers and devops

Container Native Storage Evolution

Page 32: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Seamless Scaling and upgrades

Run on any infrastructure

Lower TCO

Native Integration With Container Orchestrator

Container Native Storage Evolution

Page 33: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Container Orchestration Feature

Placement

Deployment

Scheduling

Update

Health

Horizontal Scaling

Failover

Rollout and Rollback

Configuration Management

Service Discovery

Page 34: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Rook Architecture A cloud Native Storage Example

Page 35: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Rook Architecture

Source : rook.io

Page 36: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Source : rook.io

Page 37: Applications have changed and someone forgot to tell storage · Abhishek Jain Software Engineer Yadavendra Yadav Software Architect. Agenda • Application Modernization

Thank you