Dans la série les stockages alternatifs, ScaleIO est une solution logicielle qui utilise des disques locaux des serveurs pour créer un SAN virtuel qui a tous les avantages du stockage externe mais sans le coût et la complexité.
Dynamiques et élastiques, ScaleIO permet aux administrateurs d’ajouter ou de supprimer des nœuds et d’augmenter ou diminuer la capacité à la volée. Le logiciel répond immédiatement aux changements, et rééquilibre automatiquement la distribution du stockage en fonction du nombre de serveurs, et de disques.
Parce que ScaleIO est indépendant du matériel, il fonctionne avec tout types de disques, y compris les disques SSD (SSD), flash PCI, SAS ou SATA.
Architecture:
ScaleIO s’articule autour de 3 composants :
◆ Le Meta Data Manager (MDM) :
Configure et surveille le système ScaleIO. Le MDM peut être configurée dans
Mode Cluster redondant, avec trois membres sur trois serveurs, ou en Mode simple
sur un seul serveur.
◆Le ScaleIO serveur de données (SDS) :
Gère la capacité d’un serveur unique et agit comme un back-end pour accéder aux données.
Le SDS est installé sur tous les serveurs qui contribuent à des périphériques de stockage à la ScaleIO
système. Ces dispositifs sont accessibles via la SDS (le client).
◆ ScaleIO Client de données (SDC) :
C’est le pilote de périphérique léger qui expose ScaleIO volumes comme périphériques de bloc à la
application résidant sur le même serveur sur lequel est installée la SDC.
Installation sous Windows:
Tout l’intérêt de ScaleIO est qu’il peut notamment s’installer sur un hôte Hyper-V et donc constituer le stockage centralisé du cluster sans avoir a recourir a du ISCSI ou du FC.
Pour créer l’infrastructure de départ, il faut au minimum 3 nœuds.
L’installeur permet de choisir les roles désirés
Le premier avec le MDM et SDS et SDC (qui dans note exemple aura comme @IP 192.168.32.180 )
Le second avec le MDM secondaires le SDS et le SDC ( @IP 192.168.32.181)
Le troisième avec le TieBreaker , le SDS et LE SDC ( @IP 192.168.32.183)
L’interface fonctionnant en java il faudra installer la JRE qui va bien…
Sur chaque SDS il faudra affecter un ou plusieurs disques locaux a ScaleIO. Le disque devra être partitioné mais non formaté:
Le client SDC installé sera vu comme un HBA au sein du device manager:
Ensuite, c’es en ligne de commande que cela se passe a partir du premier nœud:
On créé le MDM primaire
1 |
cli --add_primary_mdm --primary_mdm_ip 192.168.32.43 |
On céé le MDM secondaire (pour avoir les MDM en cluster)
1 |
cli --add_secondary_mdm --secondary_mdm_ip 192.168.32.44 |
On créé le TieBreaker
1 |
cli --add_tb --tb_ip 192.168.32.45 |
On basule ScaleIO en mode cluster
1 |
cli --switch_to_cluster_mode --mdm_ip 192.168.32.43 |
On créé un groupe de protection qui regroupera tous nos SDS
1 |
cli --add_protection_domain --protection_domain_name scio-pd1 |
On ajoute nos 3 SDS au groupe de protection en y ajoutant le stockage (device E)
1 2 3 |
cli --add_sds --sds_ip 192.168.32.43 --sds_name scio-sds1 --protection_domain_name scio-pd1 --device_name E cli --add_sds --sds_ip 192.168.32.44 --sds_name scio-sds2 --protection_domain_name scio-pd1 --device_name E cli --add_sds --sds_ip 192.168.32.45 --sds_name scio-sds3 --protection_domain_name scio-pd1 --device_name E |
On créé ensuite un volume de 40 Go
1 |
cli --add_volume --size_gb 40 --volume_name scio-vol1 --protection_domain_name scio-pd1 |
Sur chaque nœud il faudra indiquer au SDC les MDM de rattachement en exécutant les commandes:
1 2 |
"C:\Program Files\scaleio\ecs\sdc\bin\drv_cfg" --add_mdm --ip 192.168.32.43 "C:\Program Files\scaleio\ecs\sdc\bin\drv_cfg" --add_mdm --ip 192.168.32.44 |
Il ne reste plus qu’a présenter ce volume au 3 SDC:
1 2 3 |
cli --map_volume_to_sdc --volume_name scio-vol1 --sdc_ip 192.168.32.43 cli --map_volume_to_sdc --volume_name scio-vol1 --sdc_ip 192.168.32.44 cli --map_volume_to_sdc --volume_name scio-vol1 --sdc_ip 192.168.32.45 |
Il ne reste plus qu’a ajouter le volume au cluster CSV Windows et c’est prét !
la console Java permet de superviser l’ensemble. Un petit test en lecture seule avec des disques SSD entrée de gamme donne cela:
Puis un test d’une VM windows 2008R2 hosté sur le cluster HyperV:
Blocs de 8kb, distribution 80 % aléatoire et 20 % séquentiel, 30% d’écriture et 70 de lecture.
Voila, 6200 IO/s, pas mal pour un cluster sans baie de stockage, avec 3 nœuds.
La solution devient très intéressante dès que l’on veut faire par exemple du VDI, ou il est nécessaire que les performances du stockage soient proportionnelles au nombre de VM…
On peut arriver donc a construire une architecture totalement distribuée ayant cet aspect la:
Pages: 1 2