Azure SDK for Go のすゝめ
2019-12-04
azblob://2022/11/11/eyecatch/2019-12-04-azure-sdk-for-go-of-encouragement-000.jpg

◆ 初めに

この記事はFIXER Advent Calendar 2019 (https://adventar.org/calendars/4579) 4日目の記事です。
前日は、業務スピードを加速させる記事「エンジニア業務を加速しよう!」 です。
地方からドンッ!とナイスな記事を発信してくれています。さすがだ。

4日目で初めての水曜日。毎週水曜日はAzure縛りということでAzure関連記事でございます。
個人的には縛りがあるほうが書きやすいんですよね。
なぜなら、大雑把にネタを考えなくていいからなんですが。
それはさておき、Azure回最初のこの回は、GoのテンプレートからAzureVMをデプロしてみます。 それでは早速。Let's Golang !(いいたかっただけ)

◇ やってみる

例のごとく必要なものも揃えていきましょう。

サービスプリンシパルを作ります。
Azure に非対話形式でサインインするには、サービス プリンシパルが必要です。 次のコマンドを実行しましょう。

 az ad sp create-for-rbac --sdk-auth > quickstart.auth

AZURE_AUTH_LOCATION という名前で quickstart.authの pass を環境変数に登録しておきます。

コードを持ってきましょう。

go get -u -d github.com/azure-samples/azure-sdk-for-go-samples/quickstarts/deploy-vm/...

さっそくデプロイを走らせます。main.goを実行しましょう。

cd src/github.com/azure-samples/azure-sdk-for-go-samples/quickstarts/deploy-vm
go run main.go

おそらく5分から6分ほどでデプロイされます。 portal画面で確認すると......できてる...!

作成したリソースを削除していきます。残しておいてもいいという方は飛ばしてください。

az group delete -n GoVMQuickstart

作成したサービスプリンシパルも削除しちゃいましょう。
ここの CLIENT_ID_VALUEquickstart.auth の中に書かれていますので、そこからコピーしてください。

az ad sp delete --id ${CLIENT_ID_VALUE}

◇最後に

まとめです。
Goで書かれたテンプレートで Azure 環境にデプロイできました。
個人的にはこういった方法でデプロイするのが初めてだったので
とても勉強になったのですが、読んでくださった皆様はいかがだったでしょうか?
まだまだ、自分自身勉強中なのでソースコードを見て理解を深めていこうと思います。
さて、明日の担当は筆?マイク?を置いていったあの人がご登場ですよ!!
お楽しみに :)

終わり\(^o^)/