クラウドごとに異なるAPIの違いを吸収するライブラリ「Apache Libcloud」、正式版がオープンソースで公開
多くのパブリッククラウドはAPI経由でインスタンスを起動したりストレージを構成することができるようになっていますが、クラウドごとにAPIの仕様は異なります。そのため、あるクラウドをAPI経由で制御するアプリケーションを作ったとしても、そのアプリケーションは特定のクラウドだけで有効です。
こうしたクラウドごとのAPIの違いを吸収しようとオープンソースで開発されているのが「Apache Libcloud」(以下Libcloud)です。パブリッククラウドやOpenStackのようなクラウド基盤ソフトウェアなど50以上のクラウドに対応しています。Libcloudを用いることで、クラウドにロックインされないクラウド管理アプリケーションが開発可能です。
そのLibcloudがバージョン1.0に到達したと発表されました。
LibcloudはPythonで書かれたライブラリです。クラウドの仮想マシンのインスタンス、ブロックストレージ、オブジェクトストア、ロードバランサー、DNS、CDN、Dockerコンテナサービス、バックアップなどの機能を、クラウドの違いを超えて共通のAPIで制御できるようにしてくれます。
対象となるクラウドは、AmazonクラウドやGoogle Compute Engine、Microsoft Azure、SoftLayerといった代表的なパブリッククラウドから、OpenStack、vSphere、CloudStack、Eucalyptusなどのプライベートクラウド基盤ソフトウェアなど50以上(ただしクラウドごとにサポートしている機能が異なる場合があります)。
Libcloudの開発が始まったのは2009年のことです。Publickeyでも記事「「メタクラウドAPI」がオープンソースで登場」で紹介しました。バージョン1.0に到達するまで7年かかったことになります。
あわせて読みたい
統合開発環境Eclipseの最新版「Eclipse Neon」リリース。Node.js対応、PHP 7対応、Javaリファクタリング強化、Docker対応強化、Cloud Foundry対応など
≪前の記事
Dockerコンテナをハイパーコンバージドでサポートする「Acropolis Container Services」発表。Nutanix .NEXT Conference 2016