问题标签 [fluxcd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
283 浏览

patch - 您可以通过 kustomize 修补没有基础的任意资源吗?

我一直在尝试修补由 kops 插件(Ebs 驱动程序)声明和应用的部署。

不幸的是,在尝试了各种修补策略之后,我似乎无法修补在我的文件夹结构中没有声明基础的资源。

请注意,我在顶部使用 FluxCD 进行协调,在推送补丁时看不到此资源的任何更改。

这是我想要更改的 Kops 自动生成和应用的部署的摘录:

我的自定义文件:

和实际的补丁-ebs.yaml:

还尝试使用 Json 补丁 patch-ebs.json :

  • 运行 kustomize 构建不会产生任何输出;
  • 创建一个称为资源/基础的部署文件会生成一个可以应用的适当补丁。

这是 Kustomize 的限制,还是我错过了一些东西?

谢谢你的帮助 !

0 投票
1 回答
18 浏览

docker - 检查容器映像是否更改而不拉取适用于所有容器注册表的通用方法

我正在编写一个工具来从任何容器注册表同步容器映像。为了同步图像,我需要一种方法来检查 localimage:tag是否与 remote 不同image:tag,可能通过比较图像 sha ID(因为图像 sha 摘要是基于注册表的)。由于我的工具的性质,先拉图像然后比较使用docker inspect是不合适的。

我能够找到一些像这样这样的帖子。他们要么告诉我使用 docker v2 API 来获取远程元数据(其中包含图像 ID),然后与本地图像 ID 进行比较,要么使用container-diff(这似乎是为了解决更复杂的问题,比较图像内的包管理系统中的包) . docker v2 API 方法并不通用,因为每个注册表(docker.io、grc.io、ecr)都需要不同的标头、身份验证等。因此,container-diff似乎是最适合我的选择,但我还没有弄清楚true/false如果本地和远程图像不同,则可以简单地输出。此外,似乎这个工具在区分它们之前确实会拉取图像。

无论如何,是否可以为所有注册机构普遍执行此操作?我看到有一些工具已经实现了这个功能,比如用于 Kubernetes 的 Fluxcd,它可以将远程图像同步到本地 pod 图像,但尚不清楚它们的技术细节。

0 投票
0 回答
33 浏览

fluxcd - 更新 Helm-operator 映像版本时 HelmRelease 中出现 ChartFetchFailed 错误

尝试将 helm-operator 映像版本从 1.0.0-rc7 升级到 1.4.0 时遇到问题。

helm-operator 图表版本:1.4.0 helm-operator 映像版本:从 1.0.0-rc7 升级到 1.4.0

重现问题的步骤:

  1. 部署一个指向 git 存储库的 HelmRelease。
  2. 将 helm-operator 映像更新到 1.4.0。Pod 使用新的映像版本重新启动。
  3. 将一些更改推送到步骤 1 中提到的 git repo。
  4. 您会注意到 HelmRelease 中的 ChartFetchFailed 错误。(附图片)

错误图片

有谁知道如何解决它(重新创建 HelmRelease 除外)?

0 投票
0 回答
16 浏览

amazon-s3 - 可以配置 FluxCD 监视器并将清单文件更改从 AWS S3 而不是 Git 存储库中提取

我正在考虑使用 FluxCD 将我们的 Docker 容器部署管理到 Kubernetes 集群到我们的客户生产环境。

可以从 AWS S3 而不是 Git 存储库配置 FluxCD 监视器并将清单文件更改拉到。,它将触发带有手动批准步骤的“管道”,人工操作员可以手动批准/拒绝。一旦收到批准,管道将执行其操作(部署新的清单(部署描述符)yaml 文件和新的 docker 映像。

感谢您的帮助和支持。

问候,鲍

0 投票
0 回答
37 浏览

fluxcd - Flux2 图像反射器控制器无法在我的图像标签上找到匹配项

我正在使用 Flux2。我是 Flux 的新手,我正在尝试设置 Image Reflector 控制器以在我的图像注册表中查找最后一个图像标签,但我的图像策略出现错误“无法从提供的列表中确定最新版本”

在我的注册表中,我有以下标签:

Flux 报告它正在连接到我的图像注册表并显示“扫描成功,找到 2 个标签”。根据我下面的图片政策,我预计只有 1 个标签匹配。

这是我的形象政策:

我想更新新的“rc”图像。关于为什么 Image Reflector 说它在“16”与过滤器模式不匹配时发现 2 个标签的任何想法?我应该在我的图像政策中进行哪些更改以确定最新版本?谢谢!

0 投票
1 回答
79 浏览

azure - 从 Azure ACR 部署 FluXCD Helm - 找不到图表名称错误

我正在尝试使用 FluxCD 将 Helm 图表部署到 AKS。该图表已使用 Helm cli -“helm push ...”推送到 Azure ACR。该图表在 ACR 中声明为 helm/release-services:0.1.0

在 Flux 协调后,我收到以下错误:

'图表拉取错误:无法获取远程参考的图表版本:未找到图表名称'

使用 helm-controller 日志如下

{"level":"info","ts":"2022-02-07T12:40:18.121Z","logger":"controller.helmrelease","msg":" HelmChart 'flux-system/release-services -test-release-services' 没有准备好","re​​conciler group":"helm.toolkit.fluxcd.io","re​​conciler kind":"HelmRelease","name":"release-services","namespace": "release-services-test"} {"level":"info","ts":"2022-02-07T12:40:18.135Z","logger":"controller.helmrelease","msg":"reconcilation在 15.458307 毫秒内完成,下一次在 5 秒内运行","re​​conciler group":"helm.toolkit.fluxcd.io","re​​conciler kind":"HelmRelease","name":"release-services","namespace":"release-services-test"}

下面是 AKS 中的 HelmChart 资源:

HelmRelease 如下

有什么我想念的东西,任何人都可以为我发现吗?

非常感谢你