kubernetes - 覆盖部署.yaml中的k8s补丁库deployment.yaml
问题描述
我想在覆盖配置文件中修补 base/deployment.yaml 的一部分。文件夹结构为:
k8s
|- base
|- deployment.yaml
|- kustomization.yaml
|- ...
|- overlays
|- profile1
|- kustomization.yaml
|- patches
|- deployment.yaml
|- profile2
|- ...
base/deployment.yalm 看起来像这样:
apiVersion: apps/v1
kind: Deployment
metadata:
name: ${PROJECT_NAME}
spec:
template:
metadata:
labels:
app: ${PROJECT_NAME}
spec:
serviceAccountName: foo
tolerations:
- effect: NoSchedule
key: op
operator: Equal
value: bar
resources:
limits:
nvidia.com/gpu: 1
requests:
nvidia.com/gpu: 1
我想删除spec/template/spec/resources/*
并spec/template/spec/tolerations/value
从更改bar
为foobar
。文件应该是overlays/profile1/patches/deployment.yaml
什么样子?
结果合并应该是这样的:
apiVersion: apps/v1
kind: Deployment
metadata:
name: ${PROJECT_NAME}
spec:
template:
metadata:
labels:
app: ${PROJECT_NAME}
spec:
serviceAccountName: foo
tolerations:
- effect: NoSchedule
key: op
operator: Equal
value: foobar
我检查了文档:https ://kubectl.docs.kubernetes.io/references/kustomize/kustomization/patches/但我无法推断我的用例会发生什么。
base/deployment.yaml
用于大量配置文件,我想避免更改它并不得不重构其他配置文件。
解决方案
推荐阅读
- python - 如何在 ListView 中包含 CreateView 模板?
- javascript - 如何在 Python 中解析 html 源代码中的 javascript 代码?
- r - 是否有一个 R 函数用于附加具有不相等列的列表
- mysql - Laravel:数据库查询返回标准类而不是数组
- php - Moodle XMLDB 如何将 scema 应用到我的数据库中
- dart - Dart - 通过映射构造函数实例化泛型类型
- pandas - 计算两个日期之间的周末数(周六和周日)
- python-3.x - 自定义 NER Spacy 抛出 IndexError:列表索引超出范围
- javascript - 无法从日期获取小时数
- go - 从 Go 中的符文中获取 unicode 脚本