ขั้นตอนการติดตั้ง MariaDB MaxScale บน CentOS 7
MariaDB MaxScale เป็นโปรแกรม Database Proxy รายละเอียดเพิ่มเติมติดตามได้จากลิงค์นี้ https://mariadb.com/products/technology/maxscale ดาวน์โหลดได้จาก https://mariadb.com/downloads/mariadb-tx/maxscale การทำงานของ MariaDB MaxScale ทำงานร่วมกับ MariaDB Replication หรือ MariaDB Galera Cluster ดังภาพ
ซึ่งถ้าเรามี MariaDB Replication หรือ MariaDB Galera Cluster อยู่แล้ว ก็สามารถติอตั้ง MariaDB MaxScale บนเซิร์ฟเวอร์อีกเครื่องได้เลย สำหรับเรื่อง MariaDB Galera Cluster ผมได้เขียนเอาไว้ก่อนนี้แล้ว เป็นเวอร์ชัน 10.1 ปัจจุบันเป็น 10.3 ก็ยังใช้งานได้อยู่ ดังลิงค์นี้ MariaDB Galera Cluster 10.1 บน CentOS 7 ถ้ามี Cluster อยู่แล้ว ก็ทดลองติดตั้ง MariaDB MaxScale ดังขั้นตอนการติดตั้ง MariaDB MaxScale บน CentOS 7 ต่อไปนี้
การติดตั้งของผม
192.168.8.40 –> MariaDB MaxScale
192.168.8.41–>MariaDB Galera Cluster node 1
192.168.8.42–>MariaDB Galera Cluster node 2
192.168.8.43–>MariaDB Galera Cluster node 3
ที่เครื่อง 192.168.8.41 ให้ใช้คำสั่ง MariaDB ดังนี้ (มีผลกับทุก Node)
MariaDB [(none)]> create user 'sothorn'@'192.168.8.40' identified by '123456'; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> GRANT SELECT ON mysql.db TO 'sothorn'@'192.168.8.40'; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> GRANT SELECT ON mysql.tables_priv TO 'sothorn'@'192.168.8.40'; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> GRANT SHOW DATABASES ON *.* to 'sothorn'@'192.168.8.40'; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> GRANT REPLICATION SLAVE on *.* to 'sothorn'@'192.168.8.40'; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> GRANT REPLICATION CLIENT on *.* to 'sothorn'@'192.168.8.40'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> FLUSH PRIVILEGES: MariaDB [(none)]>
อีกคำสั่ง ไว้ทดสอบเวลาคอนฟิกเสร็จ
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO sothorn2@"%" IDENTIFIED BY '123456' WITH GRANT OPTION; MariaDB [(none)]> FLUSH PRIVILEGES;
ที่เครื่อง 192.168.8.40
ดาวน์โหลด MariaDB MaxScale ได้ที่ https://mariadb.com/downloads/mariadb-tx/maxscale
ได้ไฟล์มา ชื่อ maxscale-2.2.9-1.rhel.7.x86_64.rpm ติดตั้งด้วยคำสั่ง
rpm -Uvh maxscale-2.2.9-1.rhel.7.x86_64.rpm
ติดตั้ง MariaDB-client เวอร์ชันเดียวกันกับที่ติดตั้ง Cluster ไม่ต้องติดตั้งตัว MariaDB-server
yum install MariaDB-Client
ก่อนที่จะเริ่มคอนฟิกให้ใช้คำสั่งเหล่านี้เพื่อ encrypt รหัสผ่าน เพื่อเอารหัสผ่านที่ได้ไปใส่ในไฟล์คอนฟิก
[root@maxscale ~]# maxkeys Generating .secrets file in /var/lib/maxscale. [root@maxscale ~]# maxpasswd /var/lib/maxscale 123456 1465DD0D57A13216EF1EAF65B63A14F6 [root@maxscale ~]# chown maxscale:maxscale /var/lib/maxscale/.secrets
เริ่มคอนฟิกกันเลยครับ ไฟล์คอนฟิกของ Maxscale อยู่ที่ /etc/maxscale.cnf
ดาวน์โหลด จากที่นี่ แล้วปรับแก้ให้ตรงกับที่คอนฟิก
แก้ไขไฟล์เสร็จก็
systemctl start maxscale.service
ถ้า start ได้สำเร็จ ให้ทดลองเชื่อมต่อฐานข้อมูลไปยัง 192.168.8.40
หรือทดลองเข้าใช้งาน MariaDB จากโฮสอื่นๆ
อ้างอิง
- https://mariadb.com/products/technology/maxscale
- https://mariadb.com/resources/blog/getting-started-mariadb-galera-and-mariadb-maxscale-centos
- https://mariadb.com/kb/en/mariadb-enterprise/mariadb-maxscale-20-maxscale-connection-routing-with-galera-cluster/