Converged& Fault Tolerant& Distributed& Parallel& - - PowerPoint PPT Presentation

converged fault tolerant distributed parallel irods
SMART_READER_LITE
LIVE PREVIEW

Converged& Fault Tolerant& Distributed& Parallel& - - PowerPoint PPT Presentation

Converged& Fault Tolerant& Distributed& Parallel& iRODS. iRODS User Group Meeting 2017 Aaron Gardner June, 2017 Introduction BioTeam is focused on research


slide-1
SLIDE 1

Converged& Fault Tolerant& Distributed& Parallel& iRODS.

iRODS User Group Meeting 2017

Aaron Gardner June, 2017

slide-2
SLIDE 2

Introduction

  • BioTeam is focused on research

computing consulting and products

  • Scientists with deep IT and scientific

computing expertise

  • Infrastructure (HPC, Storage,

Networking, Enterprise, Cloud), Informatics, Software Development, Cross-disciplinary Assessments

  • 15 years bridging the “gap” between

science, IT, and HPC

slide-3
SLIDE 3

History with iRODS

  • BioTeam members working with

iRODS since 2011— thanks Reagan

  • A number of consulting engagements

around iRODS

  • BioTeam sees data management as a

critical mountain that must be scaled

  • We are actively engaged with the

scientific community to solve data management issues collaboratively

slide-4
SLIDE 4

Motivation

  • Resource server vault storage exclusivity
  • OK for direct attached storage, active archive
  • Not for distributed parallel at speed
  • Multiple copies on primary (fast)


storage for iRODS a non-starter


slide-5
SLIDE 5

Motivation

  • Resource server fails—data drops off the grid
  • Catalog fails—lose access to everything
  • Multiple copies of catalog data not ideal
  • Avoid additional hardware
  • Performance and scalability

We want “all the things”—what to do?


slide-6
SLIDE 6

Can an iRODS catalog and resources have the same resiliency and scalability that today’s distributed storage systems have?

How close can we get?

slide-7
SLIDE 7

New Reference Architecture

controller0 controller1 vm0 vm1 vm2 vm3 vm4 vm5 vm6 vm7 /fs

iRES.0

distributed shared storage high speed local network (10-100Gb Ethernet, IB, etc.)

/fs

iRES.1

/fs

iRES.2

/fs iCAT

iRES.3

db /fs

iRES.4

/fs

iRES.5

/fs

iRES.6

/fs iCAT

iRES.7

db

clients

slide-8
SLIDE 8

Let it fail

controller0 controller1 vm0 vm1 vm2 vm3 vm4 vm5 vm6 vm7 X

iRES.0

distributed shared storage high speed local network (10-100Gb Ethernet, IB, etc.)

/fs

iRES.1

/fs

iRES.2

/fs iCAT

iRES.3

db /fs

iRES.4

/fs

iRES.5

/fs

iRES.6

/fs iCAT

iRES.7

db

clients

slide-9
SLIDE 9

Let it fail, let it fail

controller0 controller1 vm0 vm1 vm2 vm3 vm4 vm5 vm6 vm7 X

iRES.0

distributed shared storage high speed local network (10-100Gb Ethernet, IB, etc.)

X

iRES.1

/fs

iRES.2

/fs iCAT

iRES.3

db /fs

iRES.4

/fs

iRES.5

/fs

iRES.6

/fs iCAT

iRES.7

db

clients

slide-10
SLIDE 10

Let it fail, let it fail, let it fail.

controller0 controller1 vm0 vm1 vm2 vm3 vm4 vm5 vm6 vm7 X

iRES.0

distributed shared storage high speed local network (10-100Gb Ethernet, IB, etc.)

X

iRES.1

/fs

iRES.2

X X

iRES.3

X /fs

iRES.4

/fs

iRES.5

/fs

iRES.6

/fs iCAT

iRES.7

db

clients

slide-11
SLIDE 11

New Reference Architecture

Converged

  • Deployed on storage controller(s)
  • No additional hardware or server instances
  • Request latency minimized
  • Single replica kept on shared storage


Fault Tolerant

  • Resource servers see all available storage
  • “Physical” resources impersonate “virtual”
  • Cluster monitoring and failure handling
  • Only need one “physical” resource, catalog, database

slide-12
SLIDE 12

New Reference Architecture

Distributed

  • Resource performance scales with backing storage
  • iCAT hosted on distributed storage and scales independently

Parallel

  • Client can read and write to all resources at the same time
  • Minimize false “data island” lock-in
  • Clients can achieve higher bandwidth than a single resource
  • (Future) Multipart could provide true parallel object access
slide-13
SLIDE 13
  • Unmodified codebase
  • Scale horizontally
  • Incorporate with other storage
slide-14
SLIDE 14

How was this accomplished?

  • iRODS 4.1.9 (refactoring for 4.2.1)
  • Ansible, Vagrant, VirtualBox, NFS for Test
  • Spectrum Scale on Cluster for Production
  • Pacemaker/(CMAN | Corosync)
  • Custom irods, icat OCF resources
  • “Virtual” resource reference counting
  • /etc/irods/hosts_config.json
  • Galera Cluster for MySQL

slide-15
SLIDE 15

Physical Resource (pR) Failures: 0

vR7 pR pR pR pR pR pR pR pR vR6 vR5 vR4 vR3 vR2 vR1 vR0 clients /vault (shared POSIX filesystem)

  • bj.7
  • bj.6
  • bj.5
  • bj.4
  • bj.3
  • bj.2
  • bj.1
  • bj.0

composite resource tree (random, etc.)

slide-16
SLIDE 16

Physical Resource (pR) Failures: 1

vR7 pR pR pR pR pR X pR pR vR6 vR5 vR4 vR3 vR2 vR1 vR0 clients /vault (shared POSIX filesystem)

  • bj.7
  • bj.6
  • bj.5
  • bj.4
  • bj.3
  • bj.2
  • bj.1
  • bj.0

composite resource tree (random, etc.)

slide-17
SLIDE 17

Physical Resource (pR) Failures: 2

vR7 pR pR X pR pR X pR pR vR6 vR5 vR4 vR3 vR2 vR1 vR0 clients /vault (shared POSIX filesystem)

  • bj.7
  • bj.6
  • bj.5
  • bj.4
  • bj.3
  • bj.2
  • bj.1
  • bj.0

composite resource tree (random, etc.)

slide-18
SLIDE 18

Physical Resource (pR) Failures: 3

vR7 pR pR X pR pR X X pR vR6 vR5 vR4 vR3 vR2 vR1 vR0 clients /vault (shared POSIX filesystem)

  • bj.7
  • bj.6
  • bj.5
  • bj.4
  • bj.3
  • bj.2
  • bj.1
  • bj.0

composite resource tree (random, etc.)

slide-19
SLIDE 19
slide-20
SLIDE 20
slide-21
SLIDE 21

icat sql floating ip sql.n floating ip icat.n

HA Active-Active iCAT Cluster

icat icat clients sql sql load balancing (DNS round robin, etc.) floating ip sql.0 floating ip icat.0 floating ip icat.1 mysql galera sst (fixed ips)

floating ip sql.1

slide-22
SLIDE 22

icat sql floating ip sql.n floating ip icat.n

HA Active-Active iCAT Cluster: SQL Fail

icat icat clients sql X load balancing (DNS round robin, etc.) floating ip sql.0 floating ip sql.1 floating ip icat.0 floating ip icat.1 mysql galera sst (fixed ips)

slide-23
SLIDE 23

HA Active-Active iCAT Cluster: iCAT Fail

X icat clients sql X load balancing (DNS round robin, etc.) floating ip sql.0 floating ip sql.1 floating ip icat.0 floating ip icat.1 mysql galera sst (fixed ips) icat sql floating ip sql.n floating ip icat.n

slide-24
SLIDE 24

iRODS Distributed Database Experiences

Oracle RAC MySQL Cluster Postgres-XL MySQL Galera


slide-25
SLIDE 25

iRODS Soapbox

  • Resource throughput and scalability
  • Catalog performance and scalability
  • Atomicity of transactions
  • Multipart
  • Multipath for resources
  • Fastpath
slide-26
SLIDE 26

Future Work

  • Benchmark and test
  • Postgres-XL
  • Apache Trafodion
  • Desirable replication
  • Additional architectures (HCI, etc.)
  • Microservice deployment in Kubernetes
slide-27
SLIDE 27

Thank You

bioteam.net
 info@BioTeam.net
 @BioTeam