kind+tidb

官网介绍:在 Kubernetes 上快速上手 TiDB | PingCAP 文档中心

下面是具体细节:

一、安装

1.安装kind,一定要使用最新版本!!!

kind官网:kind – Quick Start

curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.18.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind

2.安装docker

更换国内源

安装依赖

sudo apt-get install apt-transport-https ca-certificates software-properties-common curl

安装阿里源gpg密钥

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

安装Docker-ce(社区版)

sudo apt-get update
sudo apt-get install docker-ce

测试

sudo docker run hello-world

3.安装kubelet

snap install kubectl --classic# 查看kubectl版本
kubectl version --client

4.安装helm,官网:Helm | Installing Helm

wget https://get.helm.sh/helm-v3.11.3-linux-amd64.tar.gz
tar -zxvf helm-v3.0.0-linux-amd64.tar.gz
mv linux-amd64/helm /usr/local/bin/helm

二、操作,具体可参考tidb官网在 Kubernetes 上快速上手 TiDB | PingCAP 文档中心

#安装 TiDB Operator CRDs
kubectl create -f https://raw.githubusercontent.com/pingcap/tidb-operator/v1.4.4/manifests/crd.yaml
#安装 Helm 3 并使用 Helm 3 部署 TiDB Operator。
helm repo add pingcap https://charts.pingcap.org/
#为 TiDB Operator 创建一个命名空间,使用阿里云上的镜像。
helm install --namespace tidb-admin tidb-operator pingcap/tidb-operator --version v1.4.4 \--set operatorImage=registry.cn-beijing.aliyuncs.com/tidb/tidb-operator:v1.4.4 \--set tidbBackupManagerImage=registry.cn-beijing.aliyuncs.com/tidb/tidb-backup-manager:v1.4.4 \--set scheduler.kubeSchedulerImageName=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler
#检查 TiDB Operator 组件是否正常运行起来:等待到都是running情况
kubectl get pods --namespace tidb-admin -l app.kubernetes.io/instance=tidb-operator
#部署 TiDB 集群
kubectl create namespace tidb-cluster && \kubectl -n tidb-cluster apply -f https://raw.githubusercontent.com/pingcap/tidb-operator/v1.4.4/examples/basic-cn/tidb-cluster.yaml
#部署独立的 TiDB Dashboard
kubectl -n tidb-cluster apply -f https://raw.githubusercontent.com/pingcap/tidb-operator/v1.4.4/examples/basic-cn/tidb-dashboard.yaml
#查看POD运行状态,等待都是running状态:
watch kubectl get po -n tidb-cluster
#获取 tidb-cluster 命名空间中的服务列表:
kubectl get svc -n tidb-cluster
#使用以下命令转发本地端口到集群
kubectl port-forward -n tidb-cluster svc/basic-tidb 14000:4000 > pf14000.out &
#连接tidb
mysql --comments -h 127.0.0.1 -P 14000 -u root
#暴露grafana端口
kubectl port-forward -n tidb-cluster svc/basic-grafana 3000 > pf3000.out &
#通过http://localhost:3000访问,admin admin
#暴露tidb dashboard
kubectl port-forward -n tidb-cluster svc/basic-tidb-dashboard-exposed 12333 > pf12333.out &
#通过 http://localhost:12333 访问,无密码

遇到坑:

1.basic-tidb-0 一直启动失败 :CrashLoopBackOff

去了tidb社区提问:basic-tidb-0 一直启动失败 :CrashLoopBackOff - TiDB 的问答社区

kubectl logs -n tidb-cluster -f basic-tidb-0 -c tidb 执行结果:
start tidb-server …
/tidb-server --store=tikv --advertise-address=basic-tidb-0.basic-tidb-peer.tidb-cluster.svc --host=0.0.0.0 --path=basic-pd:2379 --config=/etc/tidb/tidb.toml
–log-slow-query=/var/log/tidb/slowlog
[2023/04/24 01:34:12.357 +00:00] [INFO] [cpuprofile.go:113] [“parallel cpu profiler started”]
[2023/04/24 01:34:12.357 +00:00] [FATAL] [terror.go:300] [“unexpected error”] [error=“path "/docker/2e800829730d53f792c9ac0b32a64ff153094e9b7df0208d2bc9a14d31f4526b" is not a descendant of mount point root "/docker/2e800829730d53f792c9ac0b32a64ff153094e9b7df0208d2bc9a14d31f4526b/kubelet" and cannot be exposed from "/sys/fs/cgroup/rdma/kubelet"”] [stack=“github.com/pingcap/tidb/parser/terror.MustNil\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/parser/terror/terror.go:300\nmain.setGlobalVars\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/tidb-server/main.go:615\nmain.main\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/tidb-server/main.go:208\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250”] [stack=“github.com/pingcap/tidb/parser/terror.MustNil\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/parser/terror/terror.go:300\nmain.setGlobalVars\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/tidb-server/main.go:615\nmain.main\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/tidb-server/main.go:208\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250”]

解决办法:将kind从0.10升级到最新版本1.8版本,重新开始操作

kind delete cluster
升级kind
然后重新操作

2.Temporary failure in name resolution(域名解析暂时失败)

vm连接网络来回切换下,或者重启下虚拟机,暂时原因还没找到

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国产数据库中统计信息自动更新机制

数据库中统计信息描述的数据库中表和索引的大小数以及数据分布状况,统计信息的准确性对优化器选择执行计划时具有重要的参考意义。本文简要整理了下传统数据库和国产数据库中统计信息的自动更新机制,以加深了解。 1、数据库统计信息介绍 优化器是数据库…

代码随想录训练营day27

第七章 回溯算法part03 1.LeetCode. 1.1题目链接:39. 组合总和 文章讲解:代码随想录 视频讲解:B站卡哥视频 1.2思路:题目中的无限制重复被选取,吓得我赶紧想想 出现0 可咋办,然后看到下面提示&#xff…

boost::asio::ip::tcp/udp::socket::release 函数为什么限制 Windows 8.1 才可以调用?

如本文题目所示,这是因为只有在 Windows 8.1(Windows Server 2012 RC)及以上 Windows 操作版本才提供了运行时,修改/删除完成端口关联的ABI接口。 boost::asio 在 release 函数底层实现之中是调用了 FileReplaceCompletionInform…

【Linux】权限理解

权限理解 1. shell命令以及运行原理2. Linux权限的概念3. Linux权限管理3.1 文件访问者的分类(人)3.2 文件类型和访问权限(事物属性)3.2.1 文件类型3.2.2 基本权限 3.3 文件权限值的表示方法3.4 文件访问权限的相关设置方法3.4.1 …

【医学嵌入模型】中文医疗文本处理大模型 PCL-MedBERT

中文医疗文本处理大模型 PCL-MedBERT 提出背景对ELECTRA限制的深入分析eHealth的创新方法实体识别关系抽取 总结 最近再做医学项目,需要从文本中抽取医学概念和关系,通用模型的抽取效果还可以。 但还想找医学嵌入模型,能够更准确地从文本中识…

【题解】—— LeetCode一周小结13

【题解】—— 每日一道题目栏 上接:【题解】—— LeetCode一周小结12 25.零钱兑换 II 题目链接:518. 零钱兑换 II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合…

SpringMVC设置全局异常处理器

文章目录 背景分析使用ControllerAdvice(RestControllerAdvice)ExceptionHandler实现全局异常全局异常处理-多个处理器匹配顺序存在一个类中存在不同的类中 对于过滤器和拦截器中的异常,有两种思路可以考虑 背景 在项目中我们有需求做一个全…

什么是HTTP? HTTP 和 HTTPS 的区别?

文章目录 一、HTTP二、HTTPS三、区别参考文献 一、HTTP HTTP (HyperText Transfer Protocol),即超文本运输协议,是实现网络通信的一种规范 在计算机和网络世界有,存在不同的协议,如广播协议、寻址协议、路由协议等等… 而HTTP是…

【Blockchain】GameFi | NFT

Blockchain GameFiGameFi顶级项目TheSandbox:Decentraland:Axie Infinity: NFTNFT是如何工作的同质化和非同质化区块链协议NFT铸币 GameFi GameFi是游戏和金融的组合,它涉及区块链游戏,对玩家提供经济激励&#xff0c…

Linux——进程管理

目录 作业和进程的概念 程序与进程的关系 查看进程信息——ps,top ps命令 top命令 设置进程的优先级——nice,renice nice命令 renice命令 查看进程信息——pgrep,pstree pgrep命令 pstree命令 切换进程——jobs,bg&a…

mybatis 一对多的连接查询

4.1 嵌套查询 vs 连接查询sql不同:连接查询:涉及多表连接, 当出现重复列时 需要对重复的列进行 列的重命名嵌套查询: 就是单表查询参与的mapper文件不同:连接查询: 在一个mapper文件中 配置即可嵌套查询: 需要 在 association或collection 中 通过 select 调用 另外的mapper…

蓝桥杯算法题-正则问题

问题描述 考虑一种简单的正则表达式: 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是: xxxxxx,长度是 6。 输入格式 一个由 x()| 组成的正则表达式。…

MySQL事务与锁

什么是事务 事务是数据库管理系统(DBMS)执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。 事务的4大特性: 原子性(Atomicity)一致性(Consistent)隔离性(lso…

Python 用pygame简简单单实现一个打砖块

# -*- coding: utf-8 -*- # # # Copyright (C) 2024 , Inc. All Rights Reserved # # # Time : 2024/3/30 14:34 # Author : 赫凯 # Email : hekaiiii163.com # File : ballgame.py # Software: PyCharm import math import randomimport pygame import sys#…

Linux 个人笔记之三剑客 grep sed awk

文章目录 零、预一、grep 文本过滤工具基础篇实战篇 二、sed 字符流编辑器基础篇实战篇 三、awk 文本处理工具基础篇实战篇 四、附xargsuniq & sort基础篇实战篇 cut 零、预 bash 的命令行展开 {} $ echo file_{1..4} file_1 file_2 file_3 file_4$ echo file_{a..d} file_…

【项目技术介绍篇】若依管理系统功能介绍

作者介绍:本人笔名姑苏老陈,从事JAVA开发工作十多年了,带过大学刚毕业的实习生,也带过技术团队。最近有个朋友的表弟,马上要大学毕业了,想从事JAVA开发工作,但不知道从何处入手。于是&#xff0…

如何去为快消品做商业模式——循环购模式给你答案!

大家好,我是吴军,来自一家专注于软件开发与商业模式创新的公司。 我们公司的主要业务是开发商城系统,以及为客户量身打造独特的商业模式。至今,我们已经成功创造了超过两百种各具特色的商业模式。 今天,我想为大家介绍…

v3-admin-vite 改造自动路由,view页面自解释Meta

需求 v3-admin-vite是一款不错的后端管理模板,主要是pany一直都在维护,最近将后台管理也进行了升级,顺便完成一直没时间解决的小痛痒: 在不使用后端动态管理的情况下。我不希望单独维护一份路由定义,我希望页面是自解…

Git命令上传本地项目至github

记录如何创建个人仓库并上传已有代码至github in MacOS环境 0. 首先下载git 方法很多 这里就不介绍了 1. Github Create a new repository 先在github上创建一个空仓库,用于一会儿链接项目文件,按照自己的需求设置name和是否private 2.push an exis…