2 个具有共享 Redis 依赖的 Helm Chart

2024-05-10

目前,我有 2 个 Helm Charts - Chart A 和 Chart B。Chart A 和 Chart B 对 Redis 实例具有相同的依赖关系,如Chart.yaml file:

dependencies:
- name: redis
  version: 1.1.21
  repository: https://kubernetes-charts.storage.googleapis.com/

我还覆盖了 Redis 的名称,因为连续应用 2 个图表会产生 2 个 Redis 实例,如下所示:

redis:
  fullnameOverride: "redis"

当我尝试安装 Chart A 然后安装 Chart B 时,出现以下错误:

Error: rendered manifests contain a resource that already exists. Unable to continue with install: existing resource conflict: kind: PersistentVolumeClaim, namespace: default, name: redis

我的印象是,如果实例已经存在,两个具有相同依赖关系的图表将使用同一个实例?


当您使用 Helm 安装图表时,它通常期望每个release拥有自己独立的 Kubernetes 对象集。在您展示的基本示例中,我希望看到 Kubernetes 服务对象的名称类似于

release-a-application-a
release-a-redis
release-b-application-b
release-b-redis

有一个通用约定,对象的命名开头为{{ .Release.Name }},所以两个 Redis 是分开的。

这实际上是一个预期的设置。构建微服务的典型规则是每个服务都包含自己的独立存储,并且服务从不相互共享存储。此 Helm 模式支持这一点,并且采用此设置并没有真正的缺点。

如果您确实希望两个图表共享一个 Redis 安装,您可以编写一个“伞”图表,它本身不执行任何操作,但依赖于两个应用程序图表。该图表将有一个Chart.yaml文件和(在 Helm 2 中)requirements.yaml引用其他两个图表的文件,但不是templates自己的目录。这将导致 Helm 得出结论:单个 Redis 可以支持这两个应用程序,并且您最终会得到类似的结果

umbrella-application-a
umbrella-application-b
umbrella-redis

(根据我的经验,你通常don't想要这个——你do希望每个应用程序都有一个单独的 Redis - 因此尝试使用伞图管理多个安装效果并不特别好。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2 个具有共享 Redis 依赖的 Helm Chart 的相关文章

随机推荐

  • 如何在 UML 中正式记录 C# 属性?

    在 UML 类图中记录类的 C 属性的正确方法是什么 我还没有决定这是否是我的答案 但我想我会把它扔在那里以便讨论 这看起来可以接受吗 它是属性类型的实例 其中元数据值放入下面的标记值中 我刚刚弄清楚如何添加自定义立体类型 该箭头只是一个标
  • 如何在 scss 中包含仅限 Safari 的样式? [复制]

    这个问题在这里已经有答案了 我只是想修改仅适用于 safari 浏览器的样式属性 这将覆盖默认属性 简单的例子 Default div color blue Safari 浏览器 div color red 我想这可以通过 scss 的 i
  • dotnet 核心并行或同时构建

    In this https github com gatimus DotnetParallelBuild解决方案我有2个应用程序 AppA AppB共享类库Shared 我尝试过自动化这些并行的构建 运行电源外壳 https github
  • 当添加列较少时追加到现有 SQLite 表,而不将数据库读入 R

    是否有一些简单的方法 无论是在 SQL 端还是在 R 端 将 data frame 附加到具有更多列的现有表 缺失的列应该用 NA 填充 如果它能够优雅地处理比表 1 列数更多的表 2 那么会加分吗 library RSQLite Crea
  • Java:如何实现3和?

    我正在研究 3 Sum 来自己实现它 并遇到了以下规则的实现 给定一个由 n 个整数组成的数组 S S 中是否存在满足 a b c 0 的元素 a b c 查找数组中所有总和为零的唯一三元组 注意 三元组 a b c 中的元素必须按非降序排
  • 使用 Cypress 绕过 UI 登录

    我在绕过 UI 登录时遇到问题 我的 Web 应用程序不使用 API 来验证用户身份 没有像这样的端点 login index php只需打开登录页面并提交表单即可登录 应用程序通过以下方式对用户进行身份验证auth REQUEST use
  • 缺少“框架级别”访问修饰符

    这是场景 作为公共许可的开源 API 的创建者 我的团队创建了一个基于 Java 的 Web 用户界面框架 那么还有什么新鲜事呢 为了让事情像 Java 中那样井然有序 我们使用了具有命名约定的包 org mygroup myframewo
  • Excel VBA - 循环文件夹中的文件、复制范围、粘贴到此工作簿中

    我有 500 个包含数据的 Excel 文件 我会将所有这些数据合并到一个文件中 实现此目标的任务列表 我想循环遍历文件夹中的所有文件 打开文件 复制此范围 B3 I102 将其粘贴到活动工作簿的第一张工作表中 重复但在下面粘贴新数据 我已
  • 无论如何从变量名获取字符串?

    说我有课 interface Person NSObject NSString name 我需要获取类中 NSString 的名称 Person person Person alloc init NSLog Name of variable
  • 如何使用 JavaScript 判断大写锁定是否已打开?

    如何使用 JavaScript 判断大写锁定是否已打开 但有一个警告 我确实用谷歌搜索了它 我能找到的最好的解决方案是附加一个onkeypress事件到每个输入 然后每次检查按下的字母是否为大写 如果是 则检查是否也按住了shift 如果不
  • 在 NextJS 上运行开发服务器(在网络上)

    在使用 ReactJS 时 当我们使用命令 npm start 时 它会在 localhost 3000 以及网络 192 168 1 2 3000 上启动开发服务器 这非常简单 我可以通过进入该地址在所有设备上测试我的应用程序 最近我开始
  • 如何使用 javafx 创建响应式文本?

    我创建了一个标签 其中显示了一个数字 现在我想让这个数字响应 GUI 我怎样才能做到这一点 这是我的号码及其当前字体大小 Label label new Label label setText 12 label setFont Font f
  • 无需测试即可构建 Gradle

    我想执行gradle build不执行单元测试 我试过 gradle Dskip tests build 这似乎没有什么作用 我还可以使用其他命令吗 您应该使用 x排除任何任务的命令行参数 Try gradle build x test U
  • 为什么不使用 Interface Builder [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 模数和余数之间的差异

    我正在做一些计算 运算符在java and python 在计算时我发现 处理负数时 运算符在两种语言中的工作方式有所不同 例如 21 4 1 Java 21 4 3 Python 所以我查看了 stackoverflow 上的一些帖子 发
  • 在 jQuery UI 1.10 中的对话框标题中使用 HTML

    http jqueryui com upgrade guide 1 10 changed title option from html to text http jqueryui com upgrade guide 1 10 changed
  • Rx 中的热连接

    Observable Concat是一个连接可观察量的实现 但第二个IObservable
  • 无法创建常量值 - 只允许基本类型或枚举类型

    我在这里看到了一些与此异常相关的问题 但没有一个让我理解问题的根本原因 所以这里我们还有一个 var testquery from le in context LoanEMIs Include LoanPmnt join lp in con
  • UDP 广播发送失败:在 Linux 2.6.30 上“网络无法访问”

    我用udp广播写了一个程序 代码段如下 struct sockaddr in broadcast addr socklen t sock len sizeof broadcast addr bzero broadcast addr sock
  • 2 个具有共享 Redis 依赖的 Helm Chart

    目前 我有 2 个 Helm Charts Chart A 和 Chart B Chart A 和 Chart B 对 Redis 实例具有相同的依赖关系 如Chart yaml file dependencies name redis v