当前位置: 首页 > news >正文

hghac集群ipv6设置参考

文章目录

  • 环境
  • 文档用途
  • 详细信息

环境

系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:4.5.10

文档用途

本文主要用于指导hghac集群如何使用ipv6。

支持版本说明:

hghac4.2.3开始etcd及etcd支持使用ipv6,但自带的vip-manager版本不支持ipv6,需要升级到更高版本的vip-manager才可支持ipv6。

hghac4.2.5及更新版本中的所有组件均支持ipv6。

详细信息

一、整体步骤

1、按照数据库集群先备后主的顺序关闭hghac集群服务及数据库服务

2、关闭集群的vip-manager服务

3、关闭集群的etcd服务

4、删除各节点的etcd data目录

5、修改各节点etcd的配置文件,将文件中的ipv4地址更换为ipv6,三个节点均需修改,修改完成后启动etcd服务,三个节点启动时间不要超过10s。

6、确认etcd集群状态,状态正常后修改对应的环境变量信息

7、修改各节点的hghac配置文件,将文件中的ipv4地址修改为ipv6

8、启动主节点hac,状态无误后再启动备节点hac服务

9、修改各节点vip-manger配置文件信息,将涉及到的ipv4地址替换为ipv6地址,上传新版本vip-manger服务器替换旧版本vip-manager。

10、启动各节点vip-manger服务,确认vip是否挂载,挂载完成则替换成功。

11、验证能否正常备份,确认是否修改pgpass文件。

二、环境说明

序号集群架构ipv4ipv6vip
1hghac192.168.11.51fd15:4ba5:5a2b:1008:a516:cbff:be1c:2148/64fd15:4ba5:5a2b:1008:a516:cbff:be1c:204c
2hghac192.168.11.52fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0/64fd15:4ba5:5a2b:1008:a516:cbff:be1c:204c
3hghac192.168.11.53fd15:4ba5:5a2b:1008:fd42:d7ab:ea6e:5aef/6fd15:4ba5:5a2b:1008:a516:cbff:be1c:204c

三、步骤明细

1、按照数据库集群先备后主的顺序关闭hghac集群服务及数据库服务

#检查数据库集群主备节点,role角色列中leader节点为主节点,其他节点为备节点
①任意节点执行hghactl list确认主备

②按照先备后主的顺序去各数据库节点停止hghac服务

systemctl stop hghac.service

2、关闭集群的vip-manager服务 在所有节点执行关闭命令

systemctl stop vip-manager.service

3、关闭集群的etcd服务

在所有节点执行关闭命令

systemctl stop etcd.service

4、备份各节点的etcd data目录

①确定etcd data目录的路径,三个节点可能不一致,请详细检查

cat /usr/local/hghac/etcd/etcd.yml|grep />
②修改各节点的etcd环境变量

vi ~/.bash_profile #export ETCDCTL_ENDPOINTS=http://192.168.11.51:2379,http://192.168.11.52:2379,http://192.168.11.53:2379 --把原来ipv4的环境变量信息注释掉,前面加#号 export ETCDCTL_ENDPOINTS=http://[fd15:4ba5:5a2b:1008:a516:cbff:be1c:2148]:2380,http://[fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0]:2380,http://[fd15:4ba5:5a2b:1008:fd42:d7ab:ea6e:5aef]:2380

③使之生效

source ~/.bash_profile

④执行etcd集群状态检查

etcdctl endpoint status -w table


⑤开启etcd集群的密码登陆验证

etcdctl user add root --新建用户--输入两次密码,假如密码为highgo etcdctl --user root:highgo auth enable --开启密码验证 etcdctl --user root role get root --验证密码登陆,命令执行完成后需输入密码才能登陆。


7、修改各节点的hghac配置文件,将涉及到的ipv4地址修改为ipv6

对于配置文件中的特殊说明

①etcd3部分需配置刚才添加的etcd用户及密码

②listen部分*:5867改为[::]:5867 端口号根据实际情况来

③pg_hba部分的说明:

0.0.0.0/0改为::/0

127.0.0.1/32改为::1/128

vi /usr/local/hghac/hac/hghac.yml scope: test namespace: /service/ name: see_02 restapi: listen: "[fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0]:8008" connect_address: "[fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0]:8008" etcd3: hosts: "[fd15:4ba5:5a2b:1008:a516:cbff:be1c:2148]:2379,[fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0]:2379,[fd15:4ba5:5a2b:1008:fd42:d7ab:ea6e:5aef]:2379" username: root password: highgo bootstrap: dcs: ttl: 30 loop_wait: 10 retry_timeout: 10 maximum_lag_on_failover: 1048576 master_start_timeout: 300 synchronous_mode: false postgresql: use_pg_rewind: true parameters: wal_level: replica hot_standby: "on" wal_keep_size: 100 max_wal_senders: 10 max_replication_slots: 10 wal_log_hints: "on" archive_mode: "off" archive_timeout: 1800s logging_collector: "on" method: initdb_keygen initdb_keygen: command: /usr/local/hghac/hac/initdb_keygen.sh keep_existing_recovery_conf: True no_params: True postgresql: database: highgo listen: "[::]:5867" --监听所有ipv6地址 connect_address: "[fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0]:5867" bin_dir: /opt/highgo/hgdb-see-4.5.8/bin data_dir: /opt/highgo/hgdb-see-4.5.8/data config_dir: /opt/highgo/hgdb-see-4.5.8/data pgpass: /tmp/.pgpass authentication: replication: username: sysdba password: Hello@1234 rewind: username: sysdba password: Hello@1234 sysdba: password: Hello@1234 syssso: password: Hello@1234 syssao: password: Hello@1234 parameters: ssl: 'on' ssl_cert_file: /opt/highgo/hgdb-see-4.5.8/data/server.crt ssl_key_file: /opt/highgo/hgdb-see-4.5.8/data/server.key pg_hba: - local all all sm3 - host all all ::1/128 sm3 - host all all ::/0 sm3 - local replication all sm3 - host replication all ::1/128 sm3 - host replication all ::/0 sm3 - hostssl replication all ::/0 sm3 - hostssl replication all ::1/128 sm3

8、启动数据库主节点hac,状态无误后再启动备节点hac服务

①启动主节点hac服务,确认主节点状态正常

systemctl start hghac.service hghactl list


②主节点启动成功后,启动备节点的hac服务,确认是否正常

systemctl start hghac.service hghactl list


上图中,观察role列,存在leader及replica或sync standby节点,lag in MB为0则表明状态正常。

9、修改各节点vip-manger配置文件信息,将涉及到的ipv4地址替换为ipv6地址,将新版本的vip-manger命令上传到当前环境,替换旧版本vip-manager命令

vip-manager需使用4.2.5之后的版本才执行ipv6的使用,需要手动copy一个新版的vip-manger命令到当前环境下替换旧版本的vip-manager。

etcd-user及etcd-password使用第6步中配置的etcd的root用户及对应密码

vi /usr/local/hghac/vip-manager/vip-manager.yml [root@host2 ~]# cat /usr/local/hghac/vip-manager/vip-manager.yml interval: 1000 trigger-key: /service/test/leader trigger-value: see_02 ip: "fd15:4ba5:5a2b:1008:a516:cbff:be1c:204c" netmask: 64 interface: ens33 hosting-type: basic dcs-type: etcd dcs-endpoints: "http://[fd15:4ba5:5a2b:1008:a516:cbff:be1c:2148]:2379,http://[fd15:4ba5:5a2b:1008:200c:29ff:fe0a:aeb0]:2379,http://[fd15:4ba5:5a2b:1008:fd42:d7ab:ea6e:5aef]:2379" --格式显示问题,需要左侧缩进4格 etcd-user: "root" etcd-password: "highgo" retry-num: 2 retry-after: 250 verbose: false

10、启动各节点vip-manger服务,确认vip挂载情况,挂载正常则处理完毕

①启动vip-manager

systemctl start vip-manager.service

②查看服务状态

systemctl status vip-manager.service -l


11、验证能否正常备份,查看修改pgpass文件。

检查密码文件,如果存在127.0.0.1的地址,修改为::1

vi ~/.pgpass localhost:5867:highgo:sysdba:Hello@1234 ::1:5867:highgo:sysdba:Hello@1234

检查定时任务中的备份任务,如果条件运行手动进行一次全备,也可以等第二天检查备份情况是否正常。

http://www.jsqmd.com/news/539455/

相关文章:

  • 3个智能决策功能解决英雄联盟游戏体验优化难题
  • 告别闪退:BiliRoamingX的Android 14兼容性优化方案
  • 大中型企业适用的CRM销售管理系统深度解析 - SaaS软件-点评
  • TortoiseGit密钥配置保姆级教程:从PuTTYgen生成到Pageant加载全流程
  • 保姆级教程:从下载到安装,手把手教你搞定Keil5的STM32L431RCT6芯片包
  • 高效子域名挖掘工具实战指南:从入门到精通
  • 线圈电流密度计算
  • 弹簧针厂家选购指南:如何找到真正靠谱的精密连接解决方案? - 速递信息
  • OpenClaw+GLM-4.7-Flash:自动化简历生成与优化工具
  • 告别裸机!用状态机思路重构你的51单片机温度监测程序(以DS18B20为例)
  • SiameseAOE效果实测:一键分析评论情感,生成结构化报告
  • 如何零门槛集成专业金融图表?从技术选型到上线的全流程攻略
  • CRM系统哪个好?适合大中型企业的CRM推荐 - SaaS软件-点评
  • 5步构建智能医疗预约系统:91160-cli全流程实战指南
  • 避坑指南:RK3568开发板模型转换必备的RKNN-Toolkit2 1.5.0安装全流程
  • 保姆级教程:5分钟在Spring Boot项目里集成Protobuf,搞定高效RPC通信
  • 深入解析PCIe设备内存访问与DMA控制机制
  • 别再纠结了!Android音视频开发选软解(FFmpeg)还是硬解(MediaCodec)?一个实战Demo帮你做决定
  • Brocade光纤交换机日常运维:这20条命令解决90%的故障排查(附真实案例)
  • npm install 背后的依赖管理机制:为什么你的node_modules这么大?
  • 2026年冲击试验机品牌榜:基于行业权威数据、口碑及技术实力全解析! - 品牌推荐大师1
  • Verilog行缓存设计避坑指南:当读写地址冲突时会发生什么?
  • ComfyUI-WanVideoWrapper视频生成工具零基础快速部署实战教程
  • 3步突破学术文献格式壁垒:caj2pdf全功能解析与实战指南
  • 上海毅非机电设备有限公司是做什么的?一文带你了解这家专注协作机器人交钥匙工程的服务商 - 短商
  • 4个突破式步骤:哔咔漫画下载解决方案
  • Qwen2.5-Omni:多模态流式交互的Thinker-Talker架构与TMRoPE技术解析
  • 「RenameIt」:提升Sketch设计资产管理效率的批量命名工具
  • 百川2-13B-Chat WebUI v1.0实战案例:为非技术同事生成‘如何解释AI给老板听’的PPT大纲
  • **基于Python与Neo4j的知识图谱构建实践:从数据到语义网络的跃迁**在人工智能与大数据深度融合