Я создал файл манифеста Kubernetes для создания служебной учетной записи и ролей. Вот как это выглядит:
apiVersion: v1
kind: ServiceAccount
metadata:
name: test-service-account
namespace: test
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: read-only-api
rules:
- apiGroups:
- ""
resources: ["*"]
verbs:
- get
- list
- watch
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: read-only-api
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: read-only-api
subjects:
- kind: ServiceAccount
name: test-service-account
namespace: test
Однако, когда я пытаюсь выполнить и применить манифест, я получаю эту ошибку. Я не уверен, что у меня проблемы с отступом или чем-то еще.
ошибка синтаксического анализа service-account.yml: ошибка преобразования YAML в JSON: yaml: строка 10: не найден ожидаемый индикатор '-'
Вся помощь приветствуется. Я пробовал отступать назад и вперед, добавляя индикатор «-» к той конкретной строке, на которую он жалуется, но затем я получаю новое сообщение об ошибке:
ошибка при проверке "service-account.yml": ошибка при проверке данных: ValidationError(ClusterRole.metadata): неверный тип для io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta: получен "массив", ожидается " карта"; если вы решите игнорировать эти ошибки, отключите проверку с помощью --validate=false.
Благодарю вас!
ClusterRoleBinding
›subjects
... Атрибутname
иnamespaces
должны следовать заkind
идентификацией. - person gonzalesraul   schedule 21.08.2019kubectl create clusterrolebinding read-only-api --clusterrole=read-only-api --serviceaccount=test:test-service-account -o yaml --dry-run
напечатает (пробный запуск) допустимую привязку кластерной роли с предоставленной вами информацией. - person gonzalesraul   schedule 21.08.2019