IsaBIsaB億人の”シゴト”を熱くする!株式会社ISAOのブログIsaBTechWebサービスビジネスISAO採用English検索ワード:検索TOPTechnatインスタンスの冗長化NATpingRouterTablenatインスタンスの冗長化2013年11月27日komiこんにちは。プラットフォームの小宮です。先人の皆さまの記事を参考にして以下のとおりにしました。・なんとなくどうするか検討AmazonLinuxで作っちゃったので、たぶんHeartbeatとか入れづらいし、そもそもheartbaet使う必要ない気がする。待機系から監視してaws的にルーティングテーブル挿げ替えるだけでよさそう。作成しておかないと作成と起動とルーティングテーブル作るところもやらないといけないので切替時間が長くなる。インスタンス代がかかるけど起動もしたままがいいと思われ。ALLコメントはずす。他のインスタンスから渡ってsudoできるか確認するあとnatインスタンスにpythonのツール入れておくメール送信も設定AmazonLinuxではsendmailが動いてる模様だった。-p・natインスタンスとそれをデフォルトゲートウェイにしたルーティングテーブルを別途作っておくNATインスタンスはAMIをコピーして同じセグメントに作る作ったi-005a5e02Source/DestCheckをDisableにしないとRouterTableにルート設定する時の出口にできるインスタンスとして出てこない。先ほどのインスタンスに指定してAddしておくこの時点でこのテーブルにAssosiationしてるサブネットは存在しない状態。-e's/[",]//g'rtbassoc-52767e30確かにスタンバイルートに切り替わったことをマネジメントコンソールからも確認できた。コマンド単体での切替試験は成功。yahooへのpingが途切れることはなかった。・フェイルオーバーの条件を検討する以下を参考に考えると裏側にいるホストが3台くらいyahooとかと疎通が通らなくなったらフェイルオーバとかでいいのではないか。http://d.hatena.ne.jp/hirose31/20131105/1383623672serf使うと楽なんじゃないのかな。log4motoserf入れてみたり調べてみたけど結果的に新しすぎて情報が極端に少ないようなのでシェルスクリプトで頑張ることに。待機系からssh越しにpingして3つくらいのノードがダメならF/Oというほうが実情に即している模様。cronで定期実行するかmonとかにするか。⇒時間もないし簡単だからcronでいいや。/opt/bin/chk_backseg_ping.sh見ればわかるかもしれませんが敢えて解説するとhostsからバックセグのチェックするホストを全部取得し、pingの結果が3台以上のホストでNGな場合にnat02側のルートに再アソシエイトします。一応sshの接続性チェックをしています。pingのtargetも3つの中からランダム指定にしたので全滅でない限りは、targetに不通でGlobalに出れる状態でf/oはしないでしょう。完了ロックファイルは作成されて異常終了ステータスが入るので再実行はされません。定期的にstop/startとかする環境の場合はnatを最後に起動するなど起動順に気をつけないとだめそうで、natが起動してないとHA組んでる裏側のサーバがAPI通信できなくなってしまうので、uptimeが数分たたないとcheckが始まらないようにする等の分岐を入れたほうがいいかということで一応いれました。0m0.280spingの疎通が問題なかったためフェイルオーバーしなかった模様。次はnat01のiptablesでもstopしてglobalにpingが通らない状態にしてf/oするか確かめてみる。running.適当なバックセグメントのサーバからpingうちながら実施。0m0.456sフェイルオーバするときの実行時間は35秒なので毎分実行しても大丈夫ではある。(ホストが増えすぎなければバックグラウンドで動かすと並列実行できるとか見かけたけどよくわからなかったので気にしないことにします。(並列実行とかするとたぶんDoS攻撃ちっくになるので良ろしくないんじゃないのかとも思いました。)負荷とか実行時間が気になる場合は、全部じゃなくてランダムに選んだ複数のホストでチェックするとかでもいい気がします。変えるならこんな感じでしょうか。復旧するときにそれを手動で管理する必要があります。ロックファイルがある状態でテストしてみると変数定義直後に終了します。0m0.012s参考にしたスクリプトは以下URLに載ってるのです。log4moto個人的に少し気にしているのはyahoo.co.jpにそんなにpingしていいのかどうか。8.~もgoogleらしいので、まあいいことにします。こんなの↓もあるようです。あとはjpじゃないyahooにpingしてみるという意見も。/opt/bin/chk_backseg_ping.sh後日修正した↓ので追記します。$1"="$2}'`以上、見ていただいてありがとうございました。株式会社ISAOについて株式会社ISAO(いさお)は、東京・秋葉原にあるIT企業です。たのしいをうみだしとどける!をミッションに、億人を熱くするサービスを実現するビジョンを掲げています。ISAO”は、世界の”シゴト”を楽しくするビジョナリー・カンパニーになることを目指している集団です。サービスムービーフルPlusコミック・アニメ・映画・ドラマ・パチンコ&パチスロ・グラビアなどをスマホ最大級の規模で配信しています。Goalousゴールへの成果がガンガン見えるゴールコラボサービス。企業ビジョンの達成を促進します。くらまね最適なクラウド環境の構築と運用、セキュリティ対策までトータルサポートするMSPサービスです。Mamoruユーザビリティーとセキュリティーを両立した認証&ワークススタイルイノベーションサービスの統一ブランドです。amieオスカープロモーション様公式SNS。コンテスト等のコンテンツを配信。TEIOTトーメンエレクトロニクス様が提供するM2M・IoT関連製品の紹介サイト。57株式会社ISAO代表取締役。41サーバインフラ系主婦です。さいきんわりとqiitaに書いてます。25「ニッポン発!億人を熱くするサービス実現」を技術面からガッツリサポートすること。13ISAOの採用担当。ISAOで働く人たちがすき。ISAOの思想がすき。ISAOのビジョンをISAOらしく叶えたい。Twitter@ISAOcorpさんのツイートIsaBとは株式会社ISAO(いさお)のオウンドメディアです。ISAOの経営、組織運営に対する想い、エキストリームなおもしろネタ、Webサービスの開発・デザイン・マーケティングのTipsなどをお届けします。Us東京・秋葉原にあるIT企業、株式会社ISAO。”世界のシゴトをたのしくするビジョナリーカンパニー”を中長期ビジョンに掲げています。チーム力∞(無限大)の組織運営をおこなっています。