1. はじめに この記事はMySQL Casual Advent Calendar 2015の22日目のエントリです。 先日、MySQL Casual Talksという勉強会で登壇してきました。その時の内容をまとめておきたいと思います。 MySQLデータベースサーバに障害が起きた時、サービスを続けるには幾つかの方法があります。障害発生時にSlaveサーバーを手作業でMasterに昇格させる方法、MySQL Utilitiesに含まれるmysqlfailoverというユーティリティーを利用する方法などです。 今回、Keepalivedというソフトウェアと、MySQLの双方向レプリケーションを使って、ほぼ無停止でフェイルオーバーする構成を試してみたので、それについてまとめておきたいと思います。 2. システム構成 db1、db2という二つのサーバで、それぞれmysqldとkeepalivedを
linux, サーバー関連 2010年6月19日, 地味にみなさんがどういう設定をしてるかが気になるところですが 正直何の知識もない僕が仕事で 「DB2台でレプリケーションよろしく」といわれて試行錯誤で構築した軌跡です。 他の人たちがどのように構築しているかがすごく気になるところですねぇ・・・ 目的 すでに構築されているWEBとDBの構成のもの。 DBを1台増やすから「1台が落ちても2台目がホットスタンバイしてて即座に切り替わる構成」 としてほしいというのが依頼。 構成的にはこんな感じにDBが1台増える感じ。 こんな風に普段はWEBはDB1を参照するけど、DB1に障害が起きた場合は! こんな形でDB2を参照するようにしちゃう。 こういった風に代替サーバーが役割を引き継ぐ事をフェイルオーバーって言うらしいよ! これを可能にするにはDB1とDB2の間で以下の事がないと成立できない 例えばDB1
あとで書く、と言った手前なので書くとします。 DSASの中の人がすごい勢いで LVS の話を書いてくれてます。この辺。LVS を使うと Linux と箱でロードバランサが作れちゃいます。普通に買ったら数百万とかしちゃうやつ。 DSAS の中のひとに感謝しつつ、いい機会なのでやってみよう! と思っていろいろ試して昨日あたりからはてなの中でも LVS + keepalived で動かしはじめてます。いまのところ問題なし。 そのロードバランサをどこに使ってるかですが、普通ロードバランサというとインターネットからの入り口のところに置いてウェブサーバーの負荷分散に使うイメージがあります。が、今回ははてなでは MySQL のスレーブの手前に置くという役割でとりあえず使いはじめました。 +-----------+ +-----------+ | mod_perl | | mod_perl | +----
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く