cxin 发表于 2018-12-30 12:30:41

MySQL双主双活+Keepalived高可用方案关建配置点

  一、在两台服务器上分别安装MySQL实例
  Mysql01:192.168.0.207
  Mysql02:192.168.0.208
  vip1:192.168.0.211
  vip2:192.168.0.212
  (略)
  二、在两台服务器上配置主主复制
  GRANT REPLICATION SLAVE ON *.* TO 'dba_repl'@'192.168.0.%' IDENTIFIED BY '123456';
  

  change master to MASTER_HOST='192.168.0.207',
  MASTER_USER='dba_repl',
  MASTER_PASSWORD ='123456',
  MASTER_LOG_FILE = 'mysql-bin.000003',
  MASTER_LOG_POS = 120
  ;
  三、配置keepalived,这个方案的关键点在于keepalived的配制,两个vrrp_instance在两个主上的优先级相反。
  MySQL01:
  global_defs {
  # Keepalived process identifier
  lvs_id MySQL_HA
  }
  # Script used to check if Proxy is running
  vrrp_script check_proxy {
  script "killall -0 mysql"
  interval 2
  weight 3
  }
  # Virtual interface 1
  # The priority specifies the order in which the assigned interface to take over in a failover
  vrrp_instance VI_01 {
  state MASTER
  interface eth0
  virtual_router_id 51
  priority 100
  # The virtual ip address shared between the two loadbalancers
  virtual_ipaddress {
  192.168.0.211 dev eth0
  }
  track_script {
  check_proxy
  }
  }
  # Virtual interface 2
  # The priority specifies the order in which the assigned interface to take over in a failover
  vrrp_instance VI_02 {
  state MASTER
  interface eth0
  virtual_router_id 52
  priority 102
  # The virtual ip address shared between the two loadbalancers
  virtual_ipaddress {
  192.168.0.212 dev eth0
  }
  track_script {
  check_proxy
  }
  }
  主二:
  global_defs {
  # Keepalived process identifier
  lvs_id MySQL_HA
  }
  # Script used to check if Proxy is running
  vrrp_script check_proxy {
  script "killall -0 mysql"
  interval 2
  weight 3
  }
  # Virtual interface 1
  # The priority specifies the order in which the assigned interface to take over in a failover
  vrrp_instance VI_01 {
  state MASTER
  interface eth0
  virtual_router_id 51
  priority 102
  # The virtual ip address shared between the two loadbalancers
  virtual_ipaddress {
  10.103.9.211 dev eth0
  }
  track_script {
  check_proxy
  }
  }
  # Virtual interface 2
  # The priority specifies the order in which the assigned interface to take over in a failover
  vrrp_instance VI_02 {
  state MASTER
  interface eth0
  virtual_router_id 52
  priority 100
  # The virtual ip address shared between the two loadbalancers
  virtual_ipaddress {
  192.168.0.212 dev eth0
  }
  track_script {
  check_proxy
  }
  }
  

MySQL课程推荐
   MySQL性能管理及架构设计
   高性能可扩展MySQL数据库设计及架构优化 电商项目
  




页: [1]
查看完整版本: MySQL双主双活+Keepalived高可用方案关建配置点