Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler...

7
Marica Antonacci - INFN Bari Tutorial Days di CCR Napoli, 17-19 Dicembre 2014 Tutorial sulla configurazione di CEPH + CINDER per il block storage di OpenStack

Transcript of Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler...

Page 1: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

Marica Antonacci - INFN Bari !

Tutorial Days di CCR !Napoli, 17-19 Dicembre 2014

Tutorial sulla configurazione di CEPH + CINDER per il block

storage di OpenStack

Page 2: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

• Creazione di backend multipli (in particolare CEPH)

• Configurazione di QoS per rate-limiting

• Encryption

• esempi: uso del driver LVM ed RBD

• Backup su Ceph [bonus: metadata import/export]

• Volume retype, migration

Wiki su bitbucket: !

https://bitbucket.org/maricaantonacci/tutorial/wiki/browse/

Roadmap

Page 3: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

vm01

vm02-03-04

OPENSTACK CONTROLLER + NETWORK NODE

COMPUTE-NODE

Tutorial Testbed Architecture

Keystone

Horizon

glance-api

glance-registry

neutron-server

neutron-l3-agent

neutron-dhcp-agent

neutron-metadata-agent

nova-novncproxy

nova-conductor

nova-certnova-api

nova-scheduler

nova-consoleatuth

openvswitch-switch

neutron-plugin-openvswitch-agent

NETWORKING COMPUTE

DASHBOARD

IDENTITY

IMAGE

nova-compute neutron-plugin-openvswitch-agent

COMPUTE NETWORKING

MySql RabbitMQ

cinder-scheduler

cinder-api

BLOCK STORAGE

ceph-mon

cinder-volume

ceph-osd

BLOCK STORAGE

DISTRIBUTED FS

ceph-mds

cinder- backup

ceph-deploy

DISTR

IBU

TED FS

Page 4: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

Ceph: cluster set-upvm01

ceph-deploy

vm02 vm03 vm04

ceph-admin

ceph-mon

osd.0 osd.1 osd.2DEFAULT !POOL

Page 5: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

Crush maphost vm02 { id -2 # do not change unnecessarily alg straw hash 0 # rjenkins1 item osd.0 weight 0.090 } host vm03 { id -3 # do not change unnecessarily alg straw hash 0 # rjenkins1 item osd.1 weight 0.090 } host vm04 { id -4 # do not change unnecessarily alg straw hash 0 # rjenkins1 item osd.2 weight 0.090 } root default { id -1 # do not change unnecessarily alg straw hash 0 # rjenkins1 item vm02 weight 0.090 item vm03 weight 0.090 item vm04 weight 0.090 }

rule replicated_ruleset { ruleset 0 type replicated min_size 1 max_size 10 step take default step chooseleaf firstn 0 type host step emit }

BUCKETS RULES

Page 6: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

Ceph: cluster set-upvm01

ceph-deploy

vm02 vm03 vm04

ceph-admin

ceph-mon

osd.0 osd.1 osd.2

osd.3 osd.4 osd.5

DEFAULT !POOL

ENCRYPTED !POOL

Page 7: Tutorial sulla configurazione di CEPH + CINDER per il block ... · MySql RabbitMQ cinder-scheduler cinder-api BLOCK STORAGE ceph-mon cinder-volume ceph-osd BLOCK STORAGE DISTRIBUTED

Modified Crush Maphost vm02-encr { id -5 # do not change unnecessarily alg straw hash 0 # rjenkins1 item osd.3 weight 0.090 } host vm03-encr { id -6 # do not change unnecessarily alg straw hash 0 # rjenkins1 item osd.4 weight 0.090 } host vm04-encr { id -7 # do not change unnecessarily alg straw hash 0 # rjenkins1 item osd.5 weight 0.090 } !root encrypted { id -8 # do not change unnecessarily alg straw hash 0 # rjenkins1 item vm02-encr weight 0.090 item vm03-encr weight 0.090 item vm04-encr weight 0.090 }

NEW BUCKETSrule encrypted_ruleset { ruleset 1 type replicated min_size 1 max_size 10 step take encrypted step chooseleaf firstn 0 type host step emit }

NEW RULE