三分钟梳理TDengine安装部署的逻辑
小 T 导读:TDengine,是涛思数据面对高速增长的物联网大数据市场和技术挑战推出的创新性的大数据处理产品,除却读写性能、存储压缩能力强大之外,还有安装简单、操作难度低等优势。今天我们就从常见的使用方式开始,给大家梳理一下TDengine的安装配置过程。
目前,TDengine服务端仅支持Linux X64系统,推荐CentOS 7.9 和 Ubuntu 18.04。硬件平台支持X64和arm64。 客户端支持Windows X64、Linux X64。mac版仍在开发中,未来将提供有限功能,用于开发环境。
下面,我们来分别从四种使用模式的角度探讨一下TDengine的安装部署。
1.本地使用单机版TDengine:
第一步:下载安装包:https://www.taosdata.com/cn/all-downloads/,一键式安装:https://www.taosdata.com/cn/all-downloads/
第二步:安装成功后,使用 systemctl start taosd命令来启动 TDengine 的服务进程。接下来使用systemctl status taosd命令检查服务是否正常工作。
现在,你就可以通过 TDengine 的命令行程序 taos 来访问并体验 TDengine了。
2.远程客户端连接使用单机版TDengine:
第一步,分别下载安装客户端和服务端(请确保客户端和服务端版本号保持一致):https://www.taosdata.com/cn/all-downloads/,安装:https://www.taosdata.com/cn/all-downloads/
第二步,在服务端的/etc/taos/taos.cfg文件中配置正确的fqdn参数(请避免使用localhost等容易本身就在客户端机器hosts文件中存在的名字),在客户端的hosts文件(或dns服务中)配置这个参数值以及对应的正确ip。
第三步,打开6030-6040的TCP+UDP端口以及6041,6042的TCP端口。
最后, 使用systemctl start taosd + systemctl status taosd命令确保服务正常启动后,在客户端使用taos -h fqdn(或者ip)直接连上服务端正常使用。
可以看出,和本机试跑TDengine相比起来,TDengine服务端与客户端分离的情况下多出了两个步骤。本着知其然知其所以然的精神,强烈建议大家了解一下下文中TDengine在安装部署模块的设计。
上述两种环境的配置差异可以简单归纳为这个逻辑:
即在网络环境正常的大前提下,可以干扰到TDengine客户端连接的只有上面这两种因素——1.端口配置;2.FQDN机制。
我们先来说端口配置规则:
TDengine要求数据库服务端服务器至少要保证端口:6030 - 6042的TCP和UDP端口都是开放的,其各个端口的用途如下:
但是,为了覆盖单机和集群两种场景,我们要求大家开放6030-6040的TCP+UDP端口以及6041,6042的TCP端口。而为了最大幅度降低意外情况的发生,我们强烈建议先关闭防火墙,等环境搭建完毕之后,再来配置端口。
由于在单机试用TDengine的情况下是没有防火墙参与的,所以我们才会不需要配置TDengine端口开放规则。
第二个因素则是FQDN:
FQDN的全称是Fully Qualified Domain Name。与域名相对,我们暂且翻译成全域名比较好理解一点。
由于上一期文章的铺垫,关于TDengine的FQDN相关原理和配置问题可以直接通过该篇文章来获取—— 如何彻底搞懂TDengine的fqdn概念?这一篇文章就够了。
正因为默认的fqdn参数值是本机的hostname,所以,在单机试用情况下,用户才可以无需任何配置直接使用客户端访问TDengine。
3.远程客户端连接使用集群版TDengine:
首先我们需要搭建一个可用的集群,这个环节请大家严格根据《TDengine集群安装、管理》的指导进行操作,可确保万无一失。
最后,在集群搭建完毕后,一定要确保客户端的hosts文件中添加了所有的集群节点的ip和fqdn参数值,确保它可以正确解析每个节点的ip。这样客户端就可以顺利地访问并使用TDengine的集群了。
四.最后,我们梳理一下连接器的使用
TDengine提供了丰富的应用程序开发接口,其中包括C/C++、Java、Python、Go、Node.js、C# 、Rust、RESTful 等,便于用户快速开发应用。对于他们来说,各种连接器能否顺利访问并使用TDengine才是他们最关注的问题。
官方文档上说:“当在另一台服务器使用连接器(除RESTful外)访问 TDengine 数据库的时候,我们需要安装与服务端相同版本号的客户端来使应用驱动(Linux系统中文件名为libtaos.so,Windows系统中为taos.dll)被安装在系统中。否则,在连接时就会产生“无法找到相应库文件”的错误。”
因此,大家一定不要忽略这一点——客户端正常访问并使用TDengine才是你的应用可以顺利使用TDengine的前提。
有些不熟悉的用户在安装完客户端就以为万事大吉,然后就去弄应用的连接配置了。有的用户则是使用taos连接命令看一下,又用一下"show databases"之类的命令发现没问题,就去弄应用的连接配置了。以上这两种都是不严谨的,在测试中一定要确保select以及insert操作的顺利返回预期结果,如:
|
1
2
3
|
create table test (ts timestamp, value int );insert into test values (now,1);select * from test; |
如果验证没有成功,请返回前文根据描述继续排查。如果仍然无效,请通过微信技术交流群,或者github上联系我们,我们会尽最大的努力帮助大家。衷心希望大家能对TDengine有一个清晰的入门理解,毕竟好的开始是成功的一半。
验证成功后,有应用程序使用需求的用户就可以移步到官方文档《TDengine连接器》,根据需要找到相应连接器的正确配置方式。
三分钟梳理TDengine安装部署的逻辑的更多相关文章
- hadoop记录-[Flink]Flink三种运行模式安装部署以及实现WordCount(转载)
[Flink]Flink三种运行模式安装部署以及实现WordCount 前言 Flink三种运行方式:Local.Standalone.On Yarn.成功部署后分别用Scala和Java实现word ...
- 10分钟学会RabbitMQ安装部署
一.单机版的 RabbitMQ 的安装部署 1.安装 Erlang 环境 wget http://erlang.org/download/otp_src_19.3.tar.gz tar -zxvf o ...
- [Flink]Flink1.6三种运行模式安装部署以及实现WordCount
前言 Flink三种运行方式:Local.Standalone.On Yarn.成功部署后分别用Scala和Java实现wordcount 环境 版本:Flink 1.6.2 集群环境:Hadoop2 ...
- 三分钟学会使用Docker部署.NET Core
大概快有一年的时间没有碰过docker了,理由很简单,基本上都是在IIS上部署,看到很多大佬都开始Devops持续化集成了,但相对来说成本会更高,但对于大型团队来说还是不错的,这不?不想被大伙甩下,哈 ...
- Spark-Unit1-spark概述与安装部署
一.Spark概述 spark官网:spark.apache.org Spark是用的大规模数据处理的统一计算引擎,它是为大数据处理而设计的快速通用的计算引擎.spark诞生于加油大学伯克利分校AMP ...
- Apache入门篇(一)之安装部署apache
一.HTTPD特性 (1)高度模块化:core(核心) + modules(模块) = apache(2)动态模块加载DSO机制: Dynamic Shared Object(动态共享对象)(3)MP ...
- 三分钟部署Laxcus大数据管理系统
Laxcus是Laxcus大数据实验室历时五年,全体系自主设计研发的国内首套大数据管理系统.能够支撑百万台级计算机节点,提供EB量级存储和计算能力,兼容SQL和关系数据库.最新的2.x版本已经实现对当 ...
- Storm入门教程 第三章Storm集群安装部署步骤、storm开发环境
一. Storm集群组件 Storm集群中包含两类节点:主控节点(Master Node)和工作节点(Work Node).其分别对应的角色如下: 主控节点(Master Node)上运行一个被称为N ...
- [转帖]VMware Vsphere 6.0安装部署 (三) vCenter Server安装
VMware Vsphere 6.0安装部署 (三) vCenter Server安装 2016年08月29日 14:59:14 dAng1r0Us 阅读数:72942 版权声明:本文为博主原创文 ...
- 三分钟快速上手TensorFlow 2.0 (下)——模型的部署 、大规模训练、加速
前文:三分钟快速上手TensorFlow 2.0 (中)——常用模块和模型的部署 TensorFlow 模型导出 使用 SavedModel 完整导出模型 不仅包含参数的权值,还包含计算的流程(即计算 ...
随机推荐
- js 加密和解密
// aes对称加密 const CryptoJS = require('crypto-js'); //引用AES源码js const key = CryptoJS.enc.Utf8.parse(&q ...
- PostgreSQL权限管理
一旦一个对象被创建,它会被分配一个所有者.所有者通常是执行创建语句的角色.对于大部分类型的对象,初始状态下只有所有者(或者超级用户)能够对该对象做任何事情.为了允许其他角色使用它,必须分配权限. 1 ...
- Python条件语句和基本数据类型
1.if基本语句 if 条件: 内部代码块 else: ...... 2.if支持嵌套 if 1 == 1: if 2 == 2: print('走一步') else: print('走两步') el ...
- Spring Boot 开启后缀匹配模式
项目原有 Java 配置为继承 WebMvcConfigurationSupport, 而WebMvcConfigurationSupport#requestMappingHandlerMapping ...
- java常用、通用代码或配置
pom.xml 支持springBoot parent <parent> <groupId>org.springframework.boot</groupId> & ...
- 前端之Vue day08 Vue3项目搭建、setup、toRefs
一.Vue3 介绍 # 新项目使用vue3,有部分老项目使用vue2 # vue3 的变化 1.性能的提升 -打包大小减少41% -初次渲染快55%, 更新渲染快133% -内存减少54% 2.源码的 ...
- DP4398 是一个立体声 24 位/192kHz 数模转换芯片-替代CS4398
DP4398 是一个立体声 24 位/192kHz 数模转换芯片.该 D/A 系统包括数字去加重.半分贝步长音量控制.ATAPI 通道混频.可选择的快速和慢速数字插补滤波器和过采样多位增量 Sigma ...
- 报错解决OSError: /lib64/libm.so.6: version `GLIBC_2.27' not found
使用pyg报错如下: 1 Traceback (most recent call last): 2 File "main.py", line 18, in <module&g ...
- 无界面Linux系统和Windows系统使用selenium爬取CNVD数据
因为CNVD官网采用了反爬机制,所以使用selenium能够更容易的爬取漏洞数据 1.在Windows中使用 注意根据chrome版本下载对应chromedriver 2.在无界面的Linux中使用 ...
- sudo apt-get install libncurses5-dev sudo apt-get install u-boot-tools
sudo apt-get install libncurses5-dev sudo apt-get install u-boot-tools