4 changed files with 0 additions and 336 deletions
@ -1,12 +0,0 @@ |
|||||
apiVersion: rbac.authorization.k8s.io/v1 |
|
||||
kind: ClusterRoleBinding |
|
||||
metadata: |
|
||||
name: admin-user |
|
||||
roleRef: |
|
||||
apiGroup: rbac.authorization.k8s.io |
|
||||
kind: ClusterRole |
|
||||
name: cluster-admin |
|
||||
subjects: |
|
||||
- kind: ServiceAccount |
|
||||
name: admin-user |
|
||||
namespace: kubernetes-dashboard |
|
||||
@ -1,5 +0,0 @@ |
|||||
apiVersion: v1 |
|
||||
kind: ServiceAccount |
|
||||
metadata: |
|
||||
name: admin-user |
|
||||
namespace: kubernetes-dashboard |
|
||||
@ -1,16 +0,0 @@ |
|||||
apiVersion: networking.k8s.io/v1beta1 |
|
||||
kind: Ingress |
|
||||
metadata: |
|
||||
name: dashboard-ingress |
|
||||
namespace: kubernetes-dashboard |
|
||||
annotations: |
|
||||
kubernetes.io/ingress.class: "traefik" |
|
||||
spec: |
|
||||
rules: |
|
||||
- host: dashboard.k3s.semapp.lan |
|
||||
http: |
|
||||
paths: |
|
||||
- path: / |
|
||||
backend: |
|
||||
serviceName: kubernetes-dashboard |
|
||||
servicePort: 443 |
|
||||
@ -1,303 +0,0 @@ |
|||||
# Copyright 2017 The Kubernetes Authors. |
|
||||
# |
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); |
|
||||
# you may not use this file except in compliance with the License. |
|
||||
# You may obtain a copy of the License at |
|
||||
# |
|
||||
# http://www.apache.org/licenses/LICENSE-2.0 |
|
||||
# |
|
||||
# Unless required by applicable law or agreed to in writing, software |
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, |
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
||||
# See the License for the specific language governing permissions and |
|
||||
# limitations under the License. |
|
||||
|
|
||||
apiVersion: v1 |
|
||||
kind: Namespace |
|
||||
metadata: |
|
||||
name: kubernetes-dashboard |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
apiVersion: v1 |
|
||||
kind: ServiceAccount |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: Service |
|
||||
apiVersion: v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
spec: |
|
||||
ports: |
|
||||
- port: 443 |
|
||||
targetPort: 8443 |
|
||||
selector: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
apiVersion: v1 |
|
||||
kind: Secret |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard-certs |
|
||||
namespace: kubernetes-dashboard |
|
||||
type: Opaque |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
apiVersion: v1 |
|
||||
kind: Secret |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard-csrf |
|
||||
namespace: kubernetes-dashboard |
|
||||
type: Opaque |
|
||||
data: |
|
||||
csrf: "" |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
apiVersion: v1 |
|
||||
kind: Secret |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard-key-holder |
|
||||
namespace: kubernetes-dashboard |
|
||||
type: Opaque |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: ConfigMap |
|
||||
apiVersion: v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard-settings |
|
||||
namespace: kubernetes-dashboard |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: Role |
|
||||
apiVersion: rbac.authorization.k8s.io/v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
rules: |
|
||||
# Allow Dashboard to get, update and delete Dashboard exclusive secrets. |
|
||||
- apiGroups: [""] |
|
||||
resources: ["secrets"] |
|
||||
resourceNames: ["kubernetes-dashboard-key-holder", "kubernetes-dashboard-certs", "kubernetes-dashboard-csrf"] |
|
||||
verbs: ["get", "update", "delete"] |
|
||||
# Allow Dashboard to get and update 'kubernetes-dashboard-settings' config map. |
|
||||
- apiGroups: [""] |
|
||||
resources: ["configmaps"] |
|
||||
resourceNames: ["kubernetes-dashboard-settings"] |
|
||||
verbs: ["get", "update"] |
|
||||
# Allow Dashboard to get metrics. |
|
||||
- apiGroups: [""] |
|
||||
resources: ["services"] |
|
||||
resourceNames: ["heapster", "dashboard-metrics-scraper"] |
|
||||
verbs: ["proxy"] |
|
||||
- apiGroups: [""] |
|
||||
resources: ["services/proxy"] |
|
||||
resourceNames: ["heapster", "http:heapster:", "https:heapster:", "dashboard-metrics-scraper", "http:dashboard-metrics-scraper"] |
|
||||
verbs: ["get"] |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: ClusterRole |
|
||||
apiVersion: rbac.authorization.k8s.io/v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard |
|
||||
rules: |
|
||||
# Allow Metrics Scraper to get metrics from the Metrics server |
|
||||
- apiGroups: ["metrics.k8s.io"] |
|
||||
resources: ["pods", "nodes"] |
|
||||
verbs: ["get", "list", "watch"] |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
apiVersion: rbac.authorization.k8s.io/v1 |
|
||||
kind: RoleBinding |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
roleRef: |
|
||||
apiGroup: rbac.authorization.k8s.io |
|
||||
kind: Role |
|
||||
name: kubernetes-dashboard |
|
||||
subjects: |
|
||||
- kind: ServiceAccount |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
apiVersion: rbac.authorization.k8s.io/v1 |
|
||||
kind: ClusterRoleBinding |
|
||||
metadata: |
|
||||
name: kubernetes-dashboard |
|
||||
roleRef: |
|
||||
apiGroup: rbac.authorization.k8s.io |
|
||||
kind: ClusterRole |
|
||||
name: kubernetes-dashboard |
|
||||
subjects: |
|
||||
- kind: ServiceAccount |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: Deployment |
|
||||
apiVersion: apps/v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
name: kubernetes-dashboard |
|
||||
namespace: kubernetes-dashboard |
|
||||
spec: |
|
||||
replicas: 1 |
|
||||
revisionHistoryLimit: 10 |
|
||||
selector: |
|
||||
matchLabels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
template: |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: kubernetes-dashboard |
|
||||
spec: |
|
||||
containers: |
|
||||
- name: kubernetes-dashboard |
|
||||
image: kubernetesui/dashboard:v2.4.0 |
|
||||
imagePullPolicy: Always |
|
||||
ports: |
|
||||
- containerPort: 8443 |
|
||||
protocol: TCP |
|
||||
args: |
|
||||
- --auto-generate-certificates |
|
||||
- --namespace=kubernetes-dashboard |
|
||||
# Uncomment the following line to manually specify Kubernetes API server Host |
|
||||
# If not specified, Dashboard will attempt to auto discover the API server and connect |
|
||||
# to it. Uncomment only if the default does not work. |
|
||||
# - --apiserver-host=http://my-address:port |
|
||||
volumeMounts: |
|
||||
- name: kubernetes-dashboard-certs |
|
||||
mountPath: /certs |
|
||||
# Create on-disk volume to store exec logs |
|
||||
- mountPath: /tmp |
|
||||
name: tmp-volume |
|
||||
livenessProbe: |
|
||||
httpGet: |
|
||||
scheme: HTTPS |
|
||||
path: / |
|
||||
port: 8443 |
|
||||
initialDelaySeconds: 30 |
|
||||
timeoutSeconds: 30 |
|
||||
securityContext: |
|
||||
allowPrivilegeEscalation: false |
|
||||
readOnlyRootFilesystem: true |
|
||||
runAsUser: 1001 |
|
||||
runAsGroup: 2001 |
|
||||
volumes: |
|
||||
- name: kubernetes-dashboard-certs |
|
||||
secret: |
|
||||
secretName: kubernetes-dashboard-certs |
|
||||
- name: tmp-volume |
|
||||
emptyDir: {} |
|
||||
serviceAccountName: kubernetes-dashboard |
|
||||
nodeSelector: |
|
||||
"kubernetes.io/os": linux |
|
||||
# Comment the following tolerations if Dashboard must not be deployed on master |
|
||||
tolerations: |
|
||||
- key: node-role.kubernetes.io/master |
|
||||
effect: NoSchedule |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: Service |
|
||||
apiVersion: v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: dashboard-metrics-scraper |
|
||||
name: dashboard-metrics-scraper |
|
||||
namespace: kubernetes-dashboard |
|
||||
spec: |
|
||||
ports: |
|
||||
- port: 8000 |
|
||||
targetPort: 8000 |
|
||||
selector: |
|
||||
k8s-app: dashboard-metrics-scraper |
|
||||
|
|
||||
--- |
|
||||
|
|
||||
kind: Deployment |
|
||||
apiVersion: apps/v1 |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: dashboard-metrics-scraper |
|
||||
name: dashboard-metrics-scraper |
|
||||
namespace: kubernetes-dashboard |
|
||||
spec: |
|
||||
replicas: 1 |
|
||||
revisionHistoryLimit: 10 |
|
||||
selector: |
|
||||
matchLabels: |
|
||||
k8s-app: dashboard-metrics-scraper |
|
||||
template: |
|
||||
metadata: |
|
||||
labels: |
|
||||
k8s-app: dashboard-metrics-scraper |
|
||||
spec: |
|
||||
securityContext: |
|
||||
seccompProfile: |
|
||||
type: RuntimeDefault |
|
||||
containers: |
|
||||
- name: dashboard-metrics-scraper |
|
||||
image: kubernetesui/metrics-scraper:v1.0.7 |
|
||||
ports: |
|
||||
- containerPort: 8000 |
|
||||
protocol: TCP |
|
||||
livenessProbe: |
|
||||
httpGet: |
|
||||
scheme: HTTP |
|
||||
path: / |
|
||||
port: 8000 |
|
||||
initialDelaySeconds: 30 |
|
||||
timeoutSeconds: 30 |
|
||||
volumeMounts: |
|
||||
- mountPath: /tmp |
|
||||
name: tmp-volume |
|
||||
securityContext: |
|
||||
allowPrivilegeEscalation: false |
|
||||
readOnlyRootFilesystem: true |
|
||||
runAsUser: 1001 |
|
||||
runAsGroup: 2001 |
|
||||
serviceAccountName: kubernetes-dashboard |
|
||||
nodeSelector: |
|
||||
"kubernetes.io/os": linux |
|
||||
# Comment the following tolerations if Dashboard must not be deployed on master |
|
||||
tolerations: |
|
||||
- key: node-role.kubernetes.io/master |
|
||||
effect: NoSchedule |
|
||||
volumes: |
|
||||
- name: tmp-volume |
|
||||
emptyDir: {} |
|
||||
Loading…
Reference in new issue