[MXS-2054] Routing to MariaDB Server and MariaDB ColumnStore from MaxScale Created: 2018-09-17  Updated: 2018-10-04  Resolved: 2018-10-03

Status: Closed
Project: MariaDB MaxScale
Component/s: namedserverfilter
Affects Version/s: None
Fix Version/s: 2.2.16

Type: Task Priority: Major
Reporter: Dipti Joshi (Inactive) Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None

Sprint: MXS-SPRINT-67

 Description   

Test following

(1) Cluster 1 - MariaDB Master/Slave or Galera Cluster - Server1, Server2, Server3
(2) Cluster 2 - MAriaDB ColumnStore - UM1, UM2 (and PM1, PM2, PM3)

(3) MaxScale configured with

  • A service using read-write split router and named server filter.
  • In this service servers=Server1,Server2,Server3,UM1,UM2
  • In named server filer certain regex pattern go to Server1,Server2,Server3, another regex pattern go to UM1, UM2
  • A mariadbmon or galeramon monitor with servers=Server1,Server2,Server3 (note no UM1, UM2 here)
  • Manually set UM1 and UM2's server status in MaxScale via MaxCtrl or maxadmin to "slave"

Now send queries from client - verify that regex pattern configured to go to Server1,Server2,Server3 do route to Server1,Server2,Server3 in read-write split manner, and regex pattern configured to go to UM1, and UM2 do route to UM1,UM2

An example config file to be attached later on to this Jira



 Comments   
Comment by markus makela [ 2018-10-01 ]

Possible configuration for a test case:

[maxscale]
threads=###threads###
 
[server1]
type=server
address=###node_server_IP_1###
port=###node_server_port_1###
protocol=MySQLBackend
weight=1
 
[server2]
type=server
address=###node_server_IP_2###
port=###node_server_port_2###
protocol=MySQLBackend
weight=1
 
[server3]
type=server
address=###node_server_IP_3###
port=###node_server_port_3###
protocol=MySQLBackend
weight=0
 
[server4]
type=server
address=###node_server_IP_4###
port=###node_server_port_4###
protocol=MySQLBackend
weight=0
 
[MySQL Monitor]
type=monitor
module=mysqlmon
# Note that server3 and server4 are not monitored
servers=server1,server2
user=maxskysql
password=skysql
monitor_interval=1000
 
[hybridizer]
type=filter
module=namedserverfilter
match03=test[.]t3
target03=server3
match04=test[.]t4
target04=server4
 
[RW Split Router]
type=service
router=readwritesplit
servers=server1,server2,server3,server4
user=maxskysql
password=skysql
filters=hybridizer
weightby=weight
 
[RW Split Listener]
type=listener
service=RW Split Router
protocol=MySQLClient
port=4006
 
[CLI]
type=service
router=cli
 
[CLI Listener]
type=listener
service=CLI
protocol=maxscaled
socket=default

Comment by markus makela [ 2018-10-03 ]

Added a test case that emulates hybrid clusters being used with readwritesplit and namedserverfilter.

Generated at Thu Feb 08 04:11:21 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.