ansible 如何修改tidb server端口4000为4001

【 TiDB 使用环境】生产环境
【 TiDB 版本】4.0
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

直接配置文件改就行了,改完reload一下

找不到在哪个配置文件
image

保险起见,可以在同一个机器上扩容一个4001的tidb节点,然后缩容掉4000节点的tidb就行了

1 个赞

两种方法:

  1. 用先缩容再扩容的方式修改
  2. 使用如下方式修改:(生产测试后再执行)
    https://docs.pingcap.com/zh/tidb/stable/maintain-tidb-using-tiup#修改配置参数

ansible-playbook 怎么搞?

tiup cluster edit-config ${cluster-name}直接这样改就行

您可以通过修改 TiDB 配置文件来更改 TiDB 端口。在 TiDB 部署的机器上,找到 TiDB 配置文件 conf/tidb.toml,并修改其中的 port 配置项即可。例如,将 TiDB 端口修改为 4000:

[server]
port = 4000

修改完成后,您需要重新启动 TiDB 服务才能使配置生效。您可以使用以下命令重启 TiDB:

ansible-playbook start.yml --tags=tidb

更多关于 TiDB 配置文件的信息,您可以参考官方文档:https://docs.pingcap.com/zh/tidb/stable/config-file-description#tidb-configuration-file

2 个赞

tidb.toml没有找到port
tidb.toml (1.4 KB)

配置文件中如果不指定port,会使用默认的4000
如果没有配置,可以显示的指定port,这时就会使用指定的端口

可以使用 Ansible 提供的 tidb_server_config 模块。 以下是使用此模块的步骤:

  1. 打开 Ansible playbook 文件,然后在 tasks 部分添加以下任务:

    - name: 修改 TiDB 服务器端口
      tidb_server_config:
        state: present
        tidb_server_port: 新的端口号
    

    这将使用 tidb_server_config 模块将 tidb-server.toml 配置文件中的端口号更新为您指定的新端口号。

  2. tidb_topology 执行纳入部署过程中。

    - name: 部署 TiDB 集群
      hosts: tidb_servers
      become: true
      roles:
        - tidb-deploy
    
  3. 在 playbook 文件中指定 vars,将您要更改的端口号传递给 tidb_server_port

    - name: 部署 TiDB 集群
      hosts: tidb_servers
      become: true
      vars:
        tidb_server_port: 4001
      roles:
        - tidb-deploy
    

    在这个例子中,新端口号被设置为 4001。

  4. 运行 Ansible playbook 文件以部署 TiDB 集群并更改端口号。

    ansible-playbook deploy.yml
    

这样就可以使用 Ansible 将 TiDB 服务器端口号更改为您指定的新端口号了。

2 个赞

已解决,直接修改了scripts/run_tidb.sh中端口

1 个赞

:+1: :+1: :+1:

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。