在 Kubernetes 上部署 TiDB Operator
TiDB Operator 部署前,请确认以下软件需求:
部署 Kubernetes 集群
TiDB Operator 运行在 Kubernetes 集群,你可以使用 Getting started 页面列出的任何一种方法搭建一套 Kubernetes 集群。只要保证 Kubernetes 版本大于等于 v1.12。如果你使用 AWS、GKE 或者本机,下面是快速上手教程:
TiDB Operator 使用持久化存储 TiDB 集群数据(包括数据库,监控和备份数据),所以 Kubernetes 集群必须提供至少一种持久化卷。为提高性能,建议使用本地 SSD 盘作为持久化卷。可以根据这一步配置本地持久化卷。
Kubernetes 集群建议启用 。
参考 使用 Helm 安装 Helm 并配置 PingCAP 官方 chart 仓库。
配置本地持久化卷
TiDB Operator 使用 CRD (Custom Resource Definition) 扩展 Kubernetes,所以要使用 TiDB Operator,必须先创建 自定义资源类型。只需要在你的 Kubernetes 集群上创建一次即可:
创建 TidbCluster
自定义资源类型后,接下来在 Kubernetes 集群上安装 TiDB Operator。
获取你要安装的
tidb-operator
chart 中的values.yaml
文件:-
TiDB Operator 里面会用到
k8s.gcr.io/kube-scheduler
镜像,如果下载不了该镜像,可以修改/home/tidb/tidb-operator/values-tidb-operator.yaml
文件中的scheduler.kubeSchedulerImageName
为registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler
。 安装 TiDB Operator
自定义 TiDB Operator
通过修改 /home/tidb/tidb-operator/values-tidb-operator.yaml
中的配置自定义 TiDB Operator。后续文档使用 指代 /home/tidb/tidb-operator/values-tidb-operator.yaml
。
TiDB Operator 有两个组件:
- tidb-controller-manager
- tidb-scheduler
这两个组件是无状态的,通过 Deployment
部署。你可以在 values.yaml
中自定义资源 limit
、request
和 。