read-write前回作ったものの下に2つセクションを足しました。Fabric管理サーバのアドレスを指します。Fabric管理サーバが同居しているので127.0.0.1です。fabric_cacheセクションにFabricRoutingという名前のタグを付けました。これが、下のroutingセクションのタグとリンクしています。routingセクションでは、destinationsの書き方が通常のルーティングと異なります。(ほかは同じです)destinationsでは、plugin://section_key/target/group_idの文法でルーティング先を指定します。pluginは、現在のところfabric+cacheプラグインしかないのでこれを指定。section_keyは、先ほどfabric_cacheセクションでつけたタグを指定。targetは、現在のところgroupしかないのでこれを指定。Fabricの高可用性グループ名を指定。今回はglobal_groupを指定しました。・・・要はほとんど考える所はなくて、機械的に指定するだけですね。実際に使ってみましょう。Fabric管理サーバのパスワードが聞かれます。mysqlrouter.iniで指定するとか、mysqlrouterコマンドの引数で渡すとか、なんらかのやり方でパスワードを渡してバックグラウンド実行させたいと思ったんですが、いずれもダメで、このせいでmysqlrouterをバックグラウンド実行させられなくなっています。にわかに信じがたい仕様なので、なんらかのやり方があるが私が気づいていないだけなのでしょう、、、(?)ともかく、今回は別セッションでmysqlrouterコマンドを実行して、その隙に本セッションでクエリを投げる作戦で行こうと思います。Fabricの要素は全くありません。Fabric対応バージョンでなくても機能するでしょう。接続先が127.0.0.1:7003になっているだけです。この接続先が、mysqlrouter.iniファイルで指定したように、global_groupにルーティングされ、global_groupから残りの1st_group、2nd_groupにもレプリケーションされていく、というわけです。sec)残りの3307~3311番MySQLでも同様の結果でした。Fabricの連携が確認できました。Router側で高可用性グループを指定してクエリを飛ばす、ということです。Fabric管理下のサーバに対してクエリを投げられるようになったのは良いですね(まだ検証はしてませんが、仕組み上大丈夫でしょう、、、)。Fabricのシャーディング機能との連携はできません。Routerの設定ファイルでの定義に基づいて機械的に高可用性グループを直に指定してしまうためです。Fabricへの連携はシャーディングができない、という条件付でありながらも一通り確認できました。Routerの有効な使い方についても今後考えてみたいですね。いうわけで、今回はここまでです。AMいつも楽しみに拝見しています。次の更新も宜しくお願い致します。さん楽しみにして頂いているとのこと、ありがとうございます。今後もちょくちょく更新していきたいと思いますので、宜しくお願い致します。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。Ushio駆け出しのMySQLエンジニア。OSSを仕事で扱っています。themehall.com。