圧倒亭グランパのブログスマートフォン用の表示で見る圧倒亭グランパのブログ30年後の自分にもわかるように書くブログこの広告は、90日以上更新していないブログに表示しています。2013の19日目の記事になります。今年ももうあと10日前後となりました。みなさんいかがお過ごしでしょうか。界隈では、「年末年始を安心して過ごすように」系記事も多数投稿されていますね。私もそれ系を書こうと思いましたが、インフラはド素人なのでどうしたものかと。以下の本を読んだ時にテーマが決まりました。見るこの冒頭に、簡単なFailoverの仕組みが書いてありました。今回は、簡単極小構成で実際にFailoverを体験してみようと思います。物理的に必要なのはMacのみです。物理サーバーもケーブルも何もいりません。お財布にも優しいです。ついては、以下のサイトが優しく解説されていると思います。チュートリアルBerkshelfの記事の直前まで読めば、今回の構成は実行できるかと思います。その他、個人的にVagtrantのインストール方法などもまとめたので、以下もご参照ください。インストールから仮想環境立ち上げまでを、オプションなどと共にちょっと細かく追ってみたFailoverの流れでは実際にどう処理が流れていくのかを見てみましょう。実運用中はこのような動作をしています。Terminal.appではpingコマンドで接続を常に確認します。server1とserver2の間では、お互いにヘルスチェックをします。↓そして、ひとつのサーバー(server2)を潰します。障害を検知し、Failoverの処理が走ります。↓server1によるIPアドレスの引き継ぎと、引き継ぎの報告がなされます。無事、両IP共、接続が可能となります。今回の環境を構築するには、Vagrantfile、recipe、シェルスクリプトの3つを編集します。1つずつ見ていきましょう。"failover!"ip_takeoverこのシェルスクリプトは、1回目の実行と2回目の実行で動作が異なります。付与されるこれで、2つのVIPのサーバーが生きている状態になりました。し、相手の反応がなかったら、相手のIPを自分に引き継ぐさて、いよいよサーバーを立ち上げます。Vagrantfileのあるディレクトリに移動して、コマンドを実行しましょう。VIPの付与このような流れになっています。立ち上がると、Terminal.appからの2つのpingが通るようになります。server1を打ち、server1内でシェルスクリプトを実行しましょう。障害を起こしましょう。こんな経験あまりないですよ。おもいっきり障害を起こしてください。sever2を停止しましょう。停止したあとのTerminal.appでのping結果は以下です。↓Failover!帰ってきた192.168.1.21!無事以下の状態になっていますね。server2は殉職しましたが、サービスは継続しています。゚Д゚ノノ"☆パチパチパチパチ課題この構成は、簡単が故にまだまだ課題が残っています。3台あったらどうなるの?シェルスクリプトをいちいち起動しないといけない一回のfailoverしか対応していないなどなどです。それらを解決するために、ロードバランサなどの機器が用いられています。書かれていますので、まだの方はご一読をば。最後に知識として知ってはいても、実際に自分で動かしてみると、これまた違った知識として定着しますね。手を動かすことは大切!みなさんもぜひ体験してみてください。明日のAdventCalendarは、我らがアイドル@saya_223nです。"vagrant-...どうも。今回はvagrant-berkshelfを触って...2013-10-03【Vagrant1.3.4】provisioner/shell:のbinaryオプションの検証こんにちは。原則」の自分なりの解釈リンクはてなブログブログをはじめる週刊はてなブログはてなブログPro月別アーカイブはてなブログをはじめよう!at_grandpaさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。