编写组合helm, 组合之前的几个组件 -2

刚刚是独立安装,现在要组合他们到一个 Chart 里面 —初入江湖

要将 Redis、MySQL 和 RocketMQ 组合在一个 Helm Chart 中,并且部署到同一个 Kubernetes Pod 或者同一个 Helm release 中,你可以创建一个自定义的 Helm Chart,将这三个服务作为子 Chart 来管理。

1. 创建自定义 Helm Chart

首先,创建一个新的 Helm Chart:

helm create my-stack

这会在当前目录下创建一个名为 my-stack 的目录,包含 Helm Chart 的基本结构。

2. 添加 Redis、MySQL 和 RocketMQ 作为依赖

my-stack 目录中,找到 Chart.yaml 文件,并在 dependencies 部分添加 Redis、MySQL 和 RocketMQ:

dependencies:
  - name: redis
    version: 17.0.7  # 请根据最新版本替换
    repository: 
  - name: mysql
    version: 9.1.4   # 请根据最新版本替换
    repository: 
  - name: rocketmq
    version: 11.1.0   # 请根据最新版本替换
    repository: rocketmq-repo 

3. 更新依赖

运行以下命令来下载这些依赖:

helm dependency update my-stack

这会在 my-stack/charts 目录中下载 Redis、MySQL 和 RocketMQ 的子 Chart。

4. 自定义 values.yaml

my-stack 目录中,编辑 values.yaml 文件,配置每个服务的参数。比如:


redis:
  architecture: standalone

mysql:
  auth:
    rootPassword: root
    database: test
    username: crab
    password: crab

rocketmq:
  dashboard:
    enabled: true

你可以在这里根据需求调整每个服务的配置参数。

5. 部署自定义 Chart

使用以下命令将自定义的 Chart 部署到 Kubernetes 集群中:

helm install my-stack ./my-stack

6. 验证部署

确认所有的服务都运行正常:

kubectl get pods
kubectl get services

总结

通过这种方法,你将 Redis、MySQL 和 RocketMQ 组合在一个 Helm Chart 中进行管理和部署。这种方式允许你在一个 Helm release 中管理多个服务,并且可以根据需要自定义每个服务的配置。

这种方式适合需要将多个服务紧密集成在一起的场景,特别是在开发或测试环境中。如果有更复杂的需求,可以进一步细化 Helm Chart 的配置。

你可能感兴趣的:(docker,kubernetes)