minikube 搭clickhouse 集群

minikube 搭clickhouse 集群

准备

安装minikube

安装helm

安装kubectl等

启动minikube

复制代码
$ minikube start   --driver=docker   --image-mirror-country='cn'   --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers'   --registry-mirror='https://docker.mirrors.ustc.edu.cn'   --cpus=4   --memory=3092   --disk-size=50g

k8s 官网只说了minikube start,这样默认分配的内存,磁盘比较小,另外默认从国外服务器拉取镜像,会失败,这样配置国内源

helm 拉取镜像

复制代码
$   helm upgrade --install clickhouse-operator altinity/altinity-clickhouse-operator   --namespace clickhouse   --set crdHook.enabled=false   --set image.pullPolicy=IfNotPresent --create-namespace \
\-n clickhouse

输出

复制代码
LAST DEPLOYED: Fri May 15 14:46:20 2026
NAMESPACE: clickhouse
STATUS: deployed
REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None

解释

--set image.pullPolicy=IfNotPresent ,镜像如果本地不存在才拉取,

--create-namespace -n clickhouse 创建名为clickhouse的命名空间

检查pod状态

复制代码
kubectl get pod  -n clickhouse

显示running就代表成功启动了

之前遇到的问题

kubectl get pod 查看的时候状态为ErrImagePullBackOff

原因:minikube里是一个独立的网络,docker没有用本地配置的国内源,导致拉取失败,minikube start的时候指定docker国内源后这个问题解决了

实际如果要测试的话,可以minikube ssh,进入内部空间,然后docker pull hello-world等镜像试试

pod状态异常查看

复制代码
kubectl describe pod clickhouse-operator-altinity-clickhouse-operator-7bcf95549r22cb -n clickhouse

重点看Event 下的错误信息,像ErrImagePullOff 就是这其中有些镜像拉去失败了

实在不行,可以本地拉取镜像,然后load到minikube,然后重启pod

docker pull xxxxx

minikube image load xxxxx

helm upgrade --install clickhouse-operator altinity/altinity-clickhouse-operator --namespace clickhouse --set crdHook.enabled=false --set image.pullPolicy=IfNotPresent --create-namespace

-n clickhouse

搭建一个最简单的 ClickHouse 集群

第一步:准备 YAML 文件

1分片1副本的测试集群

创建一个 first-cluster.yaml,内容如下:

复制代码
apiVersion: "clickhouse.altinity.com/v1"
kind: "ClickHouseInstallation"
metadata:
  name: cluster01
spec:
  configuration:
    clusters:
      - name: cluster01
        layout:
          shardsCount: 1
          replicasCount: 1

2.部署

复制代码
kubectl apply -f first-cluster.yaml -n clickhouse

3.查看集群状态

复制代码
# 查看 ClickHouseInstallation 资源的状态
kubectl get chi -n clickhouse
# 查看pod
kubectl get pods -n clickhouse  

4.连接测试

复制代码
kubectl exec -it chi-cluster01-cluster01-0-0-0 -n clickhouse -- clickhouse-client

查询测试

SELECT version();

SELECT cluster, host_name FROM system.clusters;

相关推荐
fengkai45454 小时前
3、Kubernetes的Namespace&Contexts&Pod&YAML格式
运维·容器·kubernetes·k8s·namespace·yaml·pod
SatanII6 小时前
K8s 存储与配置管理|Volume、ConfigMap、Secret 核心笔记
笔记·rpc·kubernetes
小马同学-7 小时前
K8s 命名空间与上下文:Namespace 资源隔离与多集群切换实战
云原生·容器·kubernetes
川石课堂软件测试8 小时前
涨薪技术|0到1学会性能测试第9课-HTTP响应统计
数据库·功能测试·网络协议·http·kubernetes·单元测试·测试用例
探索云原生8 小时前
Ascend vNPU 实战:从原生 Docker 到 Ascend Docker Runtime
linux·ai·云原生·kubernetes·gpu
许知珩9 小时前
Kubernetes 存储与配置管理 ——Volume、ConfigMap 与 Secret 实战详解
云原生·容器·kubernetes
你看我名字12 小时前
LAMP 架构演练:从云主机准备到 Apache、PHP、MySQL 上线验证
运维·ci/cd·架构·kubernetes·jenkins
wengad12 小时前
podman安装clickhouse
clickhouse·podman
丨晨 丨13 小时前
K8s存储卷与配置管理实战
云原生·容器·kubernetes
暖核13 小时前
K8s 存储与配置:Volume PV‑PVC ConfigMap Secret 实战解析
云原生·容器·kubernetes