在 Kubernetes 上部署 TDengine 集群,作为面向云原生架构设计的时序数据库,TDengine 支持 Kubernetes 部署使用 YAML 文件一步一步从头创建一个 TDengine 集群,并重点介绍 Kubernetes 环境下 TDengine 的常用操作
应用文档
适用于平台建设大量设备位置采集接入的情况.
环境准备
本文适用 Kubernetes v1.5 以上版本
请提前安装好相应软件,以及使用的TDengine的版本伟3.0.0
Kubernetes 已经安装部署并能正常访问使用或更新必要的容器仓库或其他服务
连接管理工具
默认账户密码:root/taosdata
创建 namespace
tdengine-namespace.yml
apiVersion: v1
kind: Namespace
metadata:
name: timedb
创建固定的存储pv&pvc
apiVersion: v1
kind: PersistentVolume
metadata:
name: timedb-taosdata-tdengine-0
namespace: timedb
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
storageClassName: nfs-persist
nfs:
path: /nfs/data/timedb-taosdata-tdengine-0
server: 10.0.0.27
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: timedb-taosdata-tdengine-1
namespace: timedb
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
storageClassName: nfs-persist
nfs:
path: /nfs/data/timedb-taosdata-tdengine-1
server: 10.0.0.27
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: timedb-taosdata-tdengine-2
namespace: timedb
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
storageClassName: nfs-persist
nfs:
path: /nfs/data/timedb-taosdata-tdengine-2
server: 10.0.0.27
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: taosdata-tdengine-0
namespace: timedb
annotations:
kubesphere.io/alias-name: tdengine
kubesphere.io/creator: admin
volume.beta.kubernetes.io/storage-provisioner: nfs-client
finalizers:
- kubernetes.io/pvc-protection
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: nfs-persist
volumeName: timedb-taosdata-tdengine-0
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: taosdata-tdengine-1
namespace: timedb
annotations:
kubesphere.io/alias-name: tdengine
kubesphere.io/creator: admin
volume.beta.kubernetes.io/storage-provisioner: nfs-client
finalizers:
- kubernetes.io/pvc-protection
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: nfs-persist
volumeName: timedb-taosdata-tdengine-1
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: taosdata-tdengine-2
namespace: timedb
annotations:
kubesphere.io/alias-name: tdengine
kubesphere.io/creator: admin
volume.beta.kubernetes.io/storage-provisioner: nfs-client
finalizers:
- kubernetes.io/pvc-protection
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: nfs-persist
volumeName: timedb-taosdata-tdengine-2
配置 Service 服务
创建服务文件taosd-service.yaml
apiVersion: v1
kind: Service
metadata:
name: "taosd"
labels:
app: "tdengine"
#这里指定对应的命名空间
namespace: "timedb"
spec:
ports:
- name: tcp6030
protocol: "TCP"