暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PTK安装MogDB和MogHA常见问题解决

由迪 2023-12-20
229

原作者:桑凯

适用范围

受此问题影响的PTK版本。

[root@mogdbv3m1 ~]# ptk version
PTK Version: v0.4.7
Go Version: go1.17.1
Build Date: 2022-10-24T07:35:12Z
Git Hash: f3222aa

问题概述

在一套一个从和主库同AZ,另一个从在第二AZ的MogDB架构下,使用PTK安装MogHA会出现无法完成高可用切换的现象。

具体表现为:

  1. 同AZ主库宕机,备库无法转换为新的主库,VIP无法转移到新主库主机下。
  2. 主AZ机房两个库宕机后,备AZ从库,无法选出新主。

PTK Install MogDB 模板参数文件如下,架构为一个从和主库同AZ,另一个从在另外一个AZ。

global:
  cluster_name: skyclsha
  user: omm
  group: omm
  db_password: pTk6NDVlN2VkNWQ8RDxAPUJAPWhPenAwdWt5bUlRTTRXVTF6d3F2T2J4MHR4VGtSZXpmV3FMcVNsQVhuTFk=
  db_port: 26000
  base_dir: /opt/mogdb
  cm_server_port: 15300
db_servers:
- host: 192.168.5.40
  role: primary
  az_name: AZ1
  az_priority: 1
- host: 192.168.5.41
  role: standby
  az_name: AZ1
  az_priority: 1
  ssh_option:
    port: 22
    user: root
    password: pTk6NTk1NDcyZmE8RDxAPUJAQWRsNHlPQldtTGFpQktPUk1SWmpla1VzOEo3ZVBMTFhXNjJQSUx5b3NuWnM=
- host: 192.168.5.42
  role: standby
  az_name: AZ2
  az_priority: 2 
  ssh_option:
    port: 22
    user: root
    password: pTk6NTk1NDcyZmE8RDxAPUJAQWRsNHlPQldtTGFpQktPUk1SWmpla1VzOEo3ZVBMTFhXNjJQSUx5b3NuWnM=

问题原因

当使用如下命令进行安装,由于配置文件中缺少ping_list参数,导致备库没法判断主是否孤单,且PTK安装的MogHA 2.3.6版本bug导致同AZ备库和异AZ备库无法选主。

ptk cluster -n skyclsha install-mogha -d /opt/mogdb/mogha -c  mogha.yaml

mogha.yaml配置文件内容

# docs: https://docs.mogdb.io/zh/mogha/v2.3/overview
[config]
db_port=26000
db_user=omm
db_datadir=/opt/mogdb/data
primary_info=/opt/mogdb/mogha/primary_info
standby_info=/opt/mogdb/mogha/standby_info
lite_mode=false
agent_port=8081
http_req_timeout=3
heartbeat_interval=3
primary_lost_timeout=10
primary_lonely_timeout=10
double_primary_timeout=10
meta_file_type=json
logger_format=%(asctime)s %(levelname)s [%(filename)s:%(lineno)d]: %(message)s
log_dir=/opt/mogdb/mogha
log_max_size=512MB
log_backup_count=10
allow_ips=
handle_down_primary=true
handle_down_standby=true
primary_down_handle_method=restart
restart_strategy=10/3
debug_mode=false

[host1]
ip=192.168.5.40
heartbeat_ips=
[host2]
ip=192.168.5.41
heartbeat_ips=
[host3]
ip=192.168.5.42
heartbeat_ips=

[zone1]
vip=192.168.5.44
hosts=host1,host2
ping_list=
cascades=
arping=
[zone2]
vip=192.168.5.45
hosts=host3
ping_list=
cascades=
arping=

解决方案

1、在mogha.yaml中配置ping_list,ping_list 设置为AZ机房mogdb服务器的网关地址。

2、手工升级MogHA到2.3.8以上版本。

参考文档

ptk

mogdb

mogha**

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论