2018年5月24日木曜日

プロキシMySQL :: HAproxy || ProxySQLとKeepAlived


だからあなたのMySQLトラフィックをルーティングする場合、いくつかのオプションが存在します。 

今私はHAproxyがクライアントとより頻繁に使用されるのを見てきましたが、設定するのはかなり簡単です。 Perconaには興味のある人の例があります:

個人的に私はProxySQLが好きです。 Perconaにもこれに関するブログはほとんどありません
PerconaにもProxySQLバージョンがあります

私はいくつかの例を書いてみることを考えていましたが、ペルコナ全体がそれをとてもうまく説明しました。 私はそれらの投稿から何かを取り除きたくない、代わりにそれらのURLを介して多くの良い情報が利用可能であることを指摘する。 だからすでに書かれたものを書き換えるのではなく、私は興味のある人のための情報のコレクションを作成します。

最初に自分が必要と望むものを比較して決定します。 以下のリンクはもちろん、ProxySQLに偏っていますが、全体的な検討範囲が与えられます。
クラスタやマスターをマスタリングしていて、どのサーバーに接続していても、書き込みと読み取りがどちらになるかは気にしません。 HAproxyはシンプルな設定が可能です。

ProxySQLの特典は、トラフィックを簡単に重み付けして並べ替えることができます。 したがって、書き込みをノード1に行って、ノード2とノード3からプルを選択することができます。これに関するドキュメントは、次の場所にあります。
はい、HAproxyで実行できますが、それに応じてアプリケーションに指示する必要があります。
これは、クエリルールに基づいてProxySQLで処理されます。

今ここで明らかな質問:はい、どのようにProxySQLを単一障害点にしないようにしますか?

あなたは堅牢なロードバランサやetcなどを投資することができます。ハードウェアを投げてください....または自分で簡単にしてオープンソースをサポートし、 KeepAliveを使用してください。 これは設定が非常に簡単で、そのすべてがここでもうまく文書化されています:
あなたがluaとmysql-proxyを扱ったことがあるならば、ProxySQLとKeepalivedは非常に簡単です。 それでも何らかの理由でそれが必要な場合: https : //launchpad.net/mysql-proxy

HAproxy、ProxySQL、または別のソリューションを選択した場合でも、単一障害点を別の障害点に置き換えないようにする必要があります。 あなたがプロキシを使用している場合、これをしない理由はほとんどありません。

ProxySQLについてもう少し詳しく説明します。

http://anothermysqldba.blogspot.com/2018/05/proxy-mysql-haproxy-proxysql-keepalived.html