KingbaseES V8R6集群部署案例之---脚本部署节点环境检查故障

案例说明:

KingbaseES V8R6集群在部署前会对集群节点系统环境进行检测,检测失败后,将中断部署;其中一个检测项,检测节点上是否已经存在数据库服务。如果已经存在数据库服务,则部署将会中断。

适用版本:

KingbaseES V8R6

一、问题现象

在BMJ环境下,通过脚本部署KingbaseES V8R6集群,检测发现其中一个节点运行数据库服务,导致检测失败,部署终止,如下图所示:

二、问题分析

1、检查失败节点数据库服务状态

如下图所示,实际本节点是一台应用节点,只是连接数据库进行了业务访问,并没有运行数据库服务(无监听数据库端口的进程)。

2、查看脚本检测机制

如下图所示:

1)通过netstat检测数据库服务端口,是否有进程访问。

2)如果访问数据库服务端口的进程数是0,将检测成功。

3)非0,如果是BMJ环境,将执行sys_ctl关闭数据库服务。

4)如果数据库服务关闭失败,将检测失败。

3、执行检测语句

如下图所示,此节点访问数据库端口的进程数非0,没有运行数据库服务(监听数据库端口),此系统为BMJ环境,执行sys_ctl关闭数据库将失败,检测结果失败。

三、问题解决

1、通用机环境

如以下测试,此节点没有运行数据库服务,但是访问了数据库服务,通过netstat检测有两个进程访问数据库服务端口。在检测语句里增加‘grep -i listen'过滤后(监听数据库服务的进程),统计结果将为0,可以通过脚本检测。

[kingbase@node103 bin]$ ./ksql -h 192.168.1.102 -U system test
ksql (V8.0)
Type "help" for help. test=# [kingbase@node103 ~]$ netstat -apn 2>/dev/null|grep -w 54321
tcp 0 0 192.168.1.103:10483 192.168.1.102:54321 TIME_WAIT -
tcp 0 0 192.168.1.103:10484 192.168.1.102:54321 ESTABLISHED 3720/./ksql [kingbase@node103 ~]$ netstat -apn 2>/dev/null|grep -w 54321|wc -l
2
# 检测语句增加‘grep -i listen’
[kingbase@node103 ~]$ netstat -apn 2>/dev/null|grep -w 54321|grep -i listen|wc -l
0

如下图所示,增加对数据库端口监听进程的过滤:(可以修改脚本检测语句通过检测)

2、BMJ环境

由于BMJ环境下,脚本不允许被修改(脚本文件已经被hash认证,修改破坏认证校验),对于此种情况只能在业务访问数据库服务结束后部署,或选择另外干净的节点再部署。

四、总结

在部署集群时,尽量选择无其他业务的节点作为数据库服务器,否则将影响集群正常部署;并且部署后业务负载和数据库服务负载叠加,影响业务访问数据库服务的性能。

KingbaseES V8R6集群部署案例之---脚本部署节点环境检查故障的更多相关文章

  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. java集成华为云obs上传下载实战

    说明 最近项目上需要开发一个服务去和华为云OBS集成获取一些业务上的文件,此处记录一下简单的java集成obs的入门,希望对大家快速入门有所帮助:) 实现效果 上传对象 下载到本地 操作步骤 1.开通 ...

  2. Java集合框架学习(十二) Arrays类详解

    声明:部分内容参考自:https://liuyanzhao.com/2863.html Arrays类介绍 这个类包含了用于操作数组的各种方法,诸如:排序和搜索. 这个类还包含一个静态方法asList ...

  3. 如何在 libevent 中读取超过 4096 字节的数据

    如何在 libevent 中读取超过 4096 字节的数据 bufferevent 是 libevent 中相对高层的封装,较 event 使用起来方便很多. 之前有一个需求,需要从服务端读取数据进行 ...

  4. 突破Windows的极限

    偶然碰到这类技术博客,甚感欣慰,但奈何技术水平达不到,很多都难以理解,故记录在此,用作日后学习. 国内有类似的中文翻译,比如:突破Windows极限:物理内存 但是外文链接已经失效,看不到原汁原味的英 ...

  5. Nacos搭建单机实例

    Nacos是阿里开源的微服务架构组件,既可以用作服务注册中心,也可用作配置中心. 虽然Nacos的官方文档也有关于如何部署的说明,但是个人觉得不够详细和连续,故本文将阐述在单机环境实际搭建Nacos环 ...

  6. 海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储

    前言   Hik防爆摄像头录像,因为防爆摄像头会有对应的APP软件,与普通的网络摄像头和球机不一样,默认认为它不可以通过web网页配置,所以弄了个来实测确认.  经测试实际上也是可以通过web网页配置 ...

  7. 案例分享:Qt高频fpga采集数据压力位移速度加速度分析系统(通道配置、电压转换、采样频率、通道补偿、定时采集、距离采集,导出exce、自动XY轴、隐藏XY轴、隐藏显示通道,文件回放等等)

    需求   1.0-7通道压力采集,采集频率1~100Khz(1,10,20,30-1000Khz):  2.0-7通道压力,可设置补偿值,测量范围:  3.编码器0,1脉冲采集,计算位移,速度,加速度 ...

  8. 【Azure Redis 缓存】Redis导出数据文件变小 / 在新的Redis复原后数据大小压缩近一倍问题分析

    问题描述 使用 Azure Cache for Redis 服务,在两个Redis服务之间进行数据导入和导出测试.在Redis中原本有7G的数据值,但是导出时候发现文件大小仅仅只有30MB左右,这个压 ...

  9. Docker的使用记录

    开始 这是第一个尝试在Leanote上面编写文章,我觉得最重要的事情就是能够保证md文件是能够移植的,否则如果这个软件不靠谱的话,我还能把文章移动到别的地方去.所以先写一篇文章看看效果如何,方便不方便 ...

  10. Ubuntu上文件系统根目录磁盘空间扩充

    今天使用Ubuntu的时候,出现了磁盘根目录空间不足的提示,需要我们对于根目录磁盘空间进行扩充. 1.打开终端输入命令,安装gparted管理器 sudo apt-get install gparte ...