When I try to create a resource from a node.js application via http request I get this error.
{
kind: 'Status',
apiVersion: 'v1',
metadata: {},
status: 'Failure',
message: 'prometheusrules.monitoring.coreos.com is forbidden: User ' +
'"system:serviceaccount:default:default" cannot create resource ' +
'"prometheusrules" in API group "monitoring.coreos.com" in the ' +
'namespace "default"',
reason: 'Forbidden',
details: { group: 'monitoring.coreos.com', kind: 'prometheusrules' },
code: 403
}
How do I add permissions to system:serviceaccount:default:default?
I have tried with the following ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: sla-manager-service-role
labels:
app: sla-manager-app
rules:
- apiGroups: [""] # "" indicates the core API group
resources: ["services", "pods"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
But it is not working. The service for my node.js application looks like this
apiVersion: v1
kind: Service
metadata:
name: sla-manager-service
labels:
app: sla-manager-app
monitoring: "true"
annotations:
prometheus.io/scrape: "true"
prometheus.io/path: /metrics
prometheus.io/port: "6400"
spec:
selector:
app: issue-manager-app
ports:
- protocol: TCP
name: http
port: 80
targetPort: 6400