云原生TDengine-v3.0部署手册

云原生TDengine-v3.0部署手册

  • 一、管理namespace
    • 1.1 创建namespace
    • 1.2 namespaces列表
  • 二、配置3份yaml文件
    • 2.1 tdengine3-storage-class.yaml
    • 2.2 taosd-service.yaml
    • 2.3 taosd-tdengine.yaml
  • 三、服务部署
    • 3.1 部署StorageClass
    • 3.2 部署Service
    • 3.3 部署StatefulSet
    • 3.4 查看启动日志
  • 四、TDengine功能验证
    • 4.1 验证:创建、查询
    • 4.2 三副本节点功能验证

一、管理namespace

1.1 创建namespace

kubectl create namespace taos

1.2 namespaces列表

kubectl get namespaces -o wide

二、配置3份yaml文件

2.1 tdengine3-storage-class.yaml

创建name=tdengine3-storage-classnamespace=taos的存储类名

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: tdengine3-storage-class
  namespace: taos
provisioner: diskplugin.csi.alibabacloud.com

2.2 taosd-service.yaml

创建name=taosdnamespace=taosapp=tdengine的Service

---
apiVersion: v1
kind: Service
metadata:
  name: "taosd"
  namespace: "taos"
  labels:
    app: "tdengine"
spec:
  ports:
    - name: tcp6030
      protocol: "TCP"
      port: 6030
    - name: tcp6041
      protocol: "TCP"
      port: 6041
  selector:
    app: "tdengine"

2.3 taosd-tdengine.yaml

创建StatefulSet服务,需要关注以下参数与上述步骤设置的参数一致

  • name: “tdengine”
  • namespace: “taos”
  • storage: “20Gi”(磁盘alicloud-disk-efficiency最低20Gi才能分配成功)
  • storageClassName: “tdengine3-storage-class”
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: "tdengine"
  namespace: "taos"
  labels:
    app: "tdengine"
spec:
  serviceName: "taosd"
  replicas: 3
  updateStrategy:
    type: RollingUpdate
  selector:
    matchLabels:
      app: "tdengine"
  template:
    metadata:
      name: "tdengine"
      labels:
        app: "tdengine"
    spec:
      containers:
        - name: "tdengine"
          image: "tdengine/tdengine:3.0.0.0"
          imagePullPolicy: "IfNotPresent"
          ports:
            - name: tcp6030
              protocol: "TCP"
              containerPort: 6030
            - name: tcp6041
              protocol: "TCP"
              containerPort: 6041
          env:
            # POD_NAME for FQDN config
            - name: POD_NAME
              valueFrom:
                fieldRef:
                  fieldPath: metadata.name
            # SERVICE_NAME and NAMESPACE for fqdn resolve
            - name: SERVICE_NAME
              value: "taosd"
            - name: STS_NAME
              value: "tdengine"
            - name: STS_NAMESPACE
              valueFrom:
                fieldRef:
                  fieldPath: metadata.namespace
            # TZ for timezone settings, we recommend to always set it.
            - name: TZ
              value: "Asia/Shanghai"
            # TAOS_ prefix will configured in taos.cfg, strip prefix and camelCase.
            - name: TAOS_SERVER_PORT
              value: "6030"
            # Must set if you want a cluster.
            - name: TAOS_FIRST_EP
              value: "$(STS_NAME)-0.$(SERVICE_NAME).$(STS_NAMESPACE).svc.cluster.local:$(TAOS_SERVER_PORT)"
            # TAOS_FQND should always be set in k8s env.
            - name: TAOS_FQDN
              value: "$(POD_NAME).$(SERVICE_NAME).$(STS_NAMESPACE).svc.cluster.local"
          volumeMounts:
            - name: taosdata
              mountPath: /var/lib/taos
          readinessProbe:
            exec:
              command:
                - taos-check
            initialDelaySeconds: 5
            timeoutSeconds: 5000
          livenessProbe:
            exec:
              command:
                - taos-check
            initialDelaySeconds: 15
            periodSeconds: 20
  volumeClaimTemplates:
    - metadata:
        name: taosdata
      spec:
        accessModes:
          - "ReadWriteOnce"
        storageClassName: "tdengine3-storage-class"
        resources:
          requests:
            storage: "20Gi"

三、服务部署

在这里插入图片描述

3.1 部署StorageClass

Kubectl apply -f tdengine3-storage-class.yaml

在这里插入图片描述

3.2 部署Service

kubectl apply -f taosd-service.yaml 

3.3 部署StatefulSet

kubectl apply -f tdengine.yaml

在这里插入图片描述
在这里插入图片描述

3.4 查看启动日志

kubectl exec -it tdengine-0 -- tail -f /var/log/taos/taosdlog.0 

四、TDengine功能验证

4.1 验证:创建、查询

在这里插入图片描述

taos> show dnodes;
     id      |            endpoint            | vnodes | support_vnodes |   status   |       create_time       |              note              |
=================================================================================================================================================
           1 | tdengine-0.taosd.tdengine.s... |      0 |              4 | ready      | 2023-07-08 15:47:02.133 |                                |
           2 | tdengine-1.taosd.tdengine.s... |      0 |              4 | ready      | 2023-07-08 15:48:27.335 |                                |
           3 | tdengine-2.taosd.tdengine.s... |      0 |              4 | ready      | 2023-07-08 15:50:36.168 |                                |
Query OK, 3 rows in database (0.006285s)

taos> create database if not exists test replica 3;
Query OK, 0 of 0 rows affected (6.147246s)

taos> create table if not exists t1(ts timestamp, n int);
Query OK, 0 of 0 rows affected (0.014969s)

taos>  insert into t1 values(now, 1)(now+1s, 2);
Query OK, 2 of 2 rows affected (0.016294s)


taos> select * from t1;
           ts            |      n      |
========================================
 2023-07-08 17:37:11.969 |           1 |
 2023-07-08 17:37:12.969 |           2 |
 2023-07-08 17:37:13.452 |           1 |
 2023-07-08 17:37:14.170 |           1 |
 2023-07-08 17:37:14.452 |           2 |
 2023-07-08 17:37:14.775 |           1 |
 2023-07-08 17:37:15.170 |           2 |
 2023-07-08 17:37:15.397 |           1 |
 2023-07-08 17:37:15.775 |           2 |
 2023-07-08 17:37:15.870 |           1 |
 2023-07-08 17:37:16.220 |           1 |
 2023-07-08 17:37:16.397 |           2 |
 2023-07-08 17:37:16.546 |           1 |
 2023-07-08 17:37:16.828 |           1 |
 2023-07-08 17:37:16.870 |           2 |
 2023-07-08 17:37:17.154 |           1 |
 2023-07-08 17:37:17.220 |           2 |
 2023-07-08 17:37:17.546 |           2 |
 2023-07-08 17:37:17.828 |           2 |
 2023-07-08 17:37:18.154 |           2 |
Query OK, 20 rows in database (0.008757s)

4.2 三副本节点功能验证

当在三副本的集群中创建二副本的数据库会有错误提示:

taos> create database if not exists test_0 replica 2;

DB error: Invalid option replications: 2, only 1, 3 allowed (0.000204s)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/37050.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flask新手教程

Flask简介 Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。 Flask 可以很好地结合MVC模式进行开发,开发人员分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或…

微服务 云原生:微服务相关技术简要概述

后端架构演进 单体架构 所谓单体架构,就是只有一台服务器,所有的系统、程序、服务、应用都安装在这一台服务器上。比如一个 bbs 系统,它用到的数据库,它需要存储的图片和文件等,统统都部署在同一台服务器上。 单体架…

有PMP有没有必要换cspm?未来的发展前景如何?

最近 CSPM 证书很热门,CSPM 相关问题大家都很关心,今天本橘座就给大家全面解答一下 CSPM到底是何方神圣? 文章主要是解答下面几个常见问题,其他问题可以留言或者私信咨询我哦~ 一、什么是 CSPM证书?跟PMP是什么关系&a…

STM32F103驱动VL53L0X激光测距模块

STM32F103驱动VL53L0X激光测距模块 简介引脚定义STM32F103ZET6开发板与VL53L0X模块接线测试代码实验结果 简介 TOF 是飞行时间(Tlme of Flight)技术的缩写,即传感器发出经过调制的近红外光,遇到物体后反射,传感器通过…

「提高你的CSS技能」:15个重要的CSS属性详解

这篇文章介绍了15个重要的CSS属性,旨在提高读者的CSS知识和技能。文章以清晰的方式解释了每个属性的作用和用法,并提供了相应的示例代码。通过这篇文章,读者可以了解到一些有趣且实用的CSS属性。 1:in-range 和:out-of-range 伪类 CSS的:in…

[C++] C++特殊类设计 以及 单例模式:设计无法拷贝、只能在堆上创建、只能在栈上创建、不能继承的类, 单例模式以及饿汉与懒汉的场景...

特殊类 1. 不能被拷贝的类 注意, 是不能被拷贝的类, 不是不能拷贝构造的类. 思路就是 了解什么时候 会以什么途径 发生拷贝, 然后将路堵死. 拷贝发生一般发生在 拷贝构造 和 赋值重载 所以, 只要把类的这两个成员函数堵死, 此类就不能拷贝了 C98 在C11之前, 可以通过这种方…

python-计算两个矩阵的相似度。

余弦相似度 在pytorch中,有一个专门的函数用于计算相似度:torch.cosine_similarity() https://pytorch.org/docs/stable/nn.functional.html#cosine-similarity import torch import torch.nn.functional as F input1 torch.randn(100, 128) input2 t…

技术讨论:我心中TOP1的编程语言

欢迎关注博主 六月暴雪飞梨花 或加入【六月暴雪飞梨花】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术…

使用STM32 再实现感应开关盖垃圾桶

硬件介绍 SG90舵机 如上图所示的舵机SG90,橙线对应PWM信号,而PWM波的频率不能太高,大约50Hz,即周期0.02s,20ms左右。 在20ms的周期内,高电平占多少秒和舵机转到多少度的关系如下: 0.5ms-----0度…

msvcr110.dll丢失的修复教程,找不到msvcr110.dll解决办法哪个更推荐

msvcr110.dll是微软的Visual C运行库文件之一。它是Microsoft Visual Studio 2012的一部分,用于支持运行在Windows操作系统上使用Visual C编写的应用程序。在Windows系统中非常重要,如果丢失或是损坏就会造成很多程序无法启动运行。 会出现以下的报错提…

【云原生】k8s之存储卷

容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。其次&a…

简单版本视频播放服务器V1

一直想做个家用版本的视频播放器,通过这个可以实现简单的电脑,通过浏览器就是可以访问电脑里面的视频,通过手机,平板等都是可以访问自己的视频服务了 后端代码: package mainimport ("fmt""io/iouti…

JMeter 中 3 种参数值的传递

目录 前言: (一) 从 CSV 文件读取要批量输入的变量 (二) 利用 Cookie 进行值的传递 (三) 利用正则匹配提取上一个接口的返回数据作为下个请求的输入 前言: 在JMeter中,参数值的传递是非常重要的,因为它允许你在测试过程中动态…

Proxy-Reflect使用详解

1 监听对象的操作 2 Proxy类基本使用 3 Proxy常见捕获器 4 Reflect介绍和作用 5 Reflect的基本使用 6 Reflect的receiver Proxy-监听对象属性的操作(ES5) 通过es5的defineProperty来给对象中的某个参数添加修改和获取时的响应式。 单独设置defineProperty是只能一次设置一…

Spring专家课程Day01_Spring-IOC

​ 文章目录 基础配置1)基础文件结构(Maven项目创建) 一、01_Spring概述_IOC_HelloWorld1.Spring框架的两个核心功能1.1) IOC/DI ,控制反转依赖注入!1.2) AOP,面向切面编程 2.IOC的两种模式2.1)配置文件中配置 Bean2.2)配置文件,组件扫描注解类注解Component 二、02_JavaBean_J…

Ajax简介和实例

目录 什么是 AJAX ? AJAX实例 ajax-get无参 ajax-get有参 对象和查询字符串的互转 ajax-post ajax-post 表单 AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 什么是 AJAX ? 菜鸟教程是这样介绍的&#xff1a…

本地Linux 部署 Dashy 并远程访问

文章目录 简介1. 安装Dashy2. 安装cpolar3.配置公网访问地址4. 固定域名访问 转载自cpolar极点云文章:本地Linux 部署 Dashy 并远程访问 简介 Dashy 是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你…

Gradle下载和配置教程:Windows、Mac和Linux系统安装指南

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

扒开 TCP 的外衣,看清 TCP 的本质

TCP 非常重要,它的内容很多,今天只能讲解其中的一部分,但足以让你超越 80 % 的编程开发人员对于 TCP 的认知。 本篇内容非常多,非常干,希望你花点时间仔细研究,我相信会对你有所帮助。 1. TCP 协议是什么…

云之道知识付费V2小程序V3.1.1独立平台版安装使用教程

据播播资源了解,云之道知识付费小程序是一款专注于知识付费的小程序源码,为内容创业者、自媒体和教育培训机构提供全方位的互联网解决方案。 由播播资源小编全套安装云之道知识付费V2独立版系统,系统支持无限多开,相比上几版出现…