マイクロソフト社が提供するパブリッククラウド「Azure 」をプログラムから操作する方法として、CLIが提供されていますが、CLIで複雑なことをやるのは難しいのでSDK(ソフトウェア開発キット) を利用することが多いです。今回は、Azure SDK for goについて簡単にまとめておきたいと思います。

Azure SDKとAzureの関係

AWS、GCPなどのほとんどのパブリッククラウドでは、下記のような形でREST APIによるリソースの管理を行っています。下記は、Azureの例をベースに記載しています。

どうしてもSDKとして機能提供されていないものは、REST API形式でやりとりするようなプログラムを書けば可能です。REST API形式でプログラムを書くとhttp部分などのやり取りやデータのマッピングなど意識しなければならないことが多いので、その部分をうまくラップして意識しなくすむような形で機能提供してくれています。

ソースコード

ソースコードは、githubで公開されています。

ライセンスは、Apache License 2.0で提供されています。利用する文には、特に意識する必要はないですね。

よく参照するドキュメント

SDKを始めて触る人は、下記のドキュメントを一読するのが良いと思います。

あとは、Githubのコードサンプルが非常に便利です。

このサンプルの中には、人工知能(AI)サービスであるAzure Cognitive Serviceも含まれています。

今回は、Azure SDK for goを触った際に参考になったドキュメントやパブリッククラウドが提供するSDKの仕組みについて簡単に紹介しました。