는 Kubernetes V1.16.2의 배포 대시 보드 V2.0 (beta5)

는 Kubernetes V1.16.2의 배포 대시 보드 V2.0 (beta5)

대시 보드 마스터에 배포

클러스터 설치 배포 참조 설치는 Kubernetes V1.16.2을

kubectl get pods -A  -o wide

대체 텍스트

대시 보드 다운로드 및 설치 스크립트를 수정 (마스터에서 실행)

참조 설치 지침의 공식 웹 사이트 마스터에서 실행 :

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta5/aio/deploy/recommended.yaml

(VI recommended.yaml) 파일의 내용을 수정 Recommended.yaml :

---
#增加直接访问端口
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort #增加
  ports:
    - port: 443
      targetPort: 8443
      nodePort: 30008 #增加
  selector:
    k8s-app: kubernetes-dashboard

---
#因为自动生成的证书很多浏览器无法使用,所以我们自己创建,注释掉kubernetes-dashboard-certs对象声明
#apiVersion: v1
#kind: Secret
#metadata:
#  labels:
#    k8s-app: kubernetes-dashboard
#  name: kubernetes-dashboard-certs
#  namespace: kubernetes-dashboard
#type: Opaque

---

인증서 만들기

mkdir dashboard-certs

cd dashboard-certs/

#创建命名空间
kubectl create namespace kubernetes-dashboard

# 创建key文件
openssl genrsa -out dashboard.key 2048

#证书请求
openssl req -days 36000 -new -out dashboard.csr -key dashboard.key -subj '/CN=dashboard-cert'

#自签证书
openssl x509 -req -in dashboard.csr -signkey dashboard.key -out dashboard.crt

#创建kubernetes-dashboard-certs对象
kubectl create secret generic kubernetes-dashboard-certs --from-file=dashboard.key --from-file=dashboard.crt -n kubernetes-dashboard

설치 대시 보드

#安装
kubectl create -f  ~/recommended.yaml

#检查结果
kubectl get pods -A  -o wide

kubectl get service -n kubernetes-dashboard  -o wide

대체 텍스트
대체 텍스트

대시 보드 관리자 만들기

계정 만들기 :

vi dashboard-admin.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: dashboard-admin
  namespace: kubernetes-dashboard
#保存退出后执行
kubectl create -f dashboard-admin.yaml

사용자에게 권한을 할당합니다 :

vi dashboard-admin-bind-cluster-role.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: dashboard-admin-bind-cluster-role
  labels:
    k8s-app: kubernetes-dashboard
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: dashboard-admin
  namespace: kubernetes-dashboard
#保存退出后执行
kubectl create -f dashboard-admin-bind-cluster-role.yaml

보기 및 사용자 토큰을 복사 :

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep dashboard-admin | awk '{print $1}')

대체 텍스트

방문 https://192.168.0.7:30008를 , 구글 브라우저가 작동하지 않지만, 사파리 등 다른 브라우저, 선택 키 토큰은 로그인, 방금 복사 :

대체 텍스트

성공적으로 로그인 한 후 :
대체 텍스트

성공적으로 로그인 네임 스페이스 후 KUBE 시스템을 선택하고 포드를 참조하십시오

대체 텍스트
포드 CPU 그래서 설치 측정 서버가 없기 때문에, 메모리 상황이 보이지 않습니다.

통계 서버 설치

추신 : heapster가 교체 된 측정 서버

노드 1의 이미지 파일을 다운로드 :

docker pull bluersw/metrics-server-amd64:v0.3.6
docker tag bluersw/metrics-server-amd64:v0.3.6 k8s.gcr.io/metrics-server-amd64:v0.3.6  

: 마스터에 설치 수행
는 Kubernetes 메트릭 서버 선언, 객체 파일을 다운로드 K8S를 : 1.8 이상

cd ~

mkdir metrics-server

cd metrics-server

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/aggregated-metrics-reader.yaml

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/auth-delegator.yaml

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/auth-reader.yaml

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/metrics-apiservice.yaml

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/metrics-server-deployment.yaml

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/metrics-server-service.yaml

wget https://raw.githubusercontent.com/kubernetes-incubator/metrics-server/master/deploy/1.8%2B/resource-reader.yaml

설치 스크립트를 수정 :

vi metrics-server-deployment.yaml
spec:
  selector:
    matchLabels:
      k8s-app: metrics-server
  template:
    metadata:
      name: metrics-server
      labels:
        k8s-app: metrics-server
    spec:
      serviceAccountName: metrics-server
      volumes:
      # mount in tmp so we can safely use from-scratch images and/or read-only containers
      - name: tmp-dir
        emptyDir: {}
      containers:
      - name: metrics-server
        image: k8s.gcr.io/metrics-server-amd64:v0.3.6
        imagePullPolicy: IfNotPresent #修改
        command: #增加
        - /metrics-server
        - --kubelet-preferred-address-types=InternalIP
        - --kubelet-insecure-tls
        volumeMounts:
        - name: tmp-dir
          mountPath: /tmp

설치 스크립트를 실행하고 생산의 결과를 볼 수 :

#安装
kubectl create -f ~/metrics-server

#1-2分钟后查看结果
kubectl top nodes

대체 텍스트

돌아 가기 대시 보드 인터페이스에는 CPU 및 메모리 사용량을 볼 수 있습니다 :
대체 텍스트

근원

Github의 저장소 : HTTPS : //github.com/sunweisheng/Kubernetes

추천

출처www.cnblogs.com/bluersw/p/11747161.html