기본 계정은 admin/mariadb
maxscale.cnf 구성 파일 설정에 의한 데이터베이스 클러스터 가시화한다.
[maxscale]
admin_secure_gui=false
threads=auto
maxlog=true
syslog=true
logdir=/var/log/maxscale/
log_debug=true
admin_host=0.0.0.0
[server1]
type=server
address=mariadb-0.mariadb.default.svc.cluster.local
port=3306
protocol=MariaDBBackend
[server2]
type=server
address=mariadb-1.mariadb.default.svc.cluster.local
port=3306
protocol=MariaDBBackend
[server3]
type=server
address=mariadb-2.mariadb.default.svc.cluster.local
port=3306
protocol=MariaDBBackend
[RW-Split-Router]
type=service
router=readwritesplit
servers=server1,server2,server3
user=repl
password=secret
[RW-Split-Listener]
type=listener
service=RW-Split-Router
protocol=MariaDBClient
port=3306
[MariaDB-Monitor]
type=monitor
module=mariadbmon
servers=server1,server2,,server3
user=repl
password=secret
auto_failover=true
auto_rejoin=true
GTID 칼럼은 Master와 Slave의 데이터 동기화 상태를 나타낸다. 트랜잭션 건 수당 1씩 증가하며, Master에서 먼저 반영되고 비동기로 Slave에 반영된다.
반영을 위한 지연 시간은 기본적으로 0초이며, 변경 시 해당 시간 후에 Slave로 동기화가 진행된다.
Master와 Slave의 상태 정보를 보여준다. show master status;
와 show slave status\G;
명령어 수행에 대한 결과를 화면에서 볼 수 있다.
MariaDB Monitor는 데이터베이스 서버 인스턴스의 상태를 주기적으로 모니터링하여, 이상이 발견될 시 Master를 변경한다.
클러스터 내의 데이터베이스 인스턴스 각각에 대한 접속 후 SQL 실행이 가능한 편집창을 제공한다. 인스턴스 변경 마다 새로운 연결 정보를 입력해서 재연결해야 한다.
Master 서버를 지정하여 변경할 수 있다.
읽기와 쓰기에 대한 응답 시간과 건수를 막대 그래프로 보여준다. 트랜잭션 상 읽기는 Master로 보내준다.
테이블 정보를 가시화해서 보여준다.
소스 데이터베이스를 지정하여, 현재의 클러스터 내 데이터베이스 인스턴스 중 하나로 데이터마이그레이션이 가능하다. 기본적으로 ODBC 드라이버가 빠져 있는데, MaxScale의 이미지를 받아 ODBC 설치 후 커스텀 이미지로 빌드해야 드라이버가 올라온다. 이 과정에서 기존 350 MB 정도의 이미지 크기가 1.2GB 로 대폭 늘어난다. 경량의 데이터베이스 프록시를 운영할 계획이라면 ODBC기능은 사용 않는편이 낫다. 데이터마이그레이션은 테이블를 지정하여 오브젝트 단위로 마이그레이션이 가능하다. 하지만, 전체 오브젝트를 대상으로 마이그레이션 시도 시 속도가 매우 느려지는 점 참조해야 한다.