Viele von Ihnen haben darum gebeten, und es ist mein Privileg, volle libcloud-Unterstützung für das Linode-API anzukündigen!
libcloud ist eine Standardisierungsbemühung, die von den Gründern von Cloudkick unternommen wurde, um mit der Standardisierung der APIs von Cloudanbietern fertig zu werden. Es war mir eine Ehre, mit Alex Polvi und den Mitwirkenden von libcloud an der Integration des Linode-API in libcloud zu arbeiten; der heutige Tag markiert einen Erfolg für alle Beteiligten.
Unter Verwendung von libcloud (geschrieben in Python) würde ein einfaches Rezept zum Neustart aller Ihrer Linodes wie folgt aussehen:
from libcloud.providers import linode
driver = linode.LinodeNodeDriver("api_key")
for node in driver.list_nodes():
node.reboot()
Ein Großteil des Funktionsumfangs von libcloud ist sehr abstrakt; nur sehr wenig der Anpassungsmöglichkeiten, die das vollständige Linode-API bietet, ist damit implementierbar. Im Code werden viele Annahmen getroffen, und ein Großteil des Linode-API wird an libcloud angepasst und nicht umgekehrt - es werden nur sehr grundlegende Funktionen angeboten, da libcloud als High-Level-Abstraktionsschicht und nicht als vollständige Lösung konzipiert ist.
Für die meisten Projekte werden Sie das vollständige Linode-API in Betracht ziehen wollen.
Hier ist eine grobe Zuordnung der sechs Funktionen von libcloud zu den entsprechenden Aufrufen des Linode-API.
libcloud | Linode-API |
Liste_Knoten | linode.list |
reboot_node | linode.reboot |
Knoten_zerstören | linode.delete |
erstellen_Knoten | linode.create linode.disk.createfromdistribution linode.disk.create linode.config.create linode.boot |
Listengrößen | verfügbare.Linienpläne |
Liste_Bilder | avail.distributions |
libcloud ist derzeit nur über Git verfügbar. Weitere Informationen finden Sie auf seiner GitHub-Projektseite. Mein persönlicher libcloud-Baum befindet sich ebenfalls auf GitHub, wo ich die Linode-Entwicklung durchführen werde.
Es ist meine Hoffnung, dass libcloud vielen von Ihnen das Leben erleichtert. Ich ermutige zum aktiven Testen und zu Fehlerberichten (ich brauche sie!), da ich nicht jedes mögliche Szenario testen kann. Viel Spaß!
Kommentare (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)