しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Azure Web Apps が Go 1.5 に対応していた件と最近のアップデートについて

たまたま Kudu を見たら、Azure Web Apps のインスタンスがリイメージされていたので調べてみると、リリースされたばかりの Go 1.5 がインストールされていることに気が付きました。

f:id:shiba-yan:20150826002203p:plain

インストールパスの関係でそのままではエラーになりますが、GOROOT を設定するとちゃんと動作します。

f:id:shiba-yan:20150826002138p:plain

ということで、何時も通りデプロイまで行ってみます。使ったコードは以前の記事と同じです。

go ファイルが存在していると Kudu が自動的にデプロイスクリプトを生成してくれますが、デフォルトだと 1.4.2 が自動的に選択されるので、ポータルから GOROOT を予め設定しておきます。

f:id:shiba-yan:20150826214421p:plain

バージョンの選択は将来的には Node.js と同じような形になるのだと思います。アップデートに期待します。

これで Web Apps にデプロイを行うと、Go 1.5 を使ってビルドが行われます。

f:id:shiba-yan:20150826214339p:plain

デプロイが完了すると、Go 1.5 でアプリケーションが動作しました。正直かなり簡単です。

f:id:shiba-yan:20150826214441p:plain

今回はリイメージのタイミングが良かったのか、ランタイムのインストールが早かったですね。

セッションアフィニティの無効化

ARMExplorer を使って調べている時に clientAffinityEnabled という設定を見つけました。名前からして ARR のアフィニティクッキーを書き出すかどうかだと思ったので、実際に確認してみました。

デフォルトでは true になっているので false にして保存しておきます。

f:id:shiba-yan:20150826001803p:plain

この状態でブラウザを使ってアクセスしてみると、ARRAffinity クッキーが書き出されませんでした。

f:id:shiba-yan:20150826001840p:plain

これまでは Arr-Disable-Session-Affinity という HTTP レスポンスヘッダーを書き出す必要がありましたが、設定を切り替えるだけで対応できるようになりました。ちょっと隠し機能っぽいですが。

f:id:shiba-yan:20150826002258p:plain

関係ないですが Kudu だけではなく ARMExplorer にもアイコンが付いてました。

プレビューポータルのアップデート

Web Apps のプレビューポータルは頻繁にアップデートされていますが、ネットワークに関係する設定がわかりやすくなっていたので紹介しておきます。

f:id:shiba-yan:20150826002504p:plain

ネットワーク関係の機能として VNET / Hybrid Connections / ASE VNET の 3 つが Web Apps に備わっていますが、どういったものなのか簡単な説明付きで設定できるようになってました。

現在の状態がタイルで確認できるのもなかなか良いと思いました。