开启HA情况下manager启动失败排查方法

  无法启动, 服务异常
内容纲要

概要说明

开启HA情况下,manger启动最大的不同是使用的数据库变成了txsql,所以只要保证txsql正常了,其他部分还是用普通的排查方案即可

详细说明


开始之前首先确定是否有开启manager HA :

cat /etc/transwarp-manager/master/application.conf  | grep -i ha.enabled

1、开启HA之后不再需要mariadb

如果Manager开启了HA,需要半数以上的Manager服务保持开启状态,请到其他节点上检查Manager服务的状态,如果停止,请启动Manager服务,再尝试访问8180页面。

开启了HA之后,就不再需要mariadb了,而是使用txsql,但是代码中却忘记了修改,导致的结果是:开了HA之后,每次重启manager,还是会尝试连接d

所以,如果开了HA,重启manger时候出现了db启动失败,可以修改/etc/init.d/transwarp-manager文件

把下面这段内容注释掉:

/etc/init.d/transwarp-manager-db start

    if [ $? -ne 0 ]; then

        echo "[FAILED] start database failed!"

        echo "check /var/log/transwarp-manager/master/mysql/transwarp-manager-db.log to see details"

        exit ${STATUS_OTHER_ERROR}

    fi

这样只要manager-txsql正常manager就可以提供服务,至于mariadb,可以在有空的时候再去寻找启动失败原因

2、验证manager HA 各个角色的容器是否正常

连接txsql数据库的指令是:

mysql -u transwarp -P3366 -p$password  -h  $hostname

验证manager用到的txsql状态的命令是 docker ps a | grep Manager,这样就可以列出所有HA相关的continer,其中最主要的是manager-zookeeper跟manager-txsql

PS: zookeeper /txsql一般都会有三个节点,要保证全部健康

重启容器方法是: txsql节点上执行docker restart Manager-TxSQL

如果重启还是不行,就需要专业的技术支持了

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。