ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

TDengine 集群自动化安装与升级:taosinstall 工具实战指南

TDengine 集群自动化安装与升级:taosinstall 工具实战指南 TDengine 集群自动化安装与升级taosinstall 工具实战指南【免费下载链接】TDengineHigh-performance, scalable time-series database designed for Industrial IoT (IIoT) scenarios项目地址: https://gitcode.com/GitHub_Trending/tde/TDenginetaosinstall是 TDengine 企业版巡检工具集中的核心部署工具用于实现单节点或集群环境下的 TDengine 自动化安装、指定节点续装以及升级含实验性滚动升级。本文基于 03-taosinstall.md 与 中文版文档 编写并结合仓库内配置文件与源码进行纵深解析。读完本文你将掌握 taosinstall 的安装/升级命令参数、完整 19 步安装流程、停服与滚动升级两种策略以及集群安装配置文件的逐项含义与实战示例。工具定位与适用前提在 TDengine 的运维工具集中见 巡检工具索引taosprecheck负责安装前检查、taospreset负责环境预配置而taosinstall则负责把 TDengine 真正部署到单机或整个集群。其核心价值在于TDengine 安装包自带的安装脚本只能处理单机无法基于集群拓扑进行自动化部署taosinstall 通过读取一份集中式配置文件即可驱动全部节点完成安装、配置、建库和组件启停。使用前需注意以下前提条件该工具仅面向 TDengine 企业版用户开放且要求 TDengine v3.1 或以上版本。已在上游巡检工具taosprecheck / taospreset中完成环境检查与预配置包括关闭防火墙、配置系统参数等预配置内容可参考 02-taospreset.md。以root或具有sudo权限的账户运行节点间需支持 SSH 通信否则只能在每台机器上以 local 模式分别执行。集群各节点 FQDN 与 IP 的映射应提前写入/etc/hosts。安装前务必核对 TDengine 各服务预配置文件中预设的参数特别是数据目录和日志目录等路径信息。安装功能参数与流程install 子命令语法执行taosinstall install --help可查看完整语法usage: taosinstall install [-h] [--model {local,ssh}] [--config CONFIG] [--backend] [--check-md5] [--list LIST] [--lite] [--log-level {debug,info}] [--workers WORKERS] [--set-hostname] [--set-ips] [--replicas {2,3}]核心参数详解参数缩写含义与默认值--model-m运行模式。local仅安装工具所在机器ssh在配置文件中列出的所有节点上依次安装。默认local--config-f安装配置文件的完整路径不指定时默认读取工具运行当前目录下的配置文件--backend-b后台运行安装进程默认前台运行--check-md5-cm安装前校验安装包的 MD5 值默认不校验--list-L逗号分隔的主机名列表限定仅对指定节点执行安装。该参数专为安装中断后续装剩余节点设计前提是配置文件中的firstep节点已安装完成且服务运行正常默认None--lite-精简安装模式--log-level-l日志级别支持debug、info默认info--workers-w集群安装并发数控制同时向多节点拷贝文件/下发服务的并发度需按机器资源调整默认50--set-hostname-sh依据配置文件的 FQDN 更新各节点 hostname默认不更新--set-ips-si依据配置文件将 FQDN 与 IP 写入各节点/etc/hosts默认不修改--replicas-r副本数量支持 2双副本和 3三副本默认三副本安装流程19 步taosinstall install的完整工作流如下它实际覆盖了“装包 → 配置 → 启动 → 集群初始化 → 组件部署 → 监控打通”全链路步骤操作说明1检查 MD5可选校验安装包完整性2复制安装包分发到集群各节点local 模式跳过3安装 TDengine在节点上执行安装4更新 taos 配置基于预配置的 taosd 参数更新taos.cfg除静态参数外还会动态写入firstEp、secondEp、fqdn、minReservedMemorySize5启动 taosd 服务通过systemctl启动6更新 taosadapter 配置基于预配置参数更新taosadapter.toml7启动 taosadapter 服务通过systemctl启动8创建集群所有 dnode数据库初始化 dnode9创建 mnode在firstEp、secondEp及 node3 上创建 mnodelocal 模式跳过10更新 taosadapter 的 instanceId更新后重启 taosadapter 服务11更新 taoskeeper 配置更新taoskeeper.toml及 instanceId12启动 taoskeeper 服务通过systemctl启动13更新 taosx 配置更新taosx.toml及 instanceId14启动 taosx 服务通过systemctl启动15更新 taos-explorer 配置更新explorer.toml及 instanceId16启动 taos-explorer 服务通过systemctl启动17创建监控用户在数据库中创建monitor用户18更新 taoskeeper 配置将 taoskeeper 连接数据库的用户改为monitor19启动 taoskeeper 服务通过systemctl启动监控链路就绪第 4 步中的集群端点在仓库配置文件中有明确佐证taos.cfg 模板 中定义了firstEp集群首个 dnode 端点形如hostname:6030、secondEpfirstEp 不可用时的备用端点以及fqdn本节点对外 FQDN可用 IP。在快速部署脚本 quick_deploy.sh 中可以看到同样的动态写法firstEp、secondEp、fqdn均按部署参数生成并写入taos.cfg与 taosinstall 第 4 步的“静态参数 动态集群参数”更新逻辑一致。升级功能停服升级与滚动升级upgrade 子命令语法usage: taosinstall upgrade [-h] [--model {local,ssh}] [--config CONFIG] [--backend] [--check-md5] [--list LIST] [--log-level {debug,info}] [--rolling-upgrade]upgrade参数与install基本一致model、config、backend、check-md5、list、log-level差异点在于--rolling-upgrade-r不携带该参数时执行普通停服升级携带后执行滚动不停服升级。⚠️ 官方明确警告升级功能含滚动升级仅推荐在测试环境使用如用于验证版本升级。生产环境使用前必须评估服务启动与可用性风险——客户现场环境复杂启停服务过程中可能遇到不可预期的问题。停服升级Stopped-Service Upgrade先停止集群所有节点的所有数据库服务再按firstEp → secondEp → dnode3 → ...的顺序依次升级并重启步骤操作说明1复制安装包分发到各节点local 模式跳过2停止服务停止 taosd、taosadapter、taoskeeper、taosx、taos-explorer3更新版本将 TDengine 升级到指定版本4–8依次启动服务通过systemctl依次启动 taosd、taosadapter、taoskeeper、taosx、taos-explorer滚动升级Rolling Upgrade不整体停服而是按“非 mnode 节点 → follower mnode → leader mnode”的顺序分批升级重启逐节点完成“停止服务 → 更新版本 → 依次启动服务”的动作尽可能降低对集群写入与查询的影响。注意滚动升级目前同样是实验性功能仅推荐测试环境。配置文件使用说明taosinstall 的配置文件集中定义了SSH 访问信息、本地安装包与校验值、数据库连接凭据、各组件配置模板、监控账户以及待安装服务列表。配置免密登录节点间支持密码登录与免密登录两种方式。配置免密登录时包括运行安装工具的当前节点在内每个节点都要完成免密配置cat ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys完整配置示例######################################################## # Configuration # ######################################################## # 安装部署 TDengine 的环境信息支持免密登录和 SSH 登录两种方式 # 当环境配置了免密登录后可不用配置 password 信息 [test_env] # 节点间通过 SSH 协议访问格式IP||fqdn||username||password||port firstep192.168.0.1||fqdntdengine1||usernameroot||password123456||port22 secondep192.168.0.2||fqdntdengine2||usernameroot||password123456||port22 dnode3192.168.0.3||fqdntdengine3||usernameroot||password123456||port22 # 节点间配置免密登录含运行安装工具的当前节点 # firstep192.168.0.1||fqdntdengine1||usernameroot||port22 # secondep192.168.0.2||fqdntdengine2||usernameroot||port22 # dnode3192.168.0.3||fqdntdengine3||usernameroot||port22 # TDengine 安装包在本地所在全路径 [local_pack] package/path_to_file/tdengine-tsdb-enterprise-3.3.x.x-Linux-x64.tar.gz md5317f88bf13aa21706ae8c2d4f919d30f # oem 版本的版本名称默认不使用 # [oem] # versionprodb # TDengine 的 Restful 连接信息 [database] usernameroot passwordtaosdata port6030 rest_port6041 # taosd 预配置文件会覆盖到所有 dnode 上对应配置文件 [taos_cfg] cfg_filetaos.cfg # taoskeeper 的预配置文件 [taoskeeper_cfg] cfg_filetaoskeeper.toml # taosadapter 的预配置文件 [taosadapter_cfg] cfg_filetaosadapter.toml # taosx 的预配置文件 [taosx_cfg] cfg_filetaosx.toml # explorer 的预配置文件 [taosexplorer_cfg] cfg_fileexplorer.toml # 监控用户 monitor 的配置信息 [monitor_user] usernamemonitor passwordTaosmonitor_125# # 待安装/启停的服务列表 [td_services] taosd taos taosadapter taoskeeper taosx taos-explorer配置段逐项解读[test_env]集群节点拓扑。每行一个节点字段以||分隔依次为 IP、FQDN、SSH 用户名、SSH 密码、SSH 端口免密登录时可省略 password。节点名firstep、secondep、dnode3决定了 mnode 的选举顺序——安装流程第 9 步会在 firstEp、secondEp 与 node3 三个节点上创建 mnode。[local_pack]本地安装包路径package与 MD5 值md5配合--check-md5在安装前校验安装包完整性。[oem]OEM 定制版本的版本名默认不使用。[database]初始化集群时使用的数据库连接信息包括username、password、port默认 6030与 taosd 的 serverPort 对应与rest_port默认 6041RESTful/WebSocket 端口。[taos_cfg]/[taoskeeper_cfg]/[taosadapter_cfg]/[taosx_cfg]/[taosexplorer_cfg]各组件预配置文件模板安装时统一覆盖到所有 dnode 的对应配置文件上。其中taos.cfg模板的完整参数可参考 packaging/cfg/taos.cfg它涵盖了firstEp/secondEp/fqdn/serverPort/logDir/dataDir/tempDir等集群端点、存储目录以及各模块 debugFlag 的全部可配置项。[monitor_user]监控账户信息。安装流程第 17–19 步会用该账户创建 monitor 用户并将 taoskeeper 的数据库连接切换到 monitor 用户后重启从而打通监控数据链路。[td_services]本次安装涉及的服务清单taosd、taos 客户端、taosadapter、taoskeeper、taosx、taos-explorer升级时的停服与启动顺序也以此为准。应用示例以下命令均在 taosinstall 工具所在目录执行# 1) 在工具所在节点安装数据库local 模式 ./taosinstall install -m local # 2) 在集群所有节点安装数据库日志级别调为 debug ./taosinstall install -m ssh -l debug # 3) 指定配置文件在集群所有节点安装 ./taosinstall install -m ssh -f /path_to_file/install.cfg # 4) 在集群指定节点安装续装场景 ./taosinstall install -m ssh -L server1,server2 # 5) 安装时校验安装包 MD5并开启 100 并发 ./taosinstall install -m ssh -cm -w 100 # 6) 停服升级数据库 ./taosinstall upgrade -m ssh # 7) 滚动升级数据库不停服实验性 ./taosinstall upgrade -m ssh -r典型运维场景串联一套标准的集群交付路径通常是先用taosprecheck检查环境 → 用taospreset完成时区/防火墙/内核参数等预配置示例见 02-taospreset.md→ 编写 taosinstall 配置文件 →taosinstall install -m ssh -f install.cfg全量部署。若安装中途因网络或资源问题中断可待firstep节点恢复后用-L参数指定剩余节点继续安装无需整集群重来。总结taosinstall把 TDengine 集群部署从“逐台手工操作”收敛为“一份配置 一条命令”的自动化流程install子命令负责装包、动态生成集群端点firstEp/secondEp/fqdn、初始化 dnode/mnode、部署 taosAdapter/taosKeeper/taosX/taosExplorer 并打通 monitor 监控链路upgrade子命令提供停服升级与滚动升级两种策略。使用时需牢记两点其一升级功能目前仅推荐测试环境使用生产环境需先评估风险其二节点间免密登录要覆盖运行工具的当前节点。掌握本文的参数、配置段与流程细节即可将 taosinstall 平稳落地到实际集群交付与版本升级场景中。【免费下载链接】TDengineHigh-performance, scalable time-series database designed for Industrial IoT (IIoT) scenarios项目地址: https://gitcode.com/GitHub_Trending/tde/TDengine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表