写点什么

在 k8s 上部署 tidb 数据库

  • 2024-09-20
    北京
  • 本文字数:1277 字

    阅读完需:约 4 分钟

作者: DBA 炸鸡原文来源:https://tidb.net/blog/52bf40fc

前言

最近开始关注重新学习 k8s,主要还是结合数据库做实践。本文的目标是将 tidb 数据库部署在 k8s。(仅满足测试环境学习,生产部署需请参考 k8s 和 tidb 官方文档。)


基础环境:


第一部分 用 kind 部署 k8s

1 kind 是什么?

kind is a tool for running local Kubernetes clusters using Docker container “nodes”. kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI.


Kind 是一种用于使用 Docker 容器作为“节点”运行本地 Kubernetes 集群的工具。 Kind 主要用于测试 Kubernetes 本身,但也可用于本地开发或 CI。


简答来说就是它会起一个 docker 容器模拟 k8s,这个模拟环境我们可以当 k8s 测试集群来用。

kind 安装

# 下载对应平台kind 二进制文件curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.24.0/kind-linux-amd64# 添加执行权限chmod +x kind# 创建集群./kind create cluster --name dbtest# 检查kubectl cluster-info
复制代码

安装 helm

snap install helm --claasic
复制代码

第二部分 部署 TiDB 数据库

#1 克隆tidb-operator项目到本地git clone https://github.com/pingcap/tidb-operator.git (主要想用crd.yaml和tidb-cluster.yaml文件)#2 切换到manifests目录cd /data1/tidb-operator/manifests#3 安装crd (不加server-side会报错 见ps1)kubectl apply -f crd.yaml --server-side#4 安装 TiDB Operator(提前安装helm)helm repo add pingcap https://charts.pingcap.org/#5 创建tidb-admin namespacekubectl create namespace tidb-admin
#6 用阿里镜像源安装tidb-operatorhelm install --namespace tidb-admin tidb-operator pingcap/tidb-operator --version v1.6.0 \ --set operatorImage=registry.cn-beijing.aliyuncs.com/tidb/tidb-operator:v1.6.0 \ --set tidbBackupManagerImage=registry.cn-beijing.aliyuncs.com/tidb/tidb-backup-manager:v1.6.0 \ --set scheduler.kubeSchedulerImageName=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler #7 创建tidb-cluster namespacekubectl create namespace tidb-cluster #8 创建tidb集群 (测试环境没有装dashboard和monitor,需要安装的话apply配置文件即可,镜像拉取比较慢)cd /data1/tidb-operator/examples/basic-cn/kubectl apply -f tidb-cluster.yaml -n tidb-cluster#9 端口转发kubectl port-forward -n tidb-cluster svc/basic-tidb 14000:4000 > pf14000.out &#10 登录验证mysql --comments -h 127.0.0.1 -P 14000 -u root
复制代码

踩坑点:

1、ps1 不加 server-side 报错信息


2、tidb-cluster.yaml 文件中 alpine 基础镜像容易拉取失败,大家尽量改到能拉取的镜像。

参考文档:

1、https://kind.sigs.k8s.io/


2、https://docs.pingcap.com/zh/tidb-in-kubernetes/stable/get-started


关注公众号:DBA 札记,一起交流数据库与云原生技术。欢迎觉得读完本文有收获,可以转发给其他朋友,大家一起学习进步!谢谢大家。


发布于: 刚刚阅读数: 3
用户头像

TiDB 社区官网:https://tidb.net/ 2021-12-15 加入

TiDB 社区干货传送门是由 TiDB 社区中布道师组委会自发组织的 TiDB 社区优质内容对外宣布的栏目,旨在加深 TiDBer 之间的交流和学习。一起构建有爱、互助、共创共建的 TiDB 社区 https://tidb.net/

评论

发布
暂无评论
在k8s上部署tidb数据库_TiDB 社区干货传送门_InfoQ写作社区