TDEngine环境安装、配置及使用经验总结
一、TDengine 介绍
-
TDengine的介绍
TDengine是一款国产、开源、云原生的时序数据库(Time Series Database),专为物联网、工业互联网、金融、IT 运维监控等场景设计并优化,具有极强的弹性伸缩能力。同时它还带有内建的缓存、流式计算、数据订阅等系统功能,能大幅减少系统设计的复杂度,降低研发和运营成本,是一个极简的时序数据处理平台。它能让大量设备、数据采集器每天产生的高达TB甚至PB级的数据得到高效实时的处理,对业务的运行状态进行实时的监测、预警,从大数据中挖掘出商业价值。 -
TDengine 3.x的介绍
TDengine 3.x带来了几大核心特性,包括云原生架构、流式计算,还增强了数据订阅功能;更重要的是,3.0系列版本开始提供了全平台支持,服务器/客户端均已支持 Linux、Windows 和 MacOS。TDengine 3.0是一款真正的云原生时序数据库(Time Series Database,TSDB)。它有几大亮点:
(1)可以支持 10 亿个设备、100 个节点
(2)支持存储与计算分离,引入了计算节点(QNode),并重构了整个计算引擎
(3)完善并优化了对消息队列、流式计算和缓存的支持,引入事件驱动的流式计算
(4)解决了困扰时序数据库的高基数问题
二、TDengine的下载
tips:
1、 本文章是在linux环境下安装;
2、安装前请先空出一个大内存目录,TDEngine存储大量数据时,需要耗费大量内存,如果后期内存不足的话,会影响查询、插入等功能使用,扩容比较麻烦,而且可能会导致一些问题。
TDEngine所有安装包链接为:TDengine 官发布历史及下载链接,可根据自己需要下载对应版本。
- 我安装的版本是:
三、TDengine Server安装及配置
3.1 安装
3.1.1 tar方式安装
我创建的目录结构:
cd /home
mkdir tdengine
cd /tdengine
mkdir taos3.0.4.2
cd taos3.0.4.2
mkdir server
cd /home/tdengine
mkdir taostools2.5.0
- 将下载好的压缩包传输到对应的目录
- 创建相关目录
mkdir -p {data,log,tmp,core,soft}
3. 安装 TDengine Server
#解压缩到soft目录
tar xzf TDengine-server-3.0.4.2-Linux-x64.tar.gz -C soft
#j进入soft目录下解压缩后的目录
cd soft/TDengine-server-3.0.4.2/
#执行安装命令
./install.sh -e no
3.1.1 rpm方式安装
- 执行命令
rpm -ivh 安装包位置/安装包名称.rpm
#示例
rpm -ivh /home/tdengine/TDengine-server-2.6.0.34-Linux-x64.rpm
按照提示输入信息后,按enter键继续:
3.2 taos的参数配置
- 先修改一下linux系统的hostname , 在不重启linx,更改hostname,需要执行以下命令:
# 下面以修改为 fastbee 为例
# 1. 直接临时修改 hostname
$ hostname fastBee
# 进入hostname文件, 更改hostname
$ vi /etc/hostname
# 执行完成以后新开一个客户端看下 hostname是否更改了
如下 :表示更改成功
[root@fastBee ~]#
- 修改 /etc/taos/taos.cfg
# 进入taos.cfg 修改
$ vi /etc/taos/taos.cfg
更改配置文件、数据路径等.
注意: 注解 # 要去掉
保存之后,可以输入 taos -C 查看一下修改是否生效:
- 设置core目录
不管是生产还是测试环境,这个一定要设置的。不然把根目录撑爆了不要怪别人。
set_core /home/tdengine/taos3.0.4.2/server/core/
4. 根据实际数据库存储的信息进行调优配置 - 参考链接: 【TDEngine调优配置说明】- 实战经验
3.3 启动
# 启动命令
systemctl start taosd
#查看状态
systemctl status taosd
#停止
systemctl stop taosd
- 进入taos shell 命令:
taos
- 输入命令,查看数据库:
show databases ;
3.4 taosAdapter
在 Linux 系统上 taosAdapter 服务默认由 systemd 管理。
#启动 taosAdapter 服务
systemctl start taosadapter
#查看 taosAdapter 状态
systemctl statustaosadapter
#停止taosAdapter 服务
systemctl stop taosadapter
四、TDengine Client 安装
4.1 linux客户端安装
- 将下载好的压缩包传输到对应的目录
- 解压缩软件包:
tar -xzvf TDengine-client-3.0.4.2-Linux-x64.tar.gz
解压软件包之后,会在解压目录下看到以下文件(目录):
(1) install_client.sh:安装脚本,用于应用驱动程序
(2)package.tar.gz:应用驱动安装包
(3)driver:TDengine应用驱动
(4)connector: 各种编程语言连接器(go/grafanaplugin/nodejs/python/JDBC)
(5)examples: 各种编程语言的示例程序(c/C#/go/JDBC/matlab/python/R
- 执行安装脚本:运行install_client.sh进行安装
4.2 windows客户端安装
- 从涛思官网(https://www.taosdata.com/cn/all-downloads/)下载 :
X64硬件环境:TDengine-client-X.X.X-Windows-x64.exe
X86硬件环境:TDengine-client-X.X.X-Windows-x86.exe
注意:客户端版本一定要与服务端版本一致
2. 双击执行安装程序,按提示完成安装:
回到目录 回到末尾
五、TDengine 可视化
在进行TDengine 可视化配置之前要确保 TDengine 单机\集群与 taosAdapter 已经在正确运行。
5.1 taos-explorer:可视化管理工具
官方链接:TDEngine - 可视化管理
taos-explorer 是一个为用户提供 TDengine 实例的可视化管理交互工具的 web 服务。从 TDengine 3.3.0.0 开始,TDengine docker image 中增加的一个新的 web 组件, 可以使用它进行数据库、超级表、子表、数据的查看和管理。其上也有一些只在企业版中才提供的高级特性。
1. 安装
taos-explorer 无需单独安装,从 TDengine 3.3.0.0 版本开始,它随着 TDengine Server 安装包一起发布,安装完成后,就可以看到 taos-explorer 服务。
2. 配置
配置文件在 linux 平台上为/etc/taos/explorer.toml
,配置内容如下:
注意:第一次启动时可能没有这个配置文件,启动taos-explorer 服务后会自动创建explorer.toml
port = 6060
cluster = "http://localhost:6041"
配置文件中只需要关注这两项即可:
port:taos-explorer 对外的服务端口
cluster:taos-explorer 连接的 TDengine 实例,只支持 websocket 连接,所以该地址为 TDengine 集群中 taosAdapter 服务的地址
3. 启动 & 停止 命令
Linux 系统使用 systemctl 命令可以管理 taos-explorer 服务:
- 启动服务进程:systemctl start taos-explorer
- 停止服务进程:systemctl stop taos-explorer
- 重启服务进程:systemctl restart taos-explorer
- 查看服务状态:systemctl status taos-explorer
4. 可视化界面注册机登录
使用 taos-explorer,需要从浏览器访问其映射在主机上的端口,假定主机名为 abc.com,映射到主机的端口为 6060,则需从浏览器访问 http://abc.com:6060. taos-explorer 默认在容器内使用 6060 端口。初次使用需要使用企业邮箱进行注册,注册后即可使用数据库中的用户名和密码登录。
- 注册流程
安装好,打开浏览器,默认访问http://ip:6060来访问 taos-explorer 服务。如果还没有注册过,则首先进入注册界面。输入手机号获取验证码,输入正确的验证码后,即可注册成功。 - 登录
登录时,请使用数据库用户名和密码登录。首次使用,默认的用户名为 root,密码为 taosdata。登录成功后即可进入数据浏览器页面,您可以使用查看数据库、 创建数据库、创建超级表/子表等管理功能。
其他功能页面,如数据写入-数据源等页面,为企业版特有功能,您可以点击查看和简单体验,并不能实际使用。
5.2 taos-keeper:监控指标
官方链接:TDEngine - 可视化管理
taosKeeper 是 TDengine 3.0 版本监控指标的导出工具,通过简单的几项配置即可获取 TDengine 的运行状态。taosKeeper 使用 TDengine RESTful 接口,所以不需要安装 TDengine 客户端即可使用。
taosKeeper 作为 TDengine 监控指标的导出工具,可以将 TDengine 产生的监控数据记录在指定数据库(log)中,并提供导出接口。
1. 安装
安装 TDengine 官方安装包的同时会自动安装 taosKeeper, 详情请参考 TDengine 安装。
2. 配置
TDengine 开启监控服务,TDengine 配置文件 taos.cfg 中至少需要配置 monitor 和 monitorFqdn。
monitor 1
monitorFqdn hostname# taoskeeper 服务的 FQDN
配置参数:
- monitor:服务器内部的系统监控开关。监控主要负责收集物理节点的负载状况,包括 CPU、内存、硬盘、网络带宽的监控记录,监控信息将通过 HTTP 协议发送给由 monitorFqdn 和 monitorProt 指定的 taosKeeper 监控服务。取值范围:
- 0:关闭监控服务(默认为0)
- 1:激活监控服务。
- monitorFqdn :taosKeeper 监控服务的 FQDN
taosKeeper的配置文件在 linux 平台上为/etc/taos/taoskeeper.toml
,用户可根据自己需要进行配置。
3. 启动 & 停止 命令
安装后,请使用 systemctl 命令来启动 taoskeeper 的服务进程。
- 启动服务进程:systemctl start taoskeeper
- 停止服务进程:systemctl stop taoskeeper
- 重启服务进程:systemctl restart taoskeeper
- 查看服务状态:systemctl status taoskeeper
注意:
- systemctl 命令需要 root 权限来运行,如果您非 root 用户,请在命令前添加 sudo。
- 如果系统中不支持 systemd,也可以用手动运行 /usr/local/taos/bin/taoskeeper 方式启动 taoskeeper 服务。
5.3 taos-keeper监控指标通过Grafana集成可视化
六、tdengine配置优化
6.1 修改服务端配置:taos.cfg
# 进入taos.cfg 修改
$ vi /etc/taos/taos.cfg
更改配置文件、数据路径等.
注意: 注解 # 要去掉
其他优化配置参数:
- 最小磁盘容量限制:
- 日志文件限制:
- 日志级别限制:131
保存修改的文件
- 修改完成后,重启taosd服务,执行命令:
systemctl restart taosd
可以输入taos -C
查看一下修改是否生效:
6.2 修改客户端配置 : taosadapter.toml
执行命令: vi taosadapter.toml
保存修改的文件。
- 修改完成后,重启taosadapter服务,执行命令:
systemctl restart taosadapter
6.3 运行监控配置:taoskeeper.toml
如果taoskeeper服务没开,这一步可以跳过,查看服务状态,执行命令:
systemctl status taoskeeper
执行命令: vi /etc/taos/taoskeeper.toml
- 日志级别配置:
- 日志文件配置:
保存修改的文件。 - 修改完成后,重启taoskeeper服务,执行命令:
systemctl restart taoskeeper
6.4 创建任务,定时删除日志文件
在实际运行中,往往会遇到日志文件大量占用内存的情况。这时候,我们需要通过创建定时任务来定时删除日志文件。步骤如下:
- 首先查看日志文件位置,执行命令:
taos -C
查看目录下的日志文件种类:ls -la /var/log/taos
2. 创建任务sh文件目录,执行命令:mkdir /home/shell
3. 进入任务sh文件目录,执行命令:cd /home/shell
4. 创建detelog.sh文件,执行命令:touch detelog.sh
5. 为detelog.sh赋权限,执行命令:chmod +x detelog.sh
6. 写入文件内容,执行命令:vi detelog.sh
文件内容:
#!/bin/sh
find /var/log/taos -name 'taos*.*' -exec rm -rf {} \;
true > /var/log/taos/udfdlog.0;
true > /var/log/taos/taosSlowLog;
true > /var/log/taos/tdengine_install.log;
7. >测试detelog.sh文件是否能正确运行,执行命令:./detelog.sh
此时查看日志目录下的文件,执行命令:ls -la /var/log/taos
可以看到,文件已经删除,且指定文件已经清空,说明sh文件能正确运行。
- 创建定时任务,每天的23:50执行日志清除任务,执行命令:
crontab -e
输入内容:
50 23 * * * /home/shell/detelog.sh
查看任务创建情况:crontab -l
6.5 设置服务自重启
systemctl enable taosd
systemctl enable taosadapter
systemctl enable taos-explorer
systemctl enable taoskeeper
七、 更多
- TDEngine的常用命令及功能总结
- TDEngine环境安装、配置及使用经验总结
- taosdump的安装与使用实战
- TDengine3.0与2.0版本的差异总结
- TDEngine 调优 - 高速查询及插入
- TDEngine彻底卸载
- 异常解决 - Error in `taosdump‘: malloc(): memory corruption: 0x0
- 数据库管理工具DBeaver 连接 TDengine详细教程