Ubuntu 16.04
 

Pen : MariaDB を負荷分散する
2016/06/12
 
Pen による MariaDB の負荷分散の設定です。
例として、2台の MariaDB バックエンドへ負荷分散するように設定します。
       |
-------+-----------------------------------------------
       |
       +-------------------+--------------------+
       |10.0.0.30          |10.0.0.51           |10.0.0.52
 +-----+------+    +-------+------+     +-------+------+
 |  Frontend  |    |   Backend#1  |     |   Backend#2  |
 | Pen Server |    |    MariaDB   |     |    MariaDB   |
 +------------+    +--------------+     +--------------+

[1] Pen の設定です。起動スクリプト作成等の基本設定はこちらを参照してください。
root@dlp:~#
vi /etc/pen.conf
# 新規作成

LOGFILE=/var/log/pen.log
WEBFILE=/var/www/html/pen/webstats.html
MAX_CONNECTIONS=256
ROUNDROBIN=true
# 待ち受けポート

PORT=3306
# バックエンドサーバーの数

BACKEND=2
# バックエンドサーバーを定義

SERVER1=10.0.0.51:3306
SERVER2=10.0.0.52:3306
root@dlp:~#
systemctl restart pen

[2] 任意のクライアントから、Pen サーバー宛てに MariaDB 接続し、正常に負荷分散されるか確認してください。 以下の例では、MariaDB サーバーの keystone データベースへ keystone ユーザーで接続し、table01 を select しています。 何度か接続するとバックエンドが切り替わり、正常に負荷分散できていることが分かります。
root@desktop:~#
mysql -u keystone -p -h 10.0.0.30 keystone -e "select * from table01;"

Enter password:
+------+-------------------+
| id   | name              |
+------+-------------------+
|    1 | db01.srv.world    |
+------+-------------------+

root@desktop:~#
mysql -u keystone -p -h 10.0.0.30 keystone -e "select * from table01;"

Enter password:
+------+-------------------+
| id   | name              |
+------+-------------------+
|    1 | db02.srv.world    |
+------+-------------------+
 
Tweet