Cloud storage com ceph

53
Cloud storage com Ceph

Transcript of Cloud storage com ceph

Page 1: Cloud storage com ceph

Cloud storage com Ceph

Page 2: Cloud storage com ceph

● Italo Santos

● @ Locaweb desde 2007

● Sysadmin @ CT-Storage

# whoami

Page 3: Cloud storage com ceph
Page 4: Cloud storage com ceph

IBM 350• 13 de Setembro, 1956

• 152cm de comprimento 172cm de altura 74cm de largura

• 50 discos de 60cm 1.2k RPM

• 3.75MB de espaço

• Alugado $3200 /mês

Page 5: Cloud storage com ceph

Era uma vez…

Page 6: Cloud storage com ceph

1880's

Era uma vez…

Page 7: Cloud storage com ceph

1880's

1950's

Era uma vez…

Page 8: Cloud storage com ceph

1880's

1950's

Era uma vez…

1956

IBM 350

Page 9: Cloud storage com ceph

1880's

1950's 1963

Era uma vez…

1956

IBM 350

Page 10: Cloud storage com ceph

1880's

1950's 1963

1971

Era uma vez…

1956

IBM 350

Page 11: Cloud storage com ceph

1880's

1950's 1963

1971

1982

Era uma vez…

1956

IBM 350

Page 12: Cloud storage com ceph

1880's

1950's 1963

1971

1982

1994

Era uma vez…

1956

IBM 350

Page 13: Cloud storage com ceph

1880's

1950's 1963

1971

1982

1994

2000's

Era uma vez…

1956

IBM 350

Page 14: Cloud storage com ceph

Cloud Storage

Page 15: Cloud storage com ceph

Cloud Storage

Page 16: Cloud storage com ceph

Cloud Storage

Page 17: Cloud storage com ceph

Cloud Storage

Page 18: Cloud storage com ceph

Cloud Storage

Page 19: Cloud storage com ceph

“Modelo de Serviço onde os dados são armazenados e gerenciados remotamente

através de rede e acessados via API.”

Cloud Storage

Page 20: Cloud storage com ceph

API

Datacenter #2Datacenter #1

Pools

PUT / GET https://cloud.storage.com/bucket/file.txt

Cloud Storage

Page 21: Cloud storage com ceph

API

Datacenter #2Datacenter #1

Pools

PUT / GET https://cloud.storage.com/bucket/file.txt

Cloud Storage

Page 22: Cloud storage com ceph

Ceph• Software Defined Storage

• Multi-Protocolo

• Escalável

• Auto Gerenciável

• Sem ponto único de falha

Page 23: Cloud storage com ceph

Arquitetura

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

APP

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

HOST/VM

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

CLIENT

Page 24: Cloud storage com ceph

Arquitetura

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

APP

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

HOST/VM

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

CLIENT

Page 25: Cloud storage com ceph

Arquitetura

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

APP

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

HOST/VM

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

CLIENT

Page 26: Cloud storage com ceph

Arquitetura

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

APP

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

HOST/VM

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

CLIENT

Page 27: Cloud storage com ceph

Arquitetura

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

APP

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

HOST/VM

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

CLIENT

Page 28: Cloud storage com ceph

Arquitetura

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

APP

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

HOST/VM

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

CLIENT

Page 29: Cloud storage com ceph

Componentes

OSDs

M

Monitors MDS

Page 30: Cloud storage com ceph

Componentes

OSDs

M

Monitors MDS

Page 31: Cloud storage com ceph

Componentes

OSDs

M

Monitors MDS

Page 32: Cloud storage com ceph

Componentes

OSDs

M

Monitors MDS

Page 33: Cloud storage com ceph

RADOS

A reliable, autonomous, distributed object store comprised of self-healing, self-managing, intelligent storage nodes

LIBRADOS

A library allowing apps to directly access RADOS, with support for C, C++, Java, Python, Ruby, and PHP

RBD

A reliable and fully-distributed block device, with a Linux kernel client and a QEMU/KVM driver

CEPH FS

A POSIX-compliant distributed file system, with a Linux kernel client and support for FUSE

APP HOST/VM CLIENT

Object Storage Gateway

RADOSGW

A bucket-based REST gateway, compatible with S3 and Swift

APP

Page 34: Cloud storage com ceph

RadosGW• Interface Object Storage REST

• Amazon S3

• OpenStack Swift

• FastCGI ou Embedded

• Utiliza cluster Ceph

Page 35: Cloud storage com ceph

Arquitetura

LIBRADOS

RADOSGW

APP

socket (Autenticação Ceph key)

REST (S3 / Swift)

Page 36: Cloud storage com ceph

Funcionalidades• Autenticação

• Buckets (ou containers)

• Gerenciamento de quotas

• Relatórios de utilização

• Replicação (zona e/ou região)

• Regras por usuário

• API de administração

Page 37: Cloud storage com ceph

Autenticação

Page 38: Cloud storage com ceph

Buckets

Usuário

Global

Page 39: Cloud storage com ceph

Quotas - usuário

Page 40: Cloud storage com ceph

Quotas - bucket

Page 41: Cloud storage com ceph

Relatórios• Usuário

• Bucket

• Período

• Tipo de operação

• Buckets

• Sumário

Page 42: Cloud storage com ceph

Replicação

• Disponibilidade / Failover

• Proteção / Backup

• Multi-Site / Zona

• Multi-Região

Page 43: Cloud storage com ceph

Multi-Site / ZonaAPP

LIBRADOS

RADOSGW

Master Zone

APP

LIBRADOS

RADOSGW

Failover Zone

Read OnlyRead / Write

Data Sync

Master Region

Page 44: Cloud storage com ceph

Multi-RegiãoAPP

LIBRADOS

RADOSGW

Master Zone

APP

LIBRADOS

RADOSGW

Master Zone

Read / Write

Metadata Sync

Read / Write

Master Region Secundary Region

Page 45: Cloud storage com ceph

Regras

Page 46: Cloud storage com ceph

API de Administração

• Começa em “/admin"

• Autenticação via S3

• Permissões pré-definidas

• Suporte a JSON e XML

Page 47: Cloud storage com ceph

API de Administração

Page 48: Cloud storage com ceph

API de Administração

Page 49: Cloud storage com ceph

CompatibilidadeAmazon S3 Ceph

BucketsBucket Lifecycle

PolicyBucket Website

ACLsLocation

NotificationVersioning

Request PaymentMultipart Uploads

Replication

Page 50: Cloud storage com ceph

Website

Page 51: Cloud storage com ceph

Website

Page 52: Cloud storage com ceph

https://www.flickr.com/photos/maayc/6786074583/

Page 53: Cloud storage com ceph

Obrigado!Italo Santos @ CT-Storage