kingbaseES V8R3集群运维案例之---集群部署前后ssh端口修改
kingbaseES V8R3集群运维案例之---集群部署前后ssh端口修改
案例说明:
kingbaseES V8R3集群部署读写分离的集群是使用ssh的默认端口(22)部署,当改为非默认端口时,在部署中或部署后会因kingbasecluster脚本ssh的连接而失败,现提出以下解决方案。
适用版本:
KingbaseES V8R3
1、系统修改ssh监听端口
[root@node102 ~]# cat /etc/ssh/sshd_config|grep -i port
# If you want to change the port on a SELinux system, you have to tell
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
Port 2222
[root@node102 ~]# cat /etc/services |grep ssh
ssh 2222/tcp # The Secure Shell (SSH) Protocol
ssh 2222/udp # The Secure Shell (SSH) Protocol
重启sshd服务或主机后,ssh连接的端口会改为指定端口。
验证ssh互信:

2、部署kingbasecluster(修改ssh端口)

如上图所示,修改ssh端口为指定端口(如2222)。
3、部署kingbasecluster出现错误

查看" /home/kingbase/cluster/kha/log/cluster.log"日志,可以获取ssh通讯错误信息。
4、修改kingbasecluster部署脚本(ssh通讯)(在所有node上完成)

以上脚本分别位于集群安装目录的(db/bin和kingbasecluster/bin)目录下:
[kingbase@srv1 bin]$ pwd
/home/kingbase/cluster/kha/db/bin
[kingbase@srv1 bin]$ ls -lh *.sh
-rwxrwxr-x 1 kingbase kingbase 13K 9月 15 20:25 all_monitor.sh
-rwxr-xr-x 1 kingbase kingbase 2.9K 6月 21 17:30 change_vip.sh
-rwxr-xr-x 1 kingbase kingbase 2.8K 6月 21 17:30 esHAmodel.sh
-rwxr-xr-x 1 kingbase kingbase 8.6K 6月 21 17:30 kingbase_checkpoint.sh
-rwxr-xr-x 1 kingbase kingbase 14K 9月 15 20:25 kingbase_monitor.sh
-rwxr-xr-x 1 kingbase kingbase 8.4K 6月 21 17:30 kingbase_promote.sh
-rwxr-xr-x 1 kingbase kingbase 46K 9月 15 20:25 network_rewind.sh
-rwxr-xr-x 1 kingbase kingbase 5.4K 6月 21 17:30 sync_async.sh
-rwxr-xr-x 1 kingbase kingbase 8.2K 6月 21 17:30 timingbackup.sh
[kingbase@srv1 bin]$ pwd
/home/kingbase/cluster/kha/kingbasecluster/bin
[kingbase@srv1 bin]$ ls -lh *.sh
-rwxrwxr-x 1 kingbase kingbase 13K 9月 15 20:26 all_monitor.sh
-rwxrwxr-x 1 kingbase kingbase 15K 9月 15 20:26 failover_stream.sh
-rwxrwxr-x 1 kingbase kingbase 26K 6月 20 15:49 restartcluster.sh
用vi编辑器替换脚本中的ssh命令语句,如下所示:(其中2222为ssh通讯端口)。

Tips:
在所有node上,替换完成后需做以下操作后,才能继续完成部署。
5、删除备库目录,重新创建备库"data"目录并授权
因为在部署kingbasecluster之前database已经部署完成,修改完脚本后会重新部署数据库,如果备库data目录存在,在做sys_basebackup时会报错,备库创建失败。如下图所示:

所以需要手工删除备库data目录,重新通过sys_basebackup创建备库:

备库执行以下操作:
[kingbase@srv2 db]$ rm -rf data
[kingbase@srv2 db]$ mkdir data
[kingbase@srv2 db]$ chmod 700 data
重新创建备库目录后,点击“继续”部署,完成集群的部署。
6、部署完成

7、查看主备复制状态
[kingbase@srv1 cluster]$ ksql -Usystem -W123456 TEST
ksql (V008R003C002B0061)
Type "help" for help.
TEST=# select usename,application_name,client_addr, client_hostname,sync_state from sys_stat_replication;
usename | application_name | client_addr | client_hostname | sync_state
---------+------------------+-------------+-----------------+------------
SYSTEM | node2 | 192.168.1.3 | | sync
(1 row)
8、查看ip分配信息(主库节点)

9、通过脚本kingbase_monitor.sh一键启停
[kingbase@srv2 bin]$ ./kingbase_monitor.sh restart
-----------------------------------------------------------------------
2020-09-16 10:26:19 KingbaseES automation beging...
...
now we check again
=======================================================================
| ip | program| [status]
[ 192.168.1.2]| [kingbasecluster]| [active]
[ 192.168.1.3]| [kingbasecluster]| [active]
[ 192.168.1.2]| [kingbase]| [active]
[ 192.168.1.3]| [kingbase]| [active]
=======================================================================
Tips:
以上测试是在CentOS 7 及x86环境下完成,其他系统环境需要进一步测试,部署成功后,后续的主备故障切换还需要继续测试。
10、总结
以上案例是在部署前修改了ssh端口,如果是部署完成后,再修改ssh端口,对于集群,只需要修改对应脚本即可,脚本修改,参考文档中的内容。
kingbaseES V8R3集群运维案例之---集群部署前后ssh端口修改的更多相关文章
- KingbaseES V8R3集群运维案例之---主库系统down failover切换过程分析
案例说明: KingbaseES V8R3集群failover时两个cluster都会触发,但只有一个cluster会调用脚本去执行真正的切换流程,另一个有对应的打印,但不会调用脚本,只是走相关的 ...
- KingbaseES V8R3集群运维案例之---用户自定义表空间管理
案例说明: KingbaseES 数据库支持用户自定义表空间的创建,并建议表空间的文件存储路径配置到数据库的data目录之外.本案例复现了,当用户自定义表空间存储路径配置到data下时,出现的故障问 ...
- KingbaseES V8R3集群运维案例之---kingbase_monitor.sh启动”two master“案例
案例说明: KingbaseES V8R3集群,执行kingbase_monitor.sh启动集群,出现"two master"节点的故障,启动集群失败:通过手工sys_ctl启动 ...
- KingbaseES V8R3集群运维案例之---cluster.log ERROR: md5 authentication failed
案例说明: 在KingbaseES V8R3集群的cluster.log日志中,经常会出现"ERROR: md5 authentication failed:DETAIL: password ...
- KingbaseES V8R6集群运维案例之---repmgr standby promote应用案例
案例说明: 在容灾环境中,跨区域部署的异地备节点不会自主提升为主节点,在主节点发生故障或者人为需要切换时需要手动执行切换操作.若主节点已经失效,希望将异地备机提升为主节点. $bin/repmgr s ...
- PB 级大规模 Elasticsearch 集群运维与调优实践
PB 级大规模 Elasticsearch 集群运维与调优实践 https://mp.weixin.qq.com/s/PDyHT9IuRij20JBgbPTjFA | 导语 腾讯云 Elasticse ...
- 《跟老男孩学Linux运维:Web集群实战》读书笔记
Linux 介绍 Linux 安装 Linux 调优 Web 基础 Nginx 应用 LNMP 应用 PHP 缓存加速 Nginx 调优 MySQL 应用 NFS 网络文件共享 Nginx 反向代理与 ...
- 集群运维ansible
ssh免密登录 集群运维 生成秘钥,一路enter cd ~/.ssh/ ssh-keygen -t rsa 讲id_rsa.pub文件追加到授权的key文件中 cat ~/.ssh/id_rsa.p ...
- 阿里巴巴大规模神龙裸金属 Kubernetes 集群运维实践
作者 | 姚捷(喽哥)阿里云容器平台集群管理高级技术专家 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击即可完成下载. 导读:值得阿里巴巴技术人骄傲的是 2019 ...
- 大数据运维尖刀班 | 集群_监控_CDH_Docker_K8S_两项目_腾讯云服务器
说明:大数据时代,传统运维向大数据运维升级换代很常见,也是个不错的机会.如果想系统学习大数据运维,个人比较推荐通信巨头运维大咖的分享课:https://url.cn/5HIqOOr,主要是实战强.含金 ...
随机推荐
- 【Unity3D】AudioSource组件
1 简介 1)AudioSource 与 AudioListener 简介 AudioSource(音频源)组件用于控制播放 AudioClip(音频片段),能够控制 2D 和 3D(距离越远 ...
- Js中Symbol对象
Js中Symbol对象 ES6引入了一种新的基本数据类型Symbol,表示独一无二的值,最大的用法是用来定义对象的唯一属性名,Symbol()函数会返回symbol类型的值,该类型具有静态属性和静态方 ...
- 微信小程序云开发项目-个人待办事项-02今日模块开发
上一篇: 微信小程序云开发项目-个人待办事项-01介绍 https://blog.csdn.net/IndexMan/article/details/124485626 模块开发步骤 本篇介绍今日模块 ...
- spring事务的传播
目录 事务的传播行为类型 注意事项 关于事务的传播,我们先确定一个场景:方法A调用方法B,方法A可能存在事务,也可能不存在事务,我们这里重点关注方法B上定义的事务传播行为,以及方法B中出现异常时,方法 ...
- 谁说docker-compose不能水平扩展容器、服务多实例?
❝ 虽说我已经从docker-compose走上了docker swarm的邪门歪道,目前被迫走在k8s这条康庄大道, 但是我还是喜欢docker-compose简洁有效的部署方式. ❞ 曾其何时 d ...
- SpringBoot整合ip2region实现使用ip监控用户访问地域来源
举个栗子 最*,多*台都上线了展示*期发帖所在地功能,比如抖音.微博.百度,像下面那样: 那么这个功能都是如何实现的呢? 一般有两个方法:GPS 定位的信息和用户 IP 地址. 由于每个手机都不一定会 ...
- 以二进制文件安装K8S之创建CA根证书
为etcd和Kubernetes服务启用基于CA认证的安全机制,需要CA证书进行配置. 如果组织能够提供统一的CA认证中心,则直接使用组织颁发的CA证书即可.如果没有统一的CA认证中心,则可以通过颁发 ...
- 单继承,多继承,菱形继承---day21
1.单继承 # ### 继承:一个类除了自身所有用的属性方法之外,还获取了另外一个类的成员属性和方法 ''' 一个类继承另外一个类,那么该类就是子类(衍生类),被继承的这个类就叫做父类(基类,超类) ...
- POM模式核心思想?
对页面元素进行封装为类的属性 对用例执行流程设计成类的实例方法 通过定义好的页面类实例化一个对象,通过对象调用实例方法执行用例 核心作用: 可以较少代码的冗余,方便后面维护,如果页面元素发生改变, 只 ...
- gRPC入门学习之旅(一)
gRpc简介 gRPC 是Google公司开发的基于HTTP/2设计,面向移动的一个高性能.开源和通用的 RPC 框架,是一款语言中立.平台中立.开源的远程过程调用(RPC)系统. gRpc官网地址: ...