写点什么

YashanDB 更换服务器 IP

作者:YashanDB
  • 2025-03-07
    广东
  • 本文字数:1933 字

    阅读完需:约 6 分钟

本文内容来自 YashanDB 官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E5%AE%89%E8%A3%85%E5%92%8C%E5%8D%87%E7%BA%A7/%E9%87%8D%E9%83%A8%E7%BD%B2/%E6%9B%B4%E6%8D%A2%E6%9C%8D%E5%8A%A1%E5%99%A8IP.html


本文主要介绍当一个单机部署的数据库集群中,一台或多台服务器的 IP 发生变更时,管理员如何通过yasboot ipchange命令进行数据库层面的 IP 更换操作,最终使得数据库恢复可用。


下述操作将以一主两备环境中的两台服务器 IP 发生变更为例进行描述:



IP 更换执行的顺序为 yasom > yasagent > host,若无需更新某个工具/服务器的 IP 可跳过,继续更新下一个工具/服务器的 IP,但不能乱序操作。

前提条件



执行下述操作前,请确保新 IP 的环境仍满足 YashanDB 的各项部署要求,具体见安装前准备

步骤 1:进入 YashanDB 产品安装目录



重部署需要在安装 YashanDB 时的安装目录下进行,以 yashan 用户登录服务器并进入 install 目录:


$ cd /home/yashan/install
复制代码


Copied!

步骤 2:更换 yasom IP



  1. 查看主 yasom 进程所在服务器信息。


查看安装目录下的 hosts.toml 文件中的如下内容可以获取主 yasom 进程所在服务器的相关信息:


[om]  hostid = "host0001"  [om.config]    LISTEN_ADDR = "192.168.1.2:1675"
复制代码


Copied!


根据上述信息,yasom 部署于 hostid 为 host0001 的服务器上,该服务器的 IP 为 192.168.1.2,需要更换。


  1. 更换主 yasom 进程的 IP。


$ cd /home/yashan/install$ yasboot ipchange yasom -t hosts.toml -n 192.168.1.5
复制代码


Copied!


更换完成后,yasom 可以正常提供服务。

步骤 3:更换 yasagent IP



  1. 查看 yasagent 服务所在服务器信息。


查看安装目录下的 hosts.toml 文件中的如下内容可以获取 yasagent 服务所在服务器的相关信息:


[[host]]  hostid = "host0001"[host.yasagent]    [host.yasagent.config]      LISTEN_ADDR = "192.168.1.2:1676"
[[host]] hostid = "host0002"[host.yasagent] [host.yasagent.config] LISTEN_ADDR = "192.168.1.3:1676"
[[host]] hostid = "host0003"[host.yasagent] [host.yasagent.config] LISTEN_ADDR = "192.168.1.4:1676"
复制代码


Copied!


根据上述信息,hostid 为 host0001 和 host0002 的服务器上的 yasagent 使用了旧 IP(192.168.1.2 和 192.168.1.3),需要更换。hostid 为 host0003 服务器上的 yasagent 无需更换 IP,可以正常提供服务。


  1. 执行如下命令,依次更换 host0001 和 host0002 服务器上的 yasagent 的 IP。



$ yasboot ipchange yasagent -t hosts.toml -n 192.168.1.5 --host-id host0001

$ yasboot ipchange yasagent -t hosts.toml -n 192.168.1.6 --host-id host0002
复制代码


Copied!


更换完成后,所有 yasagent 可以正常提供服务。

步骤 4:更换 yasdb IP



更换 yasdb IP 包括对 yasdb 进程的数据库监听地址和主备复制链路地址的更换,yasdb 进程所在的服务器信息与上述 yasagent 服务所在服务器信息一致。


Note:

更换 yasdb IP 时,所有 yasdb 进程将被停止,数据库服务关闭。



$ yasboot ipchange host -t hosts.toml -l 192.168.1.5 -r 192.168.1.5 --host-id host0001

$ yasboot ipchange host -t hosts.toml -l 192.168.1.6 -r 192.168.1.6 --host-id host0002
复制代码


Copied!

步骤 5:启动数据库



执行如下命令启动数据库服务:


$ yasboot cluster start -c yashandb
复制代码


Copied!

步骤 6:检查 IP 更换结果



执行如下命令查询数据库集群的各项信息,校验 IP 是否已更换:


$ yasboot cluster status -c yashandb -d
hostid | node_type | nodeid | pid | instance_status | database_status | database_role | listen_address | data_path----------------------------------------------------------------------------------------------------------------------------------- host0001 | db | 1-1:1 | 114864 | open | normal | standby | 192.168.1.5:1688 | /data/yashan/yasdb_data/db-1-1----------+-----------+--------+--------+-----------------+-----------------+---------------+------------------+-------------------- host0002 | db | 1-2:2 | 114862 | open | normal | standby | 192.168.1.6:1688 | /data/yashan/yasdb_data/db-1-2----------+-----------+--------+--------+-----------------+-----------------+---------------+------------------+-------------------- host0003 | db | 1-3:3 | 6921 | open | normal | primary | 192.168.1.4:1688 | /data/yashan/yasdb_data/db-1-3----------+-----------+--------+--------+-----------------+-----------------+---------------+------------------+--------------------
复制代码


Copied!

发布于: 刚刚阅读数: 4
用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
YashanDB更换服务器IP_数据库_YashanDB_InfoQ写作社区