侧边栏壁纸
  • 累计撰写 211 篇文章
  • 累计创建 16 个标签
  • 累计收到 5 条评论

目 录CONTENT

文章目录

使用Helm Chart部署Consul

Wake
2025-06-12 / 0 评论 / 0 点赞 / 12 阅读 / 453 字

项目介绍

Consul Helm Chart 是一个用于在 Kubernetes 集群中安装和配置 HashiCorp Consul 的 Helm 图表。Consul 是一个服务网格解决方案,提供服务发现、配置和分段功能。通过使用 Helm Chart,用户可以轻松地在 Kubernetes 环境中部署和管理 Consul。

项目快速启动

添加 Helm 仓库

添加 HashiCorp 的 Helm 仓库:

helm repo add hashicorp https://helm.releases.hashicorp.com

安装 Consul Helm Chart
更新 Helm 仓库并安装 Consul:

helm repo update

因为我需要定义一下values.yaml文件,修改调度的节点类型之类的。
所以我是先把Chart 下载回来了

helm pull hashicorp/consul
解压consul 的Chart包
helm install consul -n 要定义的namsapce .

注意事项1:

因为这个是有状态的服务,需要用到statefulsets来部署,需要用到下面这个pvc卷
image-1749736851132
记得在部署前要把这个pvc和pv创建好,这样pod才能起来。

注意事项2:

因为这个Chart用的不是root用户起的容器,默认我用的efs又是只有root用户才有写入权限,所以出现了下面这种权限拒绝的错误。

 kubectl logs -f consul-consul-server-0 
Defaulted container "consul" out of: consul, locality-init (init)
==> failed to setup node ID: failed to write NodeID to disk: open /consul/data/node-id: permission denied

解决思路之一就是把这个pvc卷的/consul/data目录随便挂载到一个pod里面,然后在里面执行下面的命令

chmod -R 777 /consul/data

然后重新部署一遍consul,就会发现服务都起来了。

kubectl get pod 
NAME                                                  READY   STATUS    RESTARTS   AGE
consul-consul-connect-injector-f668674cb-mdfc9        1/1     Running   0          24m
consul-consul-server-0                                1/1     Running   0          24m
consul-consul-webhook-cert-manager-754f47dc44-pbttx   1/1     Running   0          24m
0

评论区