TDEngine2.6集群及监控系统安装记录

TDEngine2.6时序数据库集群及监控系统安装记录

0.前言

记录淘思数据库3节点集群安装过程(原始版本发布在我的有道云笔记中),主要分为两个部分前面是集群的规划、安装过程及基于restful api测试,后面是基于grafana的集群监控系统规划及安装。参考内容来自淘思数据的官方文档2.6版本

1. 集群规划

1.1 三节点集群FQDN规划

参考FQDN说明

序号hostname(FQDN)IP端口号备注
1node1192.168.26.1016030
2node2192.168.26.1026030、6041兼做taosadapter 服务
3node3192.168.26.1036030、6042兼做协调服务器
1.2 集群节点机配置

参考容量规划
2核 8G,100G
ubuntu server 22.04LTS 64位
tdengine 2.6.0.1
双网卡,一个集群私网(192.168.26.101~103),一个natvirtualbox网卡配置

2 集群安装部署

2.1准备虚拟机VirtualBox

在主机网络管理器中创建新的Host-Only Ethernet Adapter#2
在这里插入图片描述

安装Ubuntu 22.04LTS, iso下载地址 服务器版,启用ssh,镜像更换为http://mirrors.163.com

2.1.1 配置网络地址

安装操作系统后指定ip,或者安装后修改

  • netplan 方式,修改配置文件
    修改/etc/netplan/目录下的唯一yaml文件,
    此处有两块网卡,enp0s8是集群内网私有地址需要配置为
    192.168.26网段内的地址,根据FQDN规划配置,下面是node1的ip配置为192.168.26.101/24
    sudo vim 00-installer-config.yaml
network:
  ethernets:
    enp0s3:
      dhcp4: true
    enp0s8:
      addresses:
      - 192.168.26.101/24
  • 应用修改
$ netplan apply

备注:enp0s3s是虚拟机访问外网地址nat的配置为自动获取ip,不用修改

2.1.2 检查ip是否配置
$ netplan get all
2.2 部署集群

参考文档https://docs.taosdata.com/cluster/deploy

这里每个节点选择apt-get安装方式

2.2.1 节点配置

配置文件参考
默认配置文件位于/etc/taos/taos.cfg, 可以通过taosd -c或者taos -c 指定配置文件位置,c为小写,大写C显示配置
副本数量为3,参考
mnode数量为3,参考
除了fqdn不同,其他配置三个节点完全一致。以下为node1的tdengine修改的配置

// firstEp 是每个数据节点首次启动后连接的第一个数据节点
firstEp               node1:6030
secondEp              node2:6030

// 必须配置为本数据节点的 FQDN,如果本机只有一个 hostname,可注释掉本项
fqdn                  node1

// 配置本数据节点的端口号,缺省是 6030
serverPort            6030

# 配置集群中管理节点数量mnode,1~3
numOfMnodes   3

# number of replications, for cluster only 
replica     3

// 副本数为偶数的时候,需要配置,请参考《Arbitrator 的使用》的部分
arbitrator            node3:6042
2.2.2 部署协调器

协调器作用

选择node3上部署,生产环境最好部署在集群中的独立节点上,防止node3宕机协调器也失效的情况。

进入用户目录
cd ~

下载协调器,注意版本与TDengine一致,这里都是2.6.0.1版本。地址
wget https://www.taosdata.com/assets-download/TDengine-arbitrator-2.6.0.1-Linux-x64.tar.gz

解压文件,替换实际文件名
tar xvzf TDengine-arbitrator-2.6.0.1-Linux-x64.tar.gz

进入TDengine-arbitrator-2.6.0.1目录
cd TDengine-arbitrator-2.6.0.1

执行协调器安装程序
sudo ./install_arbi.sh

启动协调器服务
sudo systemctl start tarbitratord

检查运行状态
sudo systemctl status tarbitratord协调器服务运行成功在taos客户端(windows64位2.6.0.1版本),安装参考官方文档,注意修改hosts文件配置node1,node2的ip解析,taos.cfg文件配置firstEp,SecondEp连接node1:6030,node2:6030,查看dnodes情况
taos> show dnodes;
集群协调器运行情况

2.2.3 集群基准测试

在node1节点上,运行taosdemo
$ taosBenchmark$ taosdemo
测试结果如下:
集群taosBenchmark测试结果

2.2.4 启用taosadapter

参考文档:taosadapter

2.2.4.1 简单测试

在node2上以命令行方式启动taosadapter的,非官方方式,仅用于测试排错
在客户机tdclient上执行。
用户密码采用默认设置:root:taosdata
如不相同请用base64重新编码

curl -H 'Authorization: Basic cm9vdDp0YW9zZGF0YQ==' -d 'show databases;' node2:6041/rest/sql/test
服务端显示请求内容,最后一行表示post请求服务端显示内容客户端请求的情况
客户端返回内容:客户端返回json结果

2.2.4.2 Postman测试

Postman使用说明参考

  • 新建tdengine集合(collection)
    设置授权,类型选择Basic Auth,输入集群默认的用户名密码
    root taosdata
    请求授权设置

  • 测试show databases命令

tdengine集合下增加请求,方法参考,执行查询数据库命令

POST http://node2:6041/rest/sql/
show databases;

返回结果:看到具备前面测试生成的test数据库Postman中执行请求

  • 测试指定数据库查询
    tdengine集合下增加请求,指定数据库(test)查询超级表meters的总记录数
POST http://node2:6041/rest/sql/test

Body中填写,文本格式为raw,text,内容如下

select count(*) from meters;

返回结果:1亿条记录数
查询返回1亿条记录

SELECT count(*), max(current) FROM meters where groupId = 2;

返回结果:
聚会函数查询结果

与命令行执行结果对照
同样查询在命令行中执行结果

相对于原生连接(taosc),Rest连接的查询时间慢10多毫秒。详情参考TDengine连接器建立连接的方式

3 部署TDinsight监控系统

参考文档https://docs.taosdata.com/reference/tdinsight/

3.1 客户机规划

配置:4核8G,300G硬盘
安装Ubuntu 22.04LTS 桌面版64位,下载地址

序号hostname(FQDN)IP端口备注
1tdclient192.168.26.1043000兼做grafana服务器
  • 客户端安装 ssh,curl ,wget
    sudo apt install ssh curl wget
3.2 部署taos的Linux客户端(可选)

参考文档:安装客户端驱动
版本与服务端一致,这里都是2.6.0.1,
TDengine-client-2.6.0.1-Linux-x64.tar.gz 下载地址

wget https://www.taosdata.com/assets-download/TDengine-client-2.6.0.1-Linux-x64.tar.gz

  • 解包安装
tar zxvf TDengine-client-2.6.0.1-Linux-x64.tar.gz &&
cd TDengine-client-2.6.0.1-Linux-x64 && 
sudo ./install_client.sh

客户端安装成功- 配置客户端
修改/etc/taos/taos.cfg文件,指定firstEp,SecondEp,这里分别是node1,node2
配置客户端

  • 客户端命令行执行测试
    输入taos
$ taos
taos> show variables;
3.3 安装grafana
sudo apt-get install -y apt-transport-https
sudo apt-get install -y software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key |\
  sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" |\
  sudo tee -a /etc/apt/sources.list.d/grafana.list
sudo apt-get update
sudo apt-get install grafana
3.4 安装grafana TDengine插件

$ sudo ./TDinsight.sh -a http://node2:6041
执行TDinsight.sh安装

  • 重启动grafana服务
    sudo systemctl restart grafana-server

  • 插件安装失败,卸载grafana TDengine插件方法
    sudo ./TDinsight.sh -R

3.5 grafana异常处理
  • 检查grafana错误
    显示最近20条错误
    sudo journalctl -u grafana-server.service -n

  • 如果搞坏grafana,用以下命令重新安装
    sudo apt-get --reinstall install grafana
    sudo apt reinstall grafana

  • 重装无效,重命名db文件(-s参数提升系统权限),再次重新安装grafana 、TDengine插件
    sudo -s mv /var/lib/grafanagrafana.db /var/lib/grafanagrafana.db2

  • 默认grafana数据目录/var/lib/grafana
    grafana默认目录

3.6 监控结果图

主机浏览器 访问http://tdclient:3000,默认用户密码均为admin,面板介绍参考

  • 仪表盘所有内容
    仪表盘内容

  • 集群概况
    集群概况

  • 模拟集群故障
    集群正常运行时,停掉任意节点的taosd服务,模拟节点故障
    集群运行正常,
    停掉节点node1、node3上的taosd,监控可用看到dnodes,mnodes
    及vnodes的数量都下降了。
    模拟故障时的监控图node1离线提示node3离线提示仪表盘的数据源连接node2:6041,当停掉node2节点的taosd,集群运行正常,但仪表板看到如下结果,监控不可用了
    node2故障时提示,监控不可用了

  • window客户端(跨网段)与Linux客户端(同网段)执行查询不同
    在正常3节点集群中查询速度相当,但丢失一个节点的表现有差异
    select count(*) from test.meters;
    window客户端查询速度会下降,为4秒,但是Linux客户端仍跟正常一样。
    node2节点故障时,window客户端查询速度
    节点正常时,window客户端查询速度,为0.15秒
    集群正常时查询速度

4 小结

总体上,得益于淘思数据库文档的简洁流畅,集群安装比较顺利,适合淘思新手快速上手测试,当然具备一定的Linux和sql基本技能。2.6版本的sql功能增强,查询比以前跟方便了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值