Azure Websites が便利すぎて鼻血でる

こんにちは。皆様いかがお過ごしですか。Surface Pro 3が発表されましたね。え?やだなー、もちろん買うに決まってるじゃないですか。

あ、最近JAZUGに参加しました。

というわけで、今回はAzureでイケてるサービスの紹介をしたいと思います。

VPSの管理が面倒になってきた

VPSブームから4年。もう4年も経つんですよ。早いですよね。VPSが流行るまで、専用サーバーとかレンタルサーバーを使っていましたよね。

私の場合は当時学生でお金が無かったので専用サーバーは借りられず、さくらのレンタルサーバーロリポップ!ヘテムルあたりのレンタルサーバーを良く使っていました。

で、VPSブーム。さくらのVPSとか[email protected][email protected][email protected][email protected]

[email protected][email protected]一時期は Half-Life 2 Deathmatch のゲームサーバー (Source Dedicated Server/srcds) を動かしたりもしていました。

VPSの契約数が5を超えたあたりから、重要なセキュリティ関連のアップデートが放置気味になりました。VPSがほぼウェブサーバー用途なのでレンタルサーバーに戻っても良かったのですが、サイトが多すぎて作業する時間が無くてあきらめていました。

インフラ・サーバー管理からの開放

ウェブサイト・アプリを公開する程度でVPSなんて大げさなのかもしれません。先日のOpenSSL騒動とかオープンリゾルバ問題、サーバー周りの脆弱性には責任を持ってずーっと対応していく必要がありますし、何かあったら周りにも迷惑をかけることになるかもしれません。

時代はクラウドです。必要な時に必要な分だけウェブ公開できるプラットフォーム(PaaS)を使うのがナウでヤングじゃないですか?!って誰か言っていました。

PaaSを使えば、インフラやサーバーの管理をしなくていいのです。そういうことはクラウド事業者がやってくれます。そのおかげで、我々はアプリの管理に集中できます。

Azure が日本上陸

前置きがやけに長くなりました。やっとAzureの紹介です。

2014年2月26日、 Microsoft Azure日本に上陸しました。

Azure は元々 Windows Azure と呼ばれていましたが、Windowsを動かすためのクラウドではありません。あくまでもWindowsは裏側でプラットフォームを支えているだけです。VMとしてWindowsを動かすこともできますが、もはやそれがメインではありません。重要なのは何をどうしたいかです。

Azureは日本に上陸し、東日本(埼玉らへん)と西日本(大阪らへん)リージョンが配置されました。これで日本の主要インターネット拠点2カ所で動くPaaS/IaaSとなり、非常に力強いものとなりました。

AWSのエッジロケーションを除き、リージョンの数ではAzureが上になりました。(AWS北京、Azureブラジルリージョンを含めて)

# Titanfallの国内サーバー(/Xbox Live Compute)は西日本リージョンのようです。

Azure Websites が便利すぎる

略すとAW…や、今回は、Azure Websitesの便利さを1人でも多くの方に知ってもらおうと、筆を握りしめています。

Azure Websites は、クラウドなウェブアプリプラットフォームです。VMとは違って、従来のレンタルサーバーに近い感覚でウェブサイトなりアプリを素早くデプロイでき、スケールも自在な PaaS です。感覚的には Heroku に似ています。

いつでもなんでもなんにでも使える

こんな夢のようなプラットフォームが今までにあったでしょうか(大げさ)。だいたい次のような環境が動きます。

  • ASP, ASP.NET
  • Java
  • Node
  • PHP
  • Python
  • PowerShell
  • Bash
  • (Perl)
  • (Ruby)

この中でもNodeが動く点が個人的に気に入っています。 server.js という名前のスクリプトをデプロイすると自動的にnodeプロセスが立ち上がります。NodeとAzure Websitesの詳しい話はまた別の機会で紹介します。あ、この Ghostブログも Node on Azure Websites です。

# PerlとRubyは最初から使える状態にはなっておらず、Azure Websites 上に自ら実行環境を構築することで一応動きます。商用利用はまだオススメできません。
# Bash は構成環境(Git関連)のオマケ程度のものです。

これらが必要な時に、必要な分だけすぐに動かすことができます。 本当に、すぐに動くんです!瞬く間にですよ!

実際にGitHubからデプロイしてみる

今回は管理ポータルからお手軽にポチポチっといってみましょう。ちなみにコマンドラインツールもあって、 Heroku みたいにも使えます。

Websites を新規追加する

左下の新規から

コンピューティング→WEB サイト→カスタム作成

ソース管理から発行にチェック

GitHubを選択 この他にも Bitbucket や CodePlex 、任意のGitリポジトリを指定できます。

認証して権限委譲を設定

リポジトリを選択してデプロイするブランチ名を入力 元々 GitHub Pages を使っていたので、 gh-pages ブランチはその名残。

数秒待ちます ちょっと待つ ↓数秒後 できた デプロイの表示をクリックすると今しがた新規作成された Websites の詳細ページに移動できます。

done 新規作成時に設定したURLを開くともうデプロイできてます。ね、簡単でしょう? ここまで普通に無料で使えるので気軽に試せます。

独自ドメインを設定する

先ほど開いた Websites の詳細ページから、構成タブを選択。

ドメインの管理

独自ドメインの設定を追加 はい、重要な説明が書いてある所に赤線を引いておきました。ここテストに出ます。

done 設定したドメインにアクセスして確認します。Remote Address がAzureのものになっていますね。ServerIIS になっているので分かりやすいかと思います。

さあ今すぐあなたも Azure Websites にデプロイ!

Azure Websitesの凄み、使ってみると実感できると思います。

追記 (2015/02/18)

Deploy to Azure ボタンを使うともっと簡単に Azure Websites にアプリケーションをデプロイできます。Microsoftアカウントをお持ちで既にAzureのサブスクリプションがある方は是非 reichat をデプロイしてみてください。無料です。

続き: Nodeアプリを Azure Websites で動かしてみる