CDP:Server Swappingパターン
提供:AWS-CloudDesignPattern
サーバーの移行
目次 |
解決したい課題
サーバーが故障すると復旧に追われる。故障の原因は多種多様だが、ディスクは問題ない場合も少なくない。そのような場合、問題のないディスクを別のサーバーに移し替えると早急に復旧できるが、データセンターでの作業や代替サーバーの手配、ディスクの差し替えなどで時間がかかってしまう。
クラウドでの解決/パターンの説明
クラウドではサーバーは仮想サーバーとなり、付け替え可能な仮想ディスクを利用できる。仮想サーバーに障害が起こった場合は、障害が起こった仮想サーバーのディスクを別の仮想サーバーに付け替えて障害復旧を行うことができる。物理サーバーの場合と比べて、マシンの調達や技術者の移動は必要無いので、短時間で復旧可能となる。
実装
EBSはEC2インスタンスと独立して存在しており、EC2インスタンス間の付け替えが可能なので、障害発生時には代替となるEC2を起動して、EBSの付け替えを行える。
- EC2にEBSをアタッチし、通常はそこにデータを保存する。
- EC2の障害時に同一のAMIから仮想サーバーを立ち上げ、障害が発生したEC2のデータ用EBSを新規のEC2に付け替える。
- ミドルウエアやファイルシステムの再設定を行ない(例えば最新データへのシンボリックリンクを張る等)、障害直前の状態まで復旧を行う。
- これらの処理は監視ソフト(Nagios、Zabbix、Heartbeatなど)を使って自動化することも可能。
なお、AWS OpsWorksの提供しているAuto Healing機能を使用すると、同様の操作をAWSの機能として自動的に行う事ができる。
構造
利点
- EC2の障害直前の状態までリカバリーすることが可能。
- ルートディスクを交換することでシステム(OS)の復旧も短時間で可能。
注意点
- EBSの障害も考慮し、スナップショットなどのバックアップも行う必要がある。
- Floating IPパターンと併用することで、EBSも付け替えるとともに、固定IPアドレスを付け替えることも可能である。