案例说明:

在openEuler系统下通过脚本方式部署KingbaseES V8R6集群,脚本执行过程中,加载vip失败。本次故障问题,主要是因为openEuler系统shell和脚本的不兼容引起。

适用版本:

KingbaseES V8R6

系统环境:

openEuler-22.03-LTS

一、问题现象

通过脚本方式部署KingbaseES V8R6集群,脚本执行过程,提示“ vip无法加载”。

二、问题分析

1、查看install.conf配置(vip相关配置)

[kingbase@node101 ~]$ cat install.conf |grep -v ^#|grep -v ^$
[install]
on_bmj=0
all_ip=(172.31.*.27 172.31.*.28 172.31.*.29)
.....
virtual_ip="172.31.*.121/24"
net_device=(ens33 ens33 ens33)
net_device_ip=(172.31.*.27 172.31.*.28 172.31.*.29)
ipaddr_path="/usr/sbin"
arping_path="/home/kingbase/cluster/kingbase/bin"
ping_path="/usr/bin"
....... 如上所示,和vip相关的配置正确。

2、查看故障日志

如下图所示,在测试vip地址是否已被占用(ping)测试,返回的变量值为空。

3、分析部署脚本'vip Cannot use'的原因

如下图所示,脚本通过ping vip和当前主机是否已经加载vip来判断vip地址是否被占用,当ping返回的结果非0,而且vip已经被加载,将提示 ’vip Cannot use‘错误。

4、执行ping测试

1)CentOS系统测试

如下图所示,对ip地址执行ping测试,可ping通地址返回结果非0,没有被使用的ip,无法ping通返回0。

2)openEuler系统测试

如下图所示,在openEuler测试,ping不通的ip返回空值。

如下图所示,系统执行ping测试后返回的提示为中文,而脚本是通过英文‘received’过滤,因此返回空值。

经过多次测试,需要将语句改为如下:(返回0)

三、问题解决

1、修改部署脚本判断vip是否被占用ping语句,如下图所示:

2、执行部署脚本,部署成功。

四、问题总结

此次部署问题,是由openEuler系统shell和脚本部分语句部兼容引起:

1、系统提示,显示为中文,脚本语句通过英文单词执行过滤,过滤失败。
2、grep中‘-w’参数,中文支持问题。-w,按照单词过滤,在系统提示‘已接收’,用-w ‘接收’无法过滤。
3、 2>/dev/null,对于语句执行错误的提示写入到/dev/null,对于CentOS系统,能返回ping结果,但是openEuler将不再返回ping结果。 在一些比较特殊的操作系统,通过脚本部署时,要注意shell的兼容性。

KingbaseES V8R6集群部署案例之---openEuler系统脚本部署故障的更多相关文章

  1. KingbaseES V8R6集群维护案例之---停用集群node_export进程

    案例说明: 在KingbaseES V8R6集群启动时,会启动node_exporter进程,此进程主要用于向kmonitor监控服务输出节点状态信息.在系统安全漏洞扫描中,提示出现以下安全漏洞: 对 ...

  2. KingbaseES V8R6集群维护案例之--修改securecmdd工具服务端口

    案例说明: 在一些生产环境,为了系统安全,不支持ssh互信,或限制root用户使用ssh登录,KingbaseES V8R6可以使用securecmdd工具支持主机之间的通讯.securecmdd工具 ...

  3. KingbaseES V8R6集群维护案例之---将securecmdd通讯改为ssh案例

    案例说明: 在KingbaseES V8R6的后期版本中,为了解决有的主机之间不允许root用户ssh登录的问题,使用了securecmdd作为集群部署分发和通讯的服务,有生产环境通过漏洞扫描,在88 ...

  4. KingbaseES V8R6集群维护案例之--单实例数据迁移到集群案例

    案例说明: 生产环境是单实例,测试环境是集群,现需要将生产环境的数据迁移到集群中运行,本文档详细介绍了从单实例环境恢复数据到集群环境的操作步骤,可以作为生产环境迁移数据的参考. 适用版本: Kingb ...

  5. KingbaseES V8R6集群维护之--修改数据库服务端口案例

    ​ 案例说明: 对于KingbaseES数据库单实例环境,只需要修改kingbase.conf文件的'port'参数即可,但是对于KingbaseES V8R6集群中涉及到多个配置文件的修改,并且在应 ...

  6. KingbaseES V8R6集群运维案例之---repmgr standby promote应用案例

    案例说明: 在容灾环境中,跨区域部署的异地备节点不会自主提升为主节点,在主节点发生故障或者人为需要切换时需要手动执行切换操作.若主节点已经失效,希望将异地备机提升为主节点. $bin/repmgr s ...

  7. KingbaseES V8R6集群管理运维案例之---repmgr standby switchover故障

    案例说明: 在KingbaseES V8R6集群备库执行"repmgr standby switchover"时,切换失败,并且在执行过程中,伴随着"repmr stan ...

  8. kingbaseES V8R6集群备份恢复案例之---备库作为repo主机执行物理备份

    ​ 案例说明: 此案例是在KingbaseES V8R6集群环境下,当主库磁盘空间不足时,执行sys_rman备份,将集群的备库节点作为repo主机,执行备份,并将备份存储在备库的磁盘空间. 集群架构 ...

  9. KingbaseES V8R6集群外部备份案例

    案例说明: 本案例采用sys_backup.sh执行物理备份,备份使用如下逻辑架构:集群采用CentOS 7系统,repo采用kylin V10 Server. 一主一备+外部备份 此场景为主备双机常 ...

  10. KingbaseES V8R3集群维护案例之---在线添加备库管理节点

    案例说明: 在KingbaseES V8R3主备流复制的集群中 ,一般有两个节点是集群的管理节点,分为master和standby:如对于一主二备的架构,其中有两个节点是管理节点,三个数据节点:管理节 ...

随机推荐

  1. 【Unity3D】拖尾TrailRenderer

    1 TrailRenderer 简介 ​ TrailRenderer 组件用于实现拖尾效果,可以调整拖尾颜色.时长.宽度等属性,其属性面板如下: Materials:拖尾材质,最好设置为 Defaul ...

  2. 【Android逆向】反调试绕过

    1. 拿到52pojie的反调试挑战apk 链接: https://www.52pojie.cn/thread-742686-1-1.html 的附件中 2. 项目进行安装,点开app,同时挑战成功, ...

  3. 如何配置WebStorm开发Chrome插件项目

    开发Chrome插件项目,在调用Chrome的相关接口时,默认情况下WebStorm是不会有任何提示的,这对于开发者特别是新手特别不友好. 因此,需要IDE能支持Chrome接口调用时的智能提示. 如 ...

  4. 前端保存JWT的使用方法

    我们可以将JWT保存在cookie中,也可以保存在浏览器的本地存储里,我们保存在浏览器本地存储中 浏览器的本地存储提供了sessionStorage 和 localStorage 两种,从属于wind ...

  5. 【LeetCode字符串#02】替换空格+IP地址无效化,reserve和resize的区别分析

    替换空格 力扣题目链接(opens new window) 请实现一个函数,把字符串 s 中的每个空格替换成"%20". 示例 1: 输入:s = "We are hap ...

  6. [Linux] ubuntu系统使用zfs记录

    关于zfs 之前从B站视频里面了解到了btrfs这个文件系统,说是能够实现cow,然后我第一时间觉得这是个极好的特性,结果后来才发现,使用的时候并不多,而且只能通过cp --reflink的方式使用, ...

  7. opencv库图像基础4绘图-python

    opencv库图像基础4绘图-python 1.绘画线条和简单图形 创建颜色字典和一个画布 import cv2 import numpy as np import matplotlib.pyplot ...

  8. 在本地搭建 SVN 教程

    SVN 使用教程 以下内容参考自:SVN使用详细教程_大梦谁先觉i的博客-CSDN博客_svn使用教程 一.SVN 安装 1.1 软件下载 服务器:Downloads | VisualSVN 客户端: ...

  9. Docker:Failed to copy files, no space left on device

    主页 个人微信公众号:密码应用技术实战 个人博客园首页:https://www.cnblogs.com/informatics/ 问题描述 在Mac上进行docker构建时,偶尔会遇到以下问题 Fai ...

  10. 摆脱鼠标系列 - Alt + N 快速切换vscode多个项目 - HotKeyP

    摆脱鼠标系列 - Alt + N 快速切换vscode多个项目 用的软件是 HotKeyP 打开软件选择vscode vscode里面的 project那个插件也很好,但是需要打开vscode以后,这 ...