gpt4 book ai didi

kubernetes - 受限制的 Kubernetes 仪表板?

转载 作者:行者123 更新时间:2023-12-03 18:49:39 28 4
gpt4 key购买 nike

是否可以有一个受限的 Kubernetes 仪表板?这个想法是让一个 pod 在集群中运行 kubectl proxy(受基本 HTTP 身份验证保护)以快速了解状态:

  • pod 的日志输出
  • 运行服务和 pod
  • 当前 CPU/内存使用情况

但是,我希望用户能够执行“特权”操作,例如创建新 pod、删除 pod 或访问 secret 。

是否有一些选项可以使用指定用户或受限权限启动仪表板?

最佳答案

根据 lwolf 的回答,我使用了 the kubernetes-dashboard.yaml并将其更改为在默认命名空间中的从站上运行。

重要的变化是 kind: ClusterRole, name: view 部分,它将 view 角色分配给仪表板用户。

apiVersion: v1
kind: ServiceAccount
metadata:
labels:
k8s-app: kubernetes-dashboard
name: ro-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: ro-dashboard
labels:
k8s-app: kubernetes-dashboard
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: view
subjects:
- kind: ServiceAccount
name: ro-dashboard
apiGroup: ''
namespace: default
---
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: ro-dashboard
spec:
replicas: 1
revisionHistoryLimit: 0
selector:
matchLabels:
k8s-app: kubernetes-dashboard
template:
metadata:
labels:
k8s-app: kubernetes-dashboard
spec:
containers:
- name: kubernetes-dashboard
image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.3
ports:
- containerPort: 9090
protocol: TCP
livenessProbe:
httpGet:
path: /
port: 9090
initialDelaySeconds: 30
timeoutSeconds: 30
serviceAccountName: ro-dashboard
---
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: ro-dashboard
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 9090
selector:
k8s-app: kubernetes-dashboard

关于kubernetes - 受限制的 Kubernetes 仪表板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45915402/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com