Table des matières

Benchmark CEPH

Benchmark de rados

Benchmark du stockage block device distant

Cette section décrit comment lancer un benchmark des block devices de ceph. L'idée est d'obtenir des informations sur la latence et la bande passante en lecture/écriture sur les serveurs de stockage.

Sur le serveur de calcul (ex: atlantis) :

Ne pas créer une image dont le nom existe déjà.

-Créer une image block device depuis le cluster de prod sur le noeud de stockage ceph distant:

rbd create image02 --size 1024 --pool replicated_2_pool -m 192.168.142.130 --keyring /etc/pve/priv/ceph/replicated_two_times.keyring --id proxmox_replicated_2

Sur le serveur de stockage (ex: phobos) :

-Vérifier que l'image a bien été créée:

rados lspools #Lister les pools disponibles
rbd ls -l replicated_2_pool

-Retirer les features non supportés de l'image (garder juste layering)

rbd info image02 --pool replicated_2_pool #lister les features
rbd feature disable image02 exclusive-lock, object-map, fast-diff, deep-flatten --pool replicated_2_pool

Sur le serveur de calcul (ex: atlantis) :

-Mapper le block device sur le serveur de calcul:

rbd map image02 --pool replicated_2_pool -m 192.168.142.130 --keyring /etc/pve/priv/ceph/replicated_two_times.keyring --id proxmox_replicated_2

-Formatter la partition en ext4 et la monter:

mkfs.ext4 -m0 /dev/rbdXXX
mkdir /mnt/bench-ceph

-Lancer le test avec rbd bench-write:

rbd bench-write image02 --pool=replicated_2_pool -m 192.168.142.130 --keyring /etc/pve/priv/ceph/replicated_two_times.keyring --id proxmox_replicated_2

TODO : déterminer si les IOs se font depuis le serv de calcul ou depuis le serv de stockage.

Résultats bench-write

From Atlantis: elapsed: 48 ops: 262144 ops/sec: 5458.14 bytes/sec: 22356554.75

From phobos: elapsed: 18 ops: 262144 ops/sec: 14393.89 bytes/sec: 58957385.80 elapsed: 16 ops: 262144 ops/sec: 15723.71 bytes/sec: 64404325.99 elapsed: 17 ops: 262144 ops/sec: 14618.23 bytes/sec: 59876281.84

À la fin (sur serv de calcul)

-Unmap l'image

rbd unmap image02 --pool replicated_2_pool -m 192.168.142.130 --keyring /etc/pve/priv/ceph/replicated_two_times.keyring --id proxmox_replicated_2

À la fin (sur serv de stockage)

-Retirer l'image quand vous avez terminé:

rbd snap purge replicated_2_pool/testimage01 #remove snapshots
rbd rm replicated_2_pool/testimage01 #remove image

Sources

https://tracker.ceph.com/projects/ceph/wiki/Benchmark_Ceph_Cluster_Performance#Benchmark-a-Ceph-Block-Device