Découverte et tests du Cloud « physique » Online.net sur architecture ARM

Surfant sur le succès des mini-plateformes ARM tel que le Raspberry Pi ou encore le Banana Pi, Online.net (la filiale d’hébergement et de location de serveurs d’Iliad (Free) connue notamment pour ses Dedibox) lance une nouvelle offre qui devrait faire parler d’elle. A mi-chemin entre une offre de serveur dédié et une offre de virtualisation, Online.net innove en proposant des mini-serveurs physiques basés sur une architecture ARM…

Directement issue des travaux de l’équipe de Recherche & Développement, Online.net propose donc une toute nouvelle architecture maison basée sur l’architecture ARM. Chaque carte est équipée de 18 « serveurs » ce qui permet de caser jusqu’à 864 « serveurs » dans un rack (18 serveurs x 16 lames x 3).

Une carte contenant pas moins de 18 serveurs !

Une carte contenant pas moins de 18 serveurs !

 

Un ensemble de "lames" contenant pas moins de 288 serveurs

Un ensemble de « lames » contenant pas moins de 288 serveurs !!

Je vous invite notamment à consulter la petite vidéo ci-dessous mettant en avant le processus de conception de cette nouvelle architecture maison:

Le service est pour le moment accessible en version « Beta » et aucun tarif n’a été annoncé… ayant la chance de disposer d’un accès à cet Beta je vous livre ci-dessous mes premiers tests… et le moins que l’on puisse dire c’est que tout cela s’avère prometteur !

Création d’une instance

Une fois connecté à l’interface https://cloud.online.net/ la première étape consiste à saisir votre clef SSH. Pour faire simple une clé SSH remplace le traditionnel couple user/mot de passe en vous permettant de vous connecter de manière sécurisée à votre serveur. Nul doute que cette étape (bien que peu complexe) pourra rebuter les plus néophytes d’entre-nous.. Notons toutefois que cette offre n’a pas pour vocation de s’adresser aux plus débutants mais bien aux utilisateurs expérimentés souhaitant « bidouiller » à moindre frais.

L'interface d'accueil du Cloud Online.net

L’interface d’accueil du Cloud Online.net

Si vous êtes sous Windows et que vous utiliser Putty vous pouvez trouver un tutorial intéressant ici. Sous Mac OS X, vous trouverez un exemple de génération d’un clé SSH ici et enfin sous Linux cela se passe ici.

Cliquez sur votre nom d’utilisateur en haut à droite puis choisissez le menu « Credentials ». Vous arrivez alors sur l’écran ci-dessous dans lequel il vous suffira de copier/coller votre clé publique SSH généré à l’étape précédente.

Interface d'ajout de votre clé SSH publique

Interface d’ajout de votre clé SSH publique

Une fois cette étape réalisée vous pouvez désormais créer votre première instance en vous rendant sur « Servers »:

L'interface de création d'un serveur

L’interface de création d’un serveur

Il vous suffit donc tout simplement de choisir le nom de votre serveur, de choisir la distribution que vous souhaitez y voir installer et enfin d’ajouter éventuellement un ou plusieurs volumes supplémentaires.

Au niveau des distributions, on retrouve les grands classiques que sont Ubuntu, Gentoo et Debian mais aussi des distribution « prêtes à l’emploi » (appelées InstantApp) tel que WordPress, Owncloud… nul doute que cette liste viendra s’enrichir au fil des mois.

Une fois ces options validées la création de votre serveur ne prend pas plus d’une minute !

Focus sur les fonctionnalités

Le service proposé par Online.net propose nombre de fonctionnalités intéressantes notamment:

  • La possibilité de générer à tout moment un Snapshot c’est à dire une image de votre disque à des fin de sauvegardes mais aussi et surtout à des fin de génération d’un image pouvant ensuite  être réutilisée sur d’autres instances (et peut-être partagée avec la communauté comme le fait Amazon ?)
  • La possibilité de cloner des volumes (disques) à la volée.
  • La possibilité de réserver une adresse IP Fixe pour vos serveurs (même si ce serveur ne semble pas fonctionnel durant cette phase bêta).

 

Un coup d’oeil à la bête

Connectons nous désormais sur ce serveur nouvellement crée en SSH et regardons ce qu’il contient.

La configuration proposée par Online.net est un tourne sous un SoC ARMv7 fourni par Marvell qui dispose de 4 cœurs à 1,3 GHz accompagné de 2 Go de mémoire vive (RAM) et  20 Go de SSD associés. J’y ai rajouté un disque de 100Go en LHDD.

Commençons par jeter un coup d’oeil au processeur:

root@c1-10-1-xx-yy:~# cat /proc/cpuinfo
processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
Features        : half thumb fastmult vfp edsp thumbee vfpv3 tls idiva idivt vfpd32 lpae
CPU implementer : 0x56
CPU architecture: 7
CPU variant     : 0x2
CPU part        : 0x584
CPU revision    : 2

processor       : 1
[..]

processor       : 3
[..]

Hardware        : Marvell Armada 370/XP (Device Tree)
Revision        : 0000
Serial          : 0000000000000000

On y retrouve donc bien nos quatre coeurs ARMv7. Puis vérifions la quantité de RAM disponible:

root@c1-10-1-xx-yy:~# free -h
             total       used       free     shared    buffers     cached
Mem:          2.0G       115M       1.9G         0B        24M        57M
-/+ buffers/cache:        33M       1.9G
Swap:           0B         0B         0B
root@c1-10-1-xx-yy:~#

Nos 2 Go de mémoire vive sont bien présent ! Vérifions ensuite les volumes créés:

root@c1-10-1-xx-yy:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs           19G  407M   17G   3% /
none           1008M     0 1008M   0% /dev
/dev/nbd0        19G  407M   17G   3% /
tmpfs           203M   32K  203M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           405M     0  405M   0% /run/shm
root@c1-10-1-xx-yy:~#

On retrouve bien notre volume de 20 Go.

Quelques tests de performances

Nous allons désormais réaliser un petit test de performance pour regarder les performances disques.

Commençons par l’installation de l’utilitaire hdparm:

root@c1-10-1-xx-yy:~# apt-get update

[...]

root@c1-10-1-xx-yy:~# apt-get install hdparm

[...]

Puis l’éxécution d’un test de lecture avec et sans cache:

root@c1-10-1-xx-yy:~# hdparm -tT /dev/nbd0

/dev/nbd0:
 Timing cached reads:   2020 MB in  2.00 seconds = 1010.70 MB/sec
 Timing buffered disk reads: 220 MB in  3.02 seconds =  72.79 MB/sec

Et ensuite un test d’écriture:

root@c1-10-1-xx-yy:~# dd if=/dev/zero of=/tmp/garbage.tmp bs=32k count=10k
10240+0 records in
10240+0 records out
335544320 bytes (336 MB) copied, 4.43457 s, 75.7 MB/s

C’est pas si mal ! A titre de comparaison le même test lancé sur un serveur dédié Kimsufi affiche 860 MB/Sec pour le premier test et 164 MB/sec pour le second. Sur un Raspberry Pi on est trés loin de ces résultats (du à l’utilisation de la carte SD) puisque que l’on arrive à 185 MB/sec en lecture cache, 16 MB/sec en lecture directe et 12 MB/S en écriture.

Voici un petit résumé de ces tests:

Comparatif des performances

Comparatif des performances entre 3 plateformes différentes (cliquez sur l’image pour agrandir)

Voyons maintenant pour le téléchargement d’un fichier volumineux de 1 Go:

root@c1-10-1-xx-yy:~# wget ftp://shv.telusquebec.com/fichier_1g_file.bin
[...]

Length: 1048576000 (1000M) (unauthoritative)

31% [====================================    ] 331,939,712 3.25M/s  eta 4m 1s

On attend les 3,25 Mo/S ce qui n’est pas si mal. Notons toutefois qu’avec une serveur dédié Kimsufi on attend des débits bien plus importants:

root@mister-bidouilles:~# wget ftp://shv.telusquebec.com/fichier_1g_file.bin

[...]

Length: 1048576000 (1000M) (unauthoritative)

31% [=========================        ] 333,459,576 10.1M/s  eta 67s

Terminons par un petit test de latence sur un ping:

root@c1-10-1-xx-yy:~# ping www.yahoo.fr
PING any-src.a03.yahoodns.net (74.6.50.150) 56(84) bytes of data.
64 bytes from w2.src.vip.bf1.yahoo.com (74.6.50.150): icmp_req=1 ttl=49 time=92.8 ms
[...]
64 bytes from w2.src.vip.bf1.yahoo.com (74.6.50.150): icmp_req=8 ttl=49 time=97.6 ms
64 bytes from w2.src.vip.bf1.yahoo.com (74.6.50.150): icmp_req=9 ttl=49 time=92.5 ms

La latence est pour le coup assez longue avec 90 ms de moyenne… Est-ce lié au serveur ou plus globalement à un problème de routage au niveau de l’architecture Online.net ? Difficile de répondre…

Encore une fois à titre de comparaison sur un Kimsufi d’OVH:

root@mister-bidouilles:~# ping www.yahoo.fr
PING any-src.a03.yahoodns.net (188.125.73.108) 56(84) bytes of data.
64 bytes from w2.src.vip.ch1.yahoo.com (188.125.73.108): icmp_req=1 ttl=58 time=26.7 ms
[...]
64 bytes from w2.src.vip.ch1.yahoo.com (188.125.73.108): icmp_req=2 ttl=58 time=26.6 ms
64 bytes from w2.src.vip.ch1.yahoo.com (188.125.73.108): icmp_req=3 ttl=58 time=26.8 ms

Le mot de la fin…

En conclusion bien que les performances ne soit pas (encore ?) à la hauteur d’un serveur dédié « classique » il y a fort à parier que cette plateforme fasse un carton: L’interface est simple et claire, les performances sont honnêtes et surtout les diverses fonctionnalités tel que le Snapshot en font un outil indéniablement efficace. Il ne reste plus qu’à attendre la publication officielle des tarifs pour savoir si ce type d’architecture pourra détrôner les serveurs dédiés dans l’hébergement de blogs ou équivalents…

Vous pouvez demander via Twitter une invitation pour tester la beta en envoyant un message à @online_en pour recevoir une invitation à ce service.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *