一、安装Dashboard

 

 

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes

 

dashboard是kubernetes的一个子项目,其他项目地址为 https://github.com/kubernetes/dashboard  。随着dashboard的更新,其安装方法与安装文件的位置可能会有变动。最新的文件位置可以到该项目网站上查找。

1. 下载dashboard到master节点

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta4/aio/deploy/recommended.yaml

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_02

2.查看namespace(命名空间)的service(服务)

kubectl get namespace

3.查看service

kubectl get service -n kubernetes-dashboard

4.查看deployment

kubectl get deployment -n kubernetes-dashboard -o wide

5.查看pod

kubectl get pod -n kubernetes-dashboard -o wide

 

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_03

6.把ClusterIP类型改为NodePort类型

kubectl edit service -n kubernetes-dashboard  kubernetes-dashboard

把ClusterIP改为NodePort

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_04

kubectl get service -n kubernetes-dashboard  -o wide

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_05

7. 在master节点上通过浏览器访问dashboard

https://192.168.19.194:8443/#/login

  • a. 一定要用https
  • b. 192.168.19.194为kubernetes-dashboard的pod的id
  • c. 8443是第六步配置文件中设置的端口

如果没有反应,则登上几分钟,再试,可能其正在启动服务

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_06

各个worker节点也可以使用该url访问

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_07

 

8. Token登录

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_08

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_09

 

 

vi tonybai-user.yaml

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_10

 

apiVersion: v1
kind: ServiceAccount
metadata:
  name: tonybai
  namespace: kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_11

kubectl create -f tonybai-user.yaml

ls

vi tonybai-user-role-binding.yaml

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_12

apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: dashboard:tonybai
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: tonybai
  namespace: kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_13

kubectl create -f tonybai-user-role-binding.yaml

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_14

kubectl get secret -n kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_15

注意,这里的knfmh是变化的,要改为自己的

kubectl describe secret/tonybai-token-knfmh -n kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_16

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_17

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_18

 

9. 通过apiserver访问

(非必须)

master上新建代理

kubectl proxy

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_19

使用如下域名在master节点上访问

http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_20

 

10. 使用代理使外部机器可以访问

(非必须)

本地笔记本ssh转发到master节点Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_21

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_22

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_23

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_24

 

二、安装Heapster

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_25

 

# 下载heapster源码包

wget -c https://github.com/kubernetes/heapster/archive/master.zip
unzip master.zip
cd heapster-master/
ls
cd deploy/
ls
cd kube-config/
ls
cd influxdb/
ls

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_26

docker pull anjia0532/heapster-grafana-amd64:v4.4.3
docker pull anjia0532/heapster-amd64:v1.5.3
docker pull anjia0532/heapster-influxdb-amd64:v1.3.3


docker tag anjia0532/heapster-grafana-amd64:v4.4.3 k8s.gcr.io/heapster-grafana-amd64:v4.4.3
docker tag anjia0532/heapster-amd64:v1.5.3 k8s.gcr.io/heapster-amd64:v1.5.3
docker tag anjia0532/heapster-influxdb-amd64:v1.3.3 k8s.gcr.io/heapster-influxdb-amd64:v1.3.3

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_27

  Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_28

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_29

 

# 安装heapster

cd ~/heapster-master/deploy/kube-config

# (重要)将influxdb文件夹中的所有yaml文件中的组件版本号修改为上面我们打标签的版本号

kubectl create -f influxdb
kubectl create -f rbac/heapster-rbac.yaml

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_30

 

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_31

kubectl get pods -n kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_32

如果通过这里的pod的状态不为running,则可以查看对应的日志

kubectl describe pods/monitoring-grafana-69df66f668-xg7zp --namespace kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_33

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_34

我们发现其从node3节点查看镜像,所以,我们在node3也应该下载对应的镜像,下载并打上标签之后,再次查看所有pod就好了。

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_35

 

# 验证安装结果
kubectl top nodes

 

kubectl top pods -n kube-system

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_36

 

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_37

 

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes_38

 

 

Kubernetes 小白学习笔记(12)--搭建一个kubernetes集群-安装dashboard和heapster并验证集群安装结果_Kubernetes教程_39

 

 

 

 

 

 

内容来自:

https://coding.imooc.com/class/284.html

https://blog.csdn.net/qq_41709494/article/details/104735008