[technique] Premiers tests de la plateforme Openstack + ceph + 10Gbit/s a tetaneutral.net

Laurent GUERBY laurent at guerby.net
Ven 19 Sep 19:14:47 CEST 2014


Bonsoir,

Fabien, Jérôme et Mehdi ont installé a TLS00 le cluster
ceph de test g1+g2+g3 et les switch s9 et s4810a (48x10G) ce mardi
20140916 vers 18h :

http://chiliproject.tetaneutral.net/projects/tetaneutral/wiki/Openstack#Ressources

Depuis avec Mehdi et les conseils de Loic nous avons commencé a tester
le comportement et la performance en reseau et stockage du cluster

Au niveau reseau avec notre solution tout routé en /32 (aucun L2
partagé, chaque VM est sur son propre tap sans aucun bridge) + BGP avec
BIRD pour le suivi des VM on a obtenu en iperf TCP :
- 35 Gbit/s de VM  a VM sur le meme hote
- 9.5 Gbit/s de VM a VM sur deux hotes differents donc
a la limite de l'interface physique (si on fait
du bonding des 2x10G ca devrait monter vers 20Gbit/s).

Ces resultats sont sans aucun tuning de la partie reseau kernel, la MTU
est donc a 1500 partout.

En mode bridge (VLAN3131 91.224.149.0/24) avec Openvswitch et la
configuration par defaut d'openstack ajoute quelques dizaine de regles
iptables qui ne servent a rien dans notre cas on etait limité a 
600 Mbit/s entre deux VM sur le meme host.

Mehdi a trouvé le moyen de desactiver ces regles et dans ce cas
ca remonte a 20 Gbit/s VM sur le meme host.

Coté stockage apres un peu de tuning et l'activation du cache tiering de
ceph entre notre pool SSD et celui HDD nous sommes arrivés a  55 Mbyte/s
agregé en write de 6 VM simultanés sur une dizaine de minutes soit
environ 9 Mbyte/s par VM, chaque VM executant :

dd if=/dev/zero of=test5G bs=5M count=1024 oflag=direct

La redondance du stockage ceph est triple donc chaque donnée
est ecrite 6 fois : 1 fois dans le journal puis une fois en stockage
et ca sur 3 machines. Ensuite au fil de l'eau les données
passent du pool cache SSD vers le rotationnel, il nous
reste a comprendre le tuning de cette partie la.

En read l'agrégé monte a 2.6 Gbyte/s soit plus de 400 Mbyte/s
sur chacune des 6 VM :

dd if=test1G of=/dev/null bs=20M iflag=direct

Le nombre d'IO/s vu de la VM a l'air de plafonner vers
2400 IO/s, donc avec "bs=4k" on est a 10 Mbyte/s.

A noter que lors des tests meme dans les cas ou nous avions mis
de tres mauvais parametres ce qui bloquait les VM sur les IO
(un des disques full, etc...) tout c'est bien passé
et la VM a été mise en pause par le systeme, on a pu
la unpause avec libvirt sans autre soucis.

Il nous reste aussi a regler un probleme de flag cpuinfo
qui empechent la migration live dans certains cas.

La doc en cour de redaction sur l'installation :

http://chiliproject.tetaneutral.net/projects/tetaneutral/wiki/Openstack_Installation_TTNN

Sincèrement,

Laurent





Plus d'informations sur la liste de diffusion technique