Как добавить новую привязку ClusterRoleBole с Kustomize в k8s, не удаляя существующие привязки? - PullRequest
0 голосов
/ 13 марта 2020

Когда я набираю kubectl edit clusterrolebinding foo-role, я вижу что-то вроде:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: foo-role
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: edit
subjects:
- kind: ServiceAccount
  name: foo-user
  namespace: ns1
- kind: ServiceAccount
  name: foo-user
  namespace: ns2

Я могу добавить новый ClusterRoleBinding для пространства имен ns3, добавив следующую конфигурацию в файл выше:

- kind: ServiceAccount
  name: foo-user
  namespace: ns3

Однако я хочу использовать Kustomize для добавления новых привязок вместо ручного изменения вышеуказанного файла.

Я попытался применить файл .yaml ниже:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: foo-role
  selfLink: /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/foo-role
  uid: 64a4a787-d5ab-4c83-be2b-476c1bcb6c96
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: edit
subjects:
- kind: ServiceAccount
  name: foo-user
  namespace: ns3

Он добавил новый ClusterRoleBinding в пространство имен ns3, но удалит существующие ClusterRoleBinding s для ns1 и ns2.

. Есть ли способ добавить новый ClusterRoleBinding с Кастомизировать, не удаляя существующие?

1 Ответ

2 голосов
/ 13 марта 2020

Дайте им разные имена в метаданных. Вы не сделали новый, вы просто переписали тот же.

...