CDP:Weighted Transitionパターン
From AWS-CloudDesignPattern
Revision as of 15:48, 15 April 2012 by KenTamagawa (Talk | contribs)
重みづけラウンドロビンDNSを使った移行
Contents |
解決したい課題
全システムをある地域から異なる地域へ移行したいというケースもありうる。例えば、オンプレミスのデータセンターから、クラウドへシステムを移行する場合、もしくはクラウドのある地域から異なる地域へ移行したい場合が考えられる。この際、システムのドメイン名を変えることなく、なおかつ、システムを停止することなく、できるだけスムーズに移行したいという要望は大きい。
クラウドでの解決/パターンの説明
ドメイン名を変えることなく全システムを移行させるには、DNSサーバーにおいて重みづけラウンドロビンという機能を用いて、名前解決をする際に既存システムと新システムに振り分ける手法がある。最初は新システムに少しだけ振り分け、問題が無ければ、新システムへの配分を徐々に増やしていくことができる。クラウドで提供されているDNSサービスを用いれば、グローバルで提供された分散DNSサービスを用いることができるため、異なる地域へシステムを移行する際にもDNSサーバーの運用の考慮を最小限で、前述の移行作業を行うことができる。
実装
AWSには、Amazon Route 53と呼ばれる名前解決サービスがある。こちらの重みづけラウンドロビン(Weighted Round Robin)機能を用いて下記のようにシステム移行ができる。
- Route 53のホスティド・ゾーンの中で、既存システムの名前解決を行う(まだ行っていない場合)
- 既存システムと同等の構成で、新システムを準備する
- Route 53のホスティド・ゾーンの中に、新システムへのレコードセットを作成し、重みづけの設定を行う
- 当初は、新システムへの振り分けを非常に小さくしておき(例えば、1%)、問題なくシステムが稼働すれば、徐々に重みづけを増やしていき、最終的に新システムに完全に移行する。
構造
利点
- 既存システムに手を入れることなく新システムへの移行が可能になる。
- 少量のトラフィックをコントロールしながら既存システムへ移すことができるので、何か問題があったときにはすぐに切り戻すことができる。
注意点
- 移行の際に、データベースのデータの同期も必要な場合は、その部分は別途考慮する必要がある。