






















1.taosd-service.yaml
--- apiVersion: v1 kind: Service metadata: name: "taosd-service" namespace: "dev-rd2" labels: app: "tdengine" spec: ports: - name: tcp6030 protocol: "TCP" port: 6030 - name: tcp6041 protocol: "TCP" port: 6041 selector: app: "tdengine"
2.taosd-statefulset.yaml
--- apiVersion: apps/v1 kind: StatefulSet metadata: name: "tdengine" namespace: "dev-rd2" labels: app: "tdengine" spec: serviceName: "taosd-service" replicas: 3 updateStrategy: type: RollingUpdate selector: matchLabels: app: "tdengine" template: metadata: name: "tdengine" labels: app: "tdengine" spec: imagePullSecrets: - name: registry-shanghai3h-secret-netsimu containers: - name: "tdengine" image: "registry.abcd.com/rd-lib/tdengine/tdengine:3.3.6.9" imagePullPolicy: "IfNotPresent" #command: ["sh", "-c"] #args: ["sed -i '/^allowAllOrigins.*=.*true/a\\allowWebSockets = true' /etc/taos/taosadapter.toml && /tini -- /usr/bin/entrypoint.sh taosd "] 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-service" - 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" - name: TAOS_ADAPTER_CORS_ALLOW_ALL_ORIGINS value: "true" - name: TAOS_ADAPTER_CORS_ALLOW_WebSockets value: "true" # - name: TAOS_CHARSET # value: "utf8mb4" volumeMounts: - name: taosdata mountPath: /var/lib/taos startupProbe: exec: command: - taos-check failureThreshold: 360 periodSeconds: 10 readinessProbe: exec: command: - taos-check initialDelaySeconds: 10 timeoutSeconds: 30 livenessProbe: exec: command: - taos-check initialDelaySeconds: 60 timeoutSeconds: 30 #从默认值改为 30 秒 periodSeconds: 20 failureThreshold: 3 volumeClaimTemplates: - metadata: name: taosdata spec: accessModes: - "ReadWriteOnce" storageClassName: "local" resources: requests: storage: "5Gi"
3.部署
kubectl apply -f taosd-service.yaml -n dev-rd2
kubectl apply -f taosd-statefulset.yaml -n dev-rd2
4.(1-3)是前期主备,当然k8s环境事先要准备好,当前使用的是Harbor用来管理镜像
5.主要的操作流程
>安装Harbor
>安装K8s
>安装Docker Desktop
>docker pull tdengine/tdengine:3.3.6.9 下载镜像
>docker save -o tdengine-3.3.6.9.tar tdengine/tdengine:3.3.6.9
>docker push registry.abcd.com/rd-lib/tdengine/tdengine:3.3.6.9
>部署 kubectl apply -f taosd-service.yaml -n dev-rd2和kubectl apply -f taosd-statefulset.yaml -n dev-rd2
>K8sweb配置服务外部访问IP

>K8s修改配置

>K8s重建副本
>测试tdengine是否正常

此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。