授予 Backstage Kubernetes 只读观察权限 #155

Merged
panxiao81 merged 1 commits from feat/backstage-kubernetes-readonly into main 2026-09-25 18:33:34 +00:00
5 changed files with 58 additions and 2 deletions
Showing only changes of commit cae6acbfb0 - Show all commits
+3 -1
View File
@@ -5,6 +5,7 @@ metadata:
namespace: backstage namespace: backstage
labels: labels:
app.kubernetes.io/name: backstage app.kubernetes.io/name: backstage
backstage.io/kubernetes-id: homelab-backstage
spec: spec:
replicas: 1 replicas: 1
strategy: strategy:
@@ -16,6 +17,7 @@ spec:
metadata: metadata:
labels: labels:
app.kubernetes.io/name: backstage app.kubernetes.io/name: backstage
backstage.io/kubernetes-id: homelab-backstage
spec: spec:
serviceAccountName: backstage serviceAccountName: backstage
securityContext: securityContext:
@@ -25,7 +27,7 @@ spec:
type: RuntimeDefault type: RuntimeDefault
containers: containers:
- name: backstage - name: backstage
image: zot.ad.ddupan.top/panxiao81/backstage@sha256:493aed471c58b21db7a108a333417498fc03682d119282b89cd0318563d6cae6 image: zot.ad.ddupan.top/panxiao81/backstage@sha256:e5a12550726f19a680bc7c40e2cc07cc624318f9279ee121814d293a006ef210
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
env: env:
- name: BACKSTAGE_BASE_URL - name: BACKSTAGE_BASE_URL
+1
View File
@@ -3,6 +3,7 @@ kind: Kustomization
resources: resources:
- namespace.yaml - namespace.yaml
- serviceaccount.yaml - serviceaccount.yaml
- rbac.yaml
- external-secret.yaml - external-secret.yaml
- deployment.yaml - deployment.yaml
- service.yaml - service.yaml
+51
View File
@@ -0,0 +1,51 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: backstage-read-only
rules:
- apiGroups: [""]
resources:
- configmaps
- limitranges
- pods
- pods/log
- resourcequotas
- services
verbs: [get, list, watch]
- apiGroups: [apps]
resources:
- daemonsets
- deployments
- replicasets
- statefulsets
verbs: [get, list, watch]
- apiGroups: [autoscaling]
resources:
- horizontalpodautoscalers
verbs: [get, list, watch]
- apiGroups: [batch]
resources:
- cronjobs
- jobs
verbs: [get, list, watch]
- apiGroups: [networking.k8s.io]
resources:
- ingresses
verbs: [get, list, watch]
- apiGroups: [metrics.k8s.io]
resources:
- pods
verbs: [get, list]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: backstage-read-only
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: backstage-read-only
subjects:
- kind: ServiceAccount
name: backstage
namespace: backstage
+2
View File
@@ -3,6 +3,8 @@ kind: Service
metadata: metadata:
name: backstage name: backstage
namespace: backstage namespace: backstage
labels:
backstage.io/kubernetes-id: homelab-backstage
spec: spec:
selector: selector:
app.kubernetes.io/name: backstage app.kubernetes.io/name: backstage
+1 -1
View File
@@ -3,4 +3,4 @@ kind: ServiceAccount
metadata: metadata:
name: backstage name: backstage
namespace: backstage namespace: backstage
automountServiceAccountToken: false automountServiceAccountToken: true