Molti di voi l'hanno richiesto ed è mio privilegio annunciare il pieno supporto di libcloud per le API di Linode!
libcloud è uno sforzo di standardizzazione intrapreso dai fondatori di Cloudkick per far fronte alla standardizzazione delle API dei fornitori di cloud. È stato un onore lavorare con Alex Polvi e i collaboratori di libcloud per integrare l'API di Linode in libcloud; oggi è un successo per tutti i partecipanti.
Utilizzando libcloud (scritto in Python), una semplice ricetta per riavviare tutti i Linodes sarebbe simile a questa:
from libcloud.providers import linode
driver = linode.LinodeNodeDriver("api_key")
for node in driver.list_nodes():
node.reboot()
Gran parte delle funzionalità di libcloud sono molto astratte; pochissime delle personalizzazioni offerte dall'API completa di Linode possono essere implementate utilizzando libcloud. Nel codice vengono fatte molte ipotesi e molte delle API di Linode sono adattate a libcloud invece che viceversa; vengono offerte solo funzionalità di base, poiché libcloud è stato progettato per essere un livello di astrazione di alto livello, non una soluzione completa.
Per la maggior parte dei progetti, si vorrà prendere in considerazione l'API completa di Linode.
Ecco una mappatura approssimativa delle sei funzioni di libcloud con le equivalenti chiamate API di Linode.
libcloud | Linode API |
elenco_nodi | linode.list |
riavvio_nodo | linode.reboot |
distruggere_nodo | linode.delete |
creare_nodo | linode.create linode.disk.createfromdistribution linode.disk.create linode.config.create linode.boot |
dimensioni_elenco | disponibilità.piani di linea |
elenco_immagini | disponibilità.distribuzioni |
libcloud è attualmente disponibile solo via git. Per ulteriori informazioni, consultare la pagina del progetto su GitHub. Anche il mio albero personale di libcloud è su GitHub, dove mi dedicherò allo sviluppo di Linode.
Spero che libcloud renda la vita più facile a molti di voi. Incoraggio i test attivi e le segnalazioni di bug (ne ho bisogno!), poiché non posso testare ogni possibile scenario. Buon divertimento!
Commenti (4)
I’d probably still use Linode API, More choice is good though and I can see this being useful for some people.
Thanks!
Jed,
That is GREAT news.
Good work getting that in place.
-Dave
[…] may remember full libcloud support for Linode that we announced in September. It has been our privilege to work with the Cloudkick and libcloud teams to bring Linode support to […]
I know this is quite old – was wondering if you had considered any of the newer libraries (http://bit.ly/9pLiJs)