キエンこんにちは、キエンです。先日、ProxySqlの検証について以下のエントリを紹介しました。今回、いこレポの開発環境に実際にProxySQLを導入しましたので、ご紹介します。tech.actindi.net開発環境構成の変更点いこレポの開発環境はDockerで動かしています。変更前と変更後のコンテナはこちらです。データベースの1台だけでproxysqlを導入しても意味がないので、master-slaveの構成も追加しました。Dockerの設定ファイルの構造mysqlのmaster-slave構成まず、MYSQLのレプリケーションについてはこのサイトをおすすめです。qiita.comconfig/docker/mysql/master.cnfmasterノード用のmy.cnfファイルです。バイナリログがトランザクションコミット時に同期書き込みされるconfig/docker/mysql/slave.cnfslaveノード用のmy.cnfファイルです。起動したときにデータの初期化を自動的に行う仕組みがあります。置くことで、slave起動時にslave開始のスクリプトを実行しています。config/docker/mysql/start-slave.shslave開始のスクリプトです。SLAVE'master-slave構成の確認コンテナを起動します。statusを確認します。statusを確認します。statusの結果により、レプリケーションの設定が問題ないですね。念の為、実際にデータを変更することも確認します。データ変更前に、masterノードとslaveノードのデータを確認する。|+-------+---------------------+問題ないですね、master-slave構成の確認が完了しました。次に、ProxySQLを導入しましょう。allDockerで設定ファイルに環境変数を埋め込むため、gettextもインストールしました。インストール後、envsubstコマンドが使えるようになります。ProxySQL設定は設定ファイルまたはMySQL互換の管理インターフェイスから設定できますので、今回は両方の方法も試しました。設定ファイル使用の場合config/docker/proxysql/proxysql-cnf.templateProxySQL用の設定ファイルです。mysql-slaveWRITER_HOSTとREADER_HOSTはmysql-masterとmysql-slaveを設定します。ProxySQLを起動して、管理インタフェースで確認しましょう。管理インタフェースで設定ファイルから設定が反映されるか確認します。|+---------+------------------------+-----------------------+statsとmonitorから接続状況なども確認します。|+--------------+------+------------------+-----------------+-----------+-------+設定ファイルから設定がうまく行っていますね。次は、管理インタフェースから設定方法を試します。RUNTIME;docker-compose.yml上記の「設定ファイル使用の場合」で設定したdocker-compose.ymlはvolumesとcommandだけを変更します。/var/lib/proxysql/proxysql.log"config/docker/proxysql/start-proxysql.shProxySQLを起動と設定スクリプトです。/var/lib/proxysql/init.sql「設定ファイル使用の場合」と同様、ProxySQLの動作を確認しました。6033Railsを再起動してから、いこレポは無事に表示できました。Serverに有効しましょう。Server有効の設定を追加します。Serverのデフォルトポートは6080です。デフォルトのアクセスアカウントはstats:statsです。Serverの確認こちらのURLをアクセスします。http://0.0.0.0:6080/以下の画面が確認できますよ。機能がまだ多くないですが、便利ですね。最後にいかがでしょうか。いこレポの開発環境にProxySQLを無事に導入しましたが、本番環境まで反映するのはまだまだいろんな検証がありますね。アクトインディではエンジニアを募集していますね、ぜひご応募してください。08:15いこレポの開発環境にProxySQL導入してみたTweet関連記事2019-09-19ProxySQL入門、ProxySQLでDBサーバーの負荷分散とAuroraの高速フェイルオーバーに...こんにちは、キエンです。newしてみましたこんにちは。Webエンジニアのnakamuraです。(9)スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。