TiDB K8S

article/2023/6/4 16:10:08

1、 命名空间

k create ns ti
k create namespace tidb-admin
k create namespace tidb-cluster
alias k='kubectl'
alias ti='k -n tidb'
alias tia='k -n tidb-admin'
alias tic='k -n tidb-cluster'

2、 Helm安装 tidb-operator

helm repo add pingcap https://charts.pingcap.org/
helm repo update
helm repo list
helm install --namespace tidb-admin tidb-operator pingcap/tidb-operator --version v1.4.4
tic api-resources | grep pingcap
statefulsets                       asts           apps.pingcap.com               true         StatefulSet
backups                            bk             pingcap.com                    true         Backup
backupschedules                    bks            pingcap.com                    true         BackupSchedule
restores                           rt             pingcap.com                    true         Restore
tidbclusterautoscalers             ta             pingcap.com                    true         TidbClusterAutoScaler
tidbclusters                       tc             pingcap.com                    true         TidbCluster
tidbinitializers                   ti             pingcap.com                    true         TidbInitializer
tidbmonitors                       tm             pingcap.com                    true         TidbMonitor

似乎缺少了TidbDashboard!

ti create -f https://raw.githubusercontent.com/pingcap/tidb-operator/v1.4.4/manifests/crd.yamlcustomresourcedefinition.apiextensions.k8s.io/backupschedules.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/backups.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/dmclusters.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/restores.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/tidbclusterautoscalers.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/tidbclusters.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/tidbdashboards.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/tidbinitializers.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/tidbmonitors.pingcap.com created
customresourcedefinition.apiextensions.k8s.io/tidbngmonitorings.pingcap.com created
ti api-resources | grep ping
backups                            bk             pingcap.com/v1alpha1                 true         Backup
backupschedules                    bks            pingcap.com/v1alpha1                 true         BackupSchedule
dmclusters                         dc             pingcap.com/v1alpha1                 true         DMCluster
restores                           rt             pingcap.com/v1alpha1                 true         Restore
tidbclusterautoscalers             ta             pingcap.com/v1alpha1                 true         TidbClusterAutoScaler
tidbclusters                       tc             pingcap.com/v1alpha1                 true         TidbCluster
tidbdashboards                     td             pingcap.com/v1alpha1                 true         TidbDashboard
tidbinitializers                   ti             pingcap.com/v1alpha1                 true         TidbInitializer
tidbmonitors                       tm             pingcap.com/v1alpha1                 true         TidbMonitor
tidbngmonitorings                  tngm           pingcap.com/v1alpha1                 true         TidbNGMonitoring

3、安装 TiDB Cluster

问题1:storageClassName
csi-localpv

问题2:Failed to pull image “k8s.gcr.io/kube-scheduler:v1.18.17”
k8smaster.qfusion.irds/irds/kube-scheduler:v1.18.17

在这里插入图片描述

apiVersion: pingcap.com/v1alpha1
kind: TidbCluster
metadata:name: dbanamespace: tidb-cluster
spec:# ** Basic Configuration **#   # TiDB cluster versionversion: v6.5.0# Time zone of TiDB cluster Podstimezone: UTCconfigUpdateStrategy: RollingUpdatehostNetwork: falseimagePullPolicy: IfNotPresentenableDynamicConfiguration: truepd:baseImage: pingcap/pdreplicas: 1requests:cpu: "50m"memory: 50Mistorage: 50Milimits:cpu: "6000m"memory: 20Giconfig: |lease = 3enable-prevote = truestorageClassName: "csi-localpv"mountClusterClientSecret: truetidb:baseImage: pingcap/tidbconfig: |split-table = trueoom-action = "log"replicas: 1requests:cpu: "50m"memory: 50Mistorage: 10Gilimits:cpu: "8000m"memory: 40GistorageClassName: "csi-localpv"service:type: NodePortmysqlNodePort: 30002statusNodePort: 30080tikv:baseImage: pingcap/tikvconfig: |[storage][storage.block-cache]capacity = "32GB"replicas: 3requests:cpu: "50m"memory: 50Mistorage: 100Gilimits:cpu: "12000m"memory: 40GistorageClassName: "csi-localpv"mountClusterClientSecret: trueenablePVReclaim: falsepvReclaimPolicy: DeletetlsCluster: {}

4、访问

kubectl port-forward -n tidb-cluster svc/dba-tidb 14000:4000 > pf14000.out &
mysql --comments -h 127.0.0.1 -P 14000 -u root
select tidb_version()\G

在这里插入图片描述

  • port-forward

5、TiDB Dashboard

apiVersion: pingcap.com/v1alpha1
kind: TidbDashboard
metadata:name: basic
spec:baseImage: pingcap/tidb-dashboardversion: latest## tidb cluster to be monitored## ** now only support monitoring one tidb cluster **clusters:- name: dba## describes the compute resource requirements and limits.## Ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/requests:storage: 10GistorageClassName: "csi-localpv"

密码是TiDB的root密码,默认是“空”
在这里插入图片描述

  • TiDB Dashboard
  • TiDB Dashboard

参考文档

TiDB Operator部署TiDB集群的监控与告警

Deploy TiDB Operator on Kubernetes

Get Started with TiDB Operator on Kubernetes

Helm

Advanced StatefulSet Controller

http://www.ngui.cc/article/show-1007544.html

相关文章

论文解读:PP-LiteSeg: A Superior Real-Time Semantic Segmentation Model

发表时间:2022 论文地址:https://arxiv.org/abs/2204.02681 项目地址:https://github.com/PaddlePaddle/PaddleSeg PP-LiteSeg,一个新的轻量级实时语义分割任务模型,在分割精度和推理速度之间实现了一种最先进的权衡…

考研复试——概率论(2)

文章目录概率论1. 什么是概率?请给出定义并解释它。2. 什么是条件概率?请举一个例子并解释。3. 什么是贝叶斯定理?请举一个例子并解释。4. 什么是期望值和方差?请解释这些概念及其在统计学和概率论中的应用。5. 什么是随机变量&am…

Netty进阶《ChannelPoolMap源码分析》

ChannelPoolMap是用来存储ChannelPool和指定key的一个集合Map,实际的应用场景就是服务器端是一个分布式集群服务,拥有多个配置地址,这样我们就可以配置多个服务地址,减轻单台服务器的压力;Netty框架提供了ChannelPoolM…

从零开始学习目标检测:YOLO算法详解

从零开始学习目标检测:YOLO算法详解 文章目录从零开始学习目标检测:YOLO算法详解1. 🌟什么是目标检测?2.🌟传统的目标检测与基于深度学习的目标检测3.🌟目标检测算法的工作流程4.🌟目标检测可以干什么&…

【华为OD机试 2023最新 】 最优资源分配(C++)

文章目录 题目描述输入描述输出描述备注用例题目解析C++题目描述 某块业务芯片最小容量单位为1.25G,总容量为M*1.25G,对该芯片资源编号为1,2,…,M。该芯片支持3种不同的配置,分别为A、B、C。 配置A:占用容量为 1.25 * 1 = 1.25G配置B:占用容量为 1.25 * 2 = 2.5G配置C…

车机娱乐系统

BYD哪吒理想蔚来小鹏埃安吉利(魅族)大众 MQB大众MEB奥迪娱乐主机内置TboxYes生产商惠州比亚迪电子有限公司惠州市德赛西威汽车电子股份有限公司惠州市德赛西威汽车电子股份有限公司伟创力电脑(苏州)有限公司比亚迪汽车工业有限公司铁将军汽车电子股份有限…

数据结构与算法二 算法分析

一 算法分析 前面我们已经介绍了,研究算法的最终目的就是如何花更少的时间,如何占用更少的内存去完成相同的需求,并且也通过案例演示了不同算法之间时间耗费和空间耗费上的差异,但我们并不能将时间占用和空间占用量化&#xff0c…

【kuangbin计划】简单DP(1-3题 java/c++双语言详细解析)

本意是同时提供java以及c两种语言的代码的题解 但是无奈oj网站一直欺负java语言慢, 因此本篇题解部分java代码只提供思路参考 不提供语言优化,有兴趣的同学可以自行优化java版本 过不了的java语言均已注明! 目录 4546. 最大和加强加强版 - 线…

双重检查锁定与延迟优化

双重检查锁定与延迟优化1. 双重所检查的由来2. 问题根源3. 基于volatile的解决方案4. 基于类初始化的解决方案在Java多线程程序中,有时需要采用延迟初始化来降低初始化类和创建对象的开销。双重检查锁定是常见的延迟初始化技术,但它是一个错误的用法。本…

STM32-9 STM32CubeMX的使用方法

一、 说明 本项目是基于FreeRTOS项目的STM32CubeMX开发方式,说明了具体配置与相关参数,以及mdk使用,裸机也可以参考本配置。 二、项目建立步骤 1、新建项目 2、选择芯片型号 3、配置时钟 RCC 设置,选择 HSE(外部高速时钟) 和L…