SQL Azure

元ネタ:Web and Business Edition Sunset FAQ

Q:新しいサービス帯を用意したのは何故?

基本的には顧客からのフィードバックを受けて、リレーショナルデータベースをもっと使いやすくするため。アプリケーショントランザクションの性能要件に応じて6種類のパフォーマンスレベルを提供する。
ビジネス継続性、SLAの強化、少ないコストでより大容量使えるようになり、課金体験も改善している。

Q:Web・Businessエディションはどうなるの?

2014年4月24日から12ヶ月で提供が終了する。
12ヶ月以内にWeb・BusinessからBasicとStandard、Premiumに移行する必要がある。
ただ、現時点においては何も変更が無いので、使用し続けることができる。

Q:4月24日以降もWeb・Businessエディション使用できる?

今までどおり使える。

Q:Basic、Standard、Premiumで使用できない機能は?

Federationは、提供されない。
Premiumデータベースでデータベースコピーの仕様を変更した。
Premiumデータベース容量は制限されていたが、Businessエディションと同じレートで、容量予約無くSuspended Premiumデータベースを提供する。

Q:Basic、Standard、Premiumプレビューはサポートされる?

サポートされる。
Azure Supportプラン、Microsoft Premium Suportで。

Q:Basic、Standard、Premiumはいつ一般提供(GA)する?

現時点では、正確な日付は発表できないが、GA値段に移行する30日前にメールで通知する。

Q:Basic、Standard、Premiumデータベースのプロビジョニング

Premiumエディションは2つに制限されているが、それ以上必要な場合は連絡してね。
現時点では、Web・BusinessエディションのデータベースからBasic、Standardにはアップグレードできない。この制限は、数週間後に解除される。Web、Business、Basic、Standard、Premiumデータベースを同じサーバー上で使用できるようになり、サービス間を行き来できるようになる。

SQL Azure

Web/Businessエディションが1年以内に廃止されることが発表されました。
それに伴い他のエディションへの移行が必須になります。
どのように他のエディションに移行すれば良いのかを、Microsoftの人がちらりと案内していましたので紹介します。

将来的に、Web/Businessエディションから全ての新しいサービス帯にスケールアップ・スケールダウンするためのT-SQL ALTER DBや管理ポータルメニューを追加します。
それまでは、プレビュー版のBasicとStandardエディションを使用したい場合は、新しくデータベースを作成し、import/exportサービスを使用して、既存のデータベースからデータをエクスポートして、新しいデータベースにインポートしてください。
もしくは、Web/Businessエディションのデータベースからプレミアムサービスのデータベースに移行してください。

MSDNフォーラム:How to move databases from Web and Business Edition to the new Service Tiers?

Windows Azure

Microsoft Azureに複数のロールをデプロイして、ロードバランサーのテストをしていると、ロードバランサーが動作していないように感じます。

  1. クライアントからの全てのリクエストが一つのインスタンスで受信される。二つ目のインスタンスは受信しない。
  2. 複数のクライアントを使用した時のみ、時々2つ目のインスタンスが呼び出される。

1つのクライアントから複数のリクエストをしても同じマシンにアクセスし続ける。

 

2つのクラインと殻リクエストをすると、1つ目のクライアントは1つ目のマシンに、2つ目のクライアントは2つ目のマシンにアクセスし続ける。

結論

Azureのロードバランサーは新しいTCPコネクションを受信するとラウンドロビンでロードバランシングしますが、新しいHTTPリクエストの受信ではラウンドロビンしません。

cloudapp.netのURLにリクエストを送信すると、LBはTCPコネクションでルーティングします。アプリケーションがHTTPリクエストを送信するときに同じTCPコネクションを利用するので、同じマシンにアクセスします。

別のマシンにラウンドロビンさせるには、TCPコネクションをブレイクして、新しいTCPコネクションを接続する必要があります。既存のTCPコネクションがKillされるまで、HTTPリクエストは同じマシンにルーティングされ続けます。

HTTPリクエストの変わりに新しいTCPコネクションを作成するには、たとえば同じクライアント上の複数のブラウザを使用することで対応できます。

Connections To Azure Role Not Getting Load Balanced Between Instancesを一部意訳しました。

Windows Azure

Windows Azure Webサイトには、トラブルシューティングや分析に使用できるKUDUと呼ばれるツールがあります。
KUDUの詳細については、ここに記載されています。

メモリダンプを取得したり、デプロイログを参照したり、設定ファイルを参照することもできます。

KUDUへのアクセス方法

Webサイトを作成して、ダッシュボードの右サイドにある「デプロイ資格情報の設定」を設定します。

image

https://example.scm.azurewebsites.net/](exampleは各自のサイト名)にアクセスします。アクセスすると認証情報を確認されるので、先ほど設定した資格情報でログインします。

image

Windows Azure

  1. AWS上でフルバックアップを取得する
  2. Azure上で、[recovery]無しでフルバックアップをリストアする
    参考:MSDNライブラリ[データベースのバックアップの復元]
  3. AWS上でログバックアップを取得する
  4. Azure上で[recovery]無しでログバックアップをリストアする
  5. 3~4にかかる時間が十分に短くなるまで繰り返す
    スクリプト化すると良いかも。
  6. アプリケーションをオフラインにする
  7. AWS上でログバックアップを取得する
  8. Azure上で[with recovery]でログバックアップをリストアする
  9. アプリケーションの向き先をAzureに変更する
  10. アプリケーションをオンラインにする

3~5は、ログシッピングで自動化することもできます。

How to migrate SQL Server databases from AWS to Windows Azureを意訳した投稿です。