API Hosting 1.0 en bêta
Par zllak le mercredi 1 septembre 2010, 15:23 - Hébergement - Lien permanent
Comme vous le savez peut être déjà, nous sommes en train de finaliser la gestion de notre plateforme d'hébergement Cloud via une API publique. Afin de vous faciliter le travail, beaucoup de choses ont été remaniées afin de vous permettre une utilisation plus simple, et une vraie maitrise de vos ressources hébergement chez Gandi.
En guise d'introduction, ce billet sera volontairement peu technique, et ne présentera que succinctement des parties qui seront développées en détails lors de la sortie officielle de l'API.
API ?
Pour la plupart des humains, le terme API n'évoque pas forcément grand chose. Je vous propose donc une petite définition rapide de ce qu'est une API.
Une interface de programmation (Application Programming Interface ou API) est une interface fournie par un programme informatique. Elle permet l'interaction des programmes les uns avec les autres de manière analogue à une interface homme-machine qui rend possible l'interaction entre un homme et une machine. Du point de vue technique une API est un ensemble de fonctions, procédures ou classes mises à disposition par une bibliothèque logicielle, un système d'exploitation ou un service. La connaissance des API est indispensable à l'interopérabilité entre les composants logiciels.
Voici la définition complète.
Concrètement, l'API Hébergement permettra à la personne qui s'en sert de pouvoir manipuler ses diverses ressources hébergement de Gandi. Il pourra par exemple, créer de nouvelles machines virtuelles, créer de nouveaux disques, relâcher des adresses IP, etc...
L'API a été pensée pour être la plus simple possible à utiliser.
Utilité de l'API
L'API va vous permettre de manipuler tous vos objets
hébergement, à savoir vos machines virtuelles, vos disques, vos interfaces réseaux, vos IPs, etc..., le tout de façon programmatique. Vous pourrez en créer, en supprimer, les modifier, les lister.
L'API fournit également la possibilité de gérer les attachements entre vos ressources.
Mais l'un des buts essentiel est d'être utilisé par d'autres programmes afin de construire quelque chose en lien direct avec nous.
Prenons 2 petits exemples:
- un valable pour tous, grâce à la commande vm.update par exemple, vous pourrez, si vous détectez dans les logs que votre serveur manque de RAM, lui en ajouter à la volée automatiquement.
- un exemple pour une société qui édite un logiciel, grâce à la commande vm.create, vous pourrez démarrer automatiquement et rapidement un serveur à partir d'un disque préparé avec votre applicatif et le proposer à vos clients
Le premier jeu de méthode vous permettra de manipuler les objets suivants :
datacenter list info
image list info
vm list info count create update delete start stop reboot disk_attach disk_detach iface_attach iface_detach
disk list info count create create_from update delete
iface list info count create delete
ainsi qu'une gestion des opérations
operation list info count delete
Nouveautés à venir
Profitant de la sortie de l'API, plusieurs fonctionnalités vont voir le jour. Ce sont des choses qui nous ont été demandées pour la plupart, et qui sont pour l'instant gérées par nos équipes du support. Certaines fonctionnalités ont été revues, et déplacées là où cela nous permettrait d'apporter quelque chose de nouveau.
Le choix du kernel et de la ligne de commande se fait maintenant sur chaque disque. Les disques auront un rôle plus important que maintenant. Il sera également possible de détacher un disque anciennement "système", pour l'attacher sur une autre machine virtuelle pour, par exemple, faire du recovery en cas de problème lors d'une mise à jour ou d'une installation ratée. On pourra également choisir sur quel disque une machine virtuelle démarrera.
Comment participer
La phase e bêta privée est en cours. Il vous suffit d'envoyer un e-mail à beta-hosting@gandi.net avec votre identifiant et nous vous recontacterons pour vous donner les accès.
Tester notre solution ?
Tous les clients inscrits à la lettre d'information disposent dans leur compte d'un coupon permettant de tester gratuitement notre solution pendant un mois. Pour les autres, un formulaire de demande de parts de test est également disponible.
Restez donc à l'affut, plus d'informations vont venir dans les jours qui viennent !













Commentaires
Il serait intéressant de savoir si cette API est encore une "exclue" revendeur ou bien ouverte à tous les comptes.
Parce que de façon clair ça n'est pas explicité.
Elle sera ouverte à tous et fonctionnera automatiquement avec vos identifiants.
Ah ca c'est chouette merci Gandi on pourra programmer des zolies interfaces comme ça :-)
Salut les gens,
Friture riquouèste:
- À moins que la partie authentification soit commune à l'API domaine, ajouter une méthode password(),
- Possibilité de limiter l'accès aux API à certaines IP (oui je sais, les IP ça se spoof, mais quand même).
Moins utile, mais bien pratique (site):
- Renommer une VM,
- Changer l'owner d'une VM (le vrai, celui qui a accès à la config de la VM).
Message à caractère informatif: j'ai ouïe-dire que certains membres du personnel se voyaient imposer l'écoute de la dernière chanson de René La Taupe sur leur lieu de travail. Le représentant de la loi que je suis (titulaire d'un permis de giflage Européen: http://www.youtube.com/watch?v=BRRr...) rappèle aux instances dirigeantes que seul l'écoute des chansons de Carla Bruni est tolérée sur le lieu de travail. J'invite les personnes concernés à contacter l’inspection du travail sans plus attendre: http://www.travail-solidarite.gouv....
Merci de votre attention.
Barf bizarrement c'est dans la section revendeur qu'on fait des posts pour les problèmes de la Beta, j'ai envoyé un mail vers mi-septembre (bon d'accord le 21 ...) pour participer pas eu de réponse ...
Pour une beta ouverte à tous, pas top ... et c'est encore les revendeurs seulement qui en profiteront sûrement ...
@Loulou: L'API beta hosting est effectivement ouverte à tous... Mais nous avons pris un peu de retard sur sa sortie effective; un peu de patience et vous devriez avoir des nouvelles.
La phase de bêta privée est lancée depuis hier, n'hésitez pas à nous contacter si vous souhaitez un accès
N'étant pas client hosting, je tiens quand même à saluer cette très bonne initiative. Cela permettra probablement l'apparition d'outils (gui, cli) assez intéressants.
Par contre, je suis client domaine, et là, ça pourrait être un gros plus aussi d'avoir un API pour gérer les tâches courantes !
Corentin: quand la migration V3 sera finie (Q1 2011), nous sortirons une nouvelle API domaine pour nos revendeurs et ajouterons une API domaine de gestion pour nos clients (gestion des DNS, des zones, des mails....)
Les clients ayant participé au lancement Alpha et à la Beta de l'hébergement peuvent maintenant récupérer leur clé d'accès à l'API à l'adresse https://www.gandi.net/admin/compte pour les autres, un petit mail et on vous donne un accès.
Un petit exemple de ce qu'on peut faire en 10 mins / 30 lignes de code sans être un développeur de génie http://www.gandi-test.fr/hosting/
Etant potentiellement intéresser par cela pour des utilisations futur, serais-t-il possible d'avoir une "démo" (genre celle la http://www.gandi-test.fr/hosting/) plus complète ? :)
La documentation des méthodes actuellement disponibles est ici: http://doc.rpc.gandi.net/
Plusieurs petits projets sont en cours avec la création d'interfaces logiciels (compatible linux/windows/mac...) ou d'interfaces pour mobiles par exemple.
Nous donnerons le code à la fin de nos tests mais le principe des API est de vous laisser construire l'interface donc vous avez besoin.
Quelques idées à exploiter pour ceux qui souhaiteraient tester :
* une interface iphone pour ceux qui ont une licence développeur
* un script à installer sur son serveur pour ajouter de la RAM à la volée en cas de besoin
* une interface visuelle de création d'architecture web (en flex ou en java par exemple)
Bonjour,
Maintenant que la beta Hosting est dans les tuyaux, avez-vous des nouvelles concernant l'API domaines et dns gandi ? Fin d'année ? début 2011 ?
Merci
Début 2011 oui. Nous migrons actuellement tous nos 'backend' nom de domaine et modifions notre API en fonction. Une fois la migration effectuée, nous proposerons une API publique ndd et actualiserons l'API revendeur. La migration est assez longue car elle ne doit pas perturber les opérations. Les créations de domaine sont 'migrées' à 80% env et les transferts le seront à la fin du mois de novembre.
Encore un exemple de ce qu'on peut faire avec la nouvelle API (screenshots sous Mac , Linux et Windows ) ...
C'est une petite application en C++/Qt4 qui marche sous Mac, Linux, et Windows. (oui, l'application sera disponible en GPL dans qqs semaines, après avoir ajouté le reste des fonctionnalités de base...)