Triple réplication de vos données sur un ou deux datacenters
Extensible et sans limite: votre volume de stockage est alloué dynamiquement au fur et à mesure que vous ajoutez ou enlevez des fichiers
Compatibilité avec l’API S3 Amazon dans ses principales fonctions

Comment partager une image d'un container avec un autre container ?

Il est possible de partager une image située dans un container, avec d’autres containers, grâce au client Glance.

Tout d’abord, il vous faut téléverser votre image dans un container :

$ glance image-create --name image-demo --file /tmp/image-demo.iso --disk-format ami --container-format ami
+------------------+--------------------------------------+
| Property         | Value                                |
+------------------+--------------------------------------+
| checksum         | 9335f3e4e9243951274a2eaba22c51f8     |
| container_format | ami                                  |
| created_at       | 2014-01-19T10:32:39                  |
| deleted          | False                                |
| deleted_at       | None                                 |
| disk_format      | ami                                  |
| id               | d4a883c9-994a-484f-841f-ce66dafa687f |
| is_public        | False                                |
| min_disk         | 0                                    |
| min_ram          | 0                                    |
| name             | image-demo                           |
| owner            | c22838c8661c4523ae425eefdfb57afb     |
| protected        | False                                |
| size             | 11                                   |
| status           | active                               |
| updated_at       | 2014-01-19T10:32:39                  |
+------------------+--------------------------------------+

L’image téléversée est à présent située sur votre stockage objet. Vous pouvez facilement la retrouvé en utilisant le client Swift :

$ swift list
glance_d4a883c9-994a-484f-841f-ce66dafa687

Si vous souhaitez afficher la liste de vos images disponibles, saisissez la commande :

$ glance image-list --property-filter image_type=snapshot

À présent nous pouvons partager cette image avec un autre container (ici nous l’appellerons tenant_b, dont l’ID est cd563ba051bd4341b1015566e260f09e) avec la commande suivante :

$ glance member-create d4a883c9-994a-484f-841f-ce66dafa687f cd563ba051bd4341b1015566e260f09e

Et voilà ! Le tenant_b peut maintenant voir et utiliser l’image partagée. Toutefois, vous devez garder à l’esprit que l’image reste située sur votre stockage object.

Limites : Le client Glance permet aussi l’option “can_share”, lors du partage de l’image. Lorsque l’option “can_share” est configurée sur “true”, le tenant_b est capable de partager à son tour l’image avec d’autres containers. Pour des raisons de sécurités cette option n’est pas supportée par les Services Cloud de Cloudwatt. Une manière de contourner cette obstacle est de télécharger l’image puis de la téléverser sur le stockage objet du container tenant_b. Ce dernier sera alors capable de partager à son tour l’image avec d’autres containers.