インプレース更新の改善

Posted: 2011/10/20 カテゴリー: Uncategorized
タグ:, , , ,

皆さんからのフィードバックを基に、本日、Windows Azure (英語/日本語)にいくつかの有用なアップデートを行います。これらは、デプロイ済みのサービスに対するインプレース更新の際に、開発時の柔軟性を提供します。サービスのパブリックIPを変更することなく、簡単にこれらの更新を行えます!

Windows Azureは、デプロイ済みのサービスに対して、VIPスワップやサービスの完全な削除/再デプロイなしに、より幅広い変更をサポートするようになりました。インプレース更新で次の変更が許されるようになったので、VIPスワップや再デプロイなしに、ほとんどすべての更新を行えるようになりました!

新たに許されるようになったインプレース更新は、次の通りです。

  • 仮想マシン サイズの変更 (スケールアップまたはスケールダウン)
  • ローカル ストレージの増加
  • デプロイに対するロールの追加または削除
  • エンドポイントの数や種類の変更

許されている変更のまとめ

ホスティング、サービス、ロールに
許されている変更
インプレース更新 ステージン (VIP スワップ) 削除とデプロイ
オペレーティング システム バージョン はい はい はい
.NET信頼レベル はい はい はい
仮想マシン サイズ はい

警告:仮想マシン サイズの変更は、ローカル データを保持しない。サービス管理APIを使って、この変更を行うときは、forceフラグが必要 (英語/日本語 (現時点では未更新))

注意:Windows Azure SDK 1.5以降が必要

はい はい
ローカル ストレージ設定 はい

インスタンスのみ注意:Windows Azure SDK 1.5以降が必要

はい はい
サービスに対するロールの追加または削除 はい はい はい
特定のロールのインスタンス数 はい はい はい
サービスに対するエンドポイントの数または種類 はい

注意:Windows Azure SDK 1.5以降が必要

注意:エンドポイントがアップデートされるため、可用性が一時的に失われる可能性がある

いいえ はい
構成設定の名前と値 はい はい はい
構成設定の (名前ではなく) 値 はい はい はい
新規証明書の追加 はい はい はい
既存の証明書の変更 はい はい はい
新規コードのデプロイ はい はい はい

 

仮想マシン サイズ変更の例

次の例は、Windows Azure管理ポータルでの、仮想マシン サイズの変更方法を示しています。


図1:デプロイの初期状態

「VMサイズまたはロール数の更新を許可する」のボックスをチェックせずに、仮想マシン サイズの変更を試みると、エラーが表示されます。

VMサイズまたはロール数の更新を許可する」のチェックボックスをチェックして、同じ操作を試みると、VMサイズがアップデートされます。

図2:チェックボックスをチェックした更新


図3:更新完了後のデプロイ

インプレース更新に対する、さらなる制御

インプレース更新がより幅広く適用可能になったことに加えて、更新プロセス自体に対しても、さらに制御可能になりました。進行中の更新をロールバックでき、2つ目の更新を開始することもできます。更新が進行中 (少なくとも1つのインスタンスが新バージョンにまだ更新されていない状態) の間は、「更新またはアップグレードのロールバック」操作 (英語/日本語 (現時点では未公開))を使うことで、更新をロールバックできます。

ロールバック操作が自動モードに指定されている場合、現在オフラインのアップグレード ドメイン内の全インスタンスが準備完了状態に戻るのを待つことなく、最初のアップグレード ドメインでロールバックはが即座に開始されます。複数のアップグレード ドメインが同時にオフラインになることを避けるため、ロールバックを手動モードで行うことができます。手動モードでは、最初のアップグレード ドメインに対してWalk Upgrade Domain (英語/日本語)が呼び出されるまで、最初のアップグレード ドメインはロールバックされません。

複数の更新操作

最初の更新が進行中の間に、2つ目の更新操作を開始すると、ロールバック操作に類似したことが実行されます。2つ目の更新が自動モードの場合、最初のアップグレード ドメインは即座にアップグレードされます。これによって、複数のアップグレード ドメインのインスタンスが同時にオフラインになる可能性があります。ロールバック操作の使用や複数の変更操作の開始に関するさらなる詳細については、こちらから (英語/日本語 (現時点では未公開))。

更新操作のまとめ

ホステッド サービスを更新する3つのオプションのどれを使っても、ほとんどの変更が実行可能になったので、どのオプションをいつ使うのが最も適切か説明することには意味があります。次の長所、短所のテーブルで説明するのがいいでしょう。

更新のオプション 説明 長所 短所
インプレース更新 (英語/日本語) 新規パッケージがアップロードされ、実行中のサービスのインスタンスに適用される。 必要なのは、実行中の1つのデプロイのみ。

各ロールに少なくとも2インスタンスあれば、サービスの可用性が維持可能。

インスタンスの停止、更新、再起動の間は、サービスのキャパシティが制限される。

インスタンスの更新中は、異なるインスタンスで複数バージョンのコードが実行されるので、サービスのコードがそれをサポートしていなkればならない。

ステージング (VIPスワップ) (英語/日本語) 新規パッケージをアップロードし、それを既存の運用バージョンとスワップする。

これはサービスのIPアドレスを単にスワップするので、VIPスワップと呼ばれる。

サービスのダウンタイムやキャパシティの低下がない。 少なくとも更新の間は、2つのデプロイを実行する必要がある。
サービスの再デプロイ サービスを一時停止し、それから削除する。そして、新バージョンをデプロイする。 必要なのは、実行中の1つのデプロイのみ。 サービス削除とサービス再デプロイの間は、サービスがダウン。

サービスが再デプロイされると、仮想IP (VIP) が変更されることが多い。

Windows Azureサービスの更新に関するさらなる詳細については、こちらから (英語/日本語 (現時点では未公開))。

関連情報

コメント
  1. […] Improved In-place Updates” (日本語訳「インプレース更新の改善」) […]

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中