赞
踩
作者:苏厚镇 青云科技数据库研发工程师
目前从事 RadonDB ClickHouse 相关工作,热衷于研究数据库内核。
延续上篇《容器化 ClickHouse on K8s 基本概念解析篇》,可以了解到 Operator 提供简便管理 ClickHouse 集群功能,Helm 提供便捷部署集群功能。
本篇将以部署 RadonDB ClickHouse[1] 作为示例。在同样选用 Operator 的条件下,比较Kubectl 和 Helm 两种方式在 K8s 上部署 ClickHouse 集群的便捷性。并简要介绍如何在 K8s 上通过 Operator 轻便快速地管理 ClickHouse 集群。
1、部署 RadonDB ClickHouse Operator
$ kubectl apply -f https://github.com/radondb/radondb-clickhouse-kubernetes/clickhouse-operator-install.yaml
注意:若需 Operator 监控所有的 Kubernetes namespace,则需将其部署在 kube-system namespace 下。否则只会监控部署到的 namespace。
2、编写 CR 的部署文件
以下 yaml 文件描述了应用 RadonDB ClickHouse Operator 安装两分片两副本集群的 ClickHouse 的配置规范。
apiVersion: "clickhouse.radondb.com/v1" kind: "ClickHouseInstallation" # 应用 Operator 创建集群 metadata: name: "ClickHouse" spec: defaults: templates: # 磁盘挂载 dataVolumeClaimTemplate: data logVolumeClaimTemplate: data configuration: clusters: # 集群节点描述,三分片两副本 - name: "replicas" layout: shardsCount: 2 replicasCount: 2 templates: volumeClaimTemplates: # 磁盘信息描述 - name: data reclaimPolicy: Retain spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi
3、使用 Kubectl 部署
以 test 名称空间为例:
$ kubectl -n test apply -f hello-kubernetes.yaml
clickhouseinstallation.clickhouse.radondb.com/ClickHouse created
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。