centos7下kubernetes(5。部署kubernetes dashboard)

基于WEB的dashboard,用户可以用kubernetes dashboard部署容器话的应用,监控应用的状态,执行故障排查任务以及管理kubernetes各种资源。

在kubernetes dashboard中可以查看集群中应用的运行状态,也能创建和修改各种kubernetes资源,比如deployment,job,daemonset等。用户可以 Scale Up/Down Deployment、执行 Rolling Update、重启某个 Pod 或者通过向导部署新的应用。Dashboard 能显示集群中各种资源的状态以及日志信息。

开始安装

1.  下载kubernetes dashboard 的yaml文件
wget https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
2.修改yaml文件中的镜像地址,默认是在K8S的官网中下载的

centos7下kubernetes(5。部署kubernetes  dashboard)

我使用的是阿里的镜像:registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.0

3.修改yaml文件中的 - --apiserver-host=

centos7下kubernetes(5。部署kubernetes  dashboard)

这里我改成了master的地址

4.更改kubernetes-dashboard的service的类型,默认是ClusterIP 类型,更改为NodePort

kubectl --namespace=kube-system edit service kubernetes-dashboard

centos7下kubernetes(5。部署kubernetes  dashboard)

5.查看pod运行是否正常,

kubectl get pod --all-namespaces

centos7下kubernetes(5。部署kubernetes  dashboard)

如果状态不是running,请查看pod的详细信息kubectl describe pod  kubernetes-dashboard-64767d465c-rh76t --namespace=kube-system

如果提示是镜像的原因,需要在yaml文件中更改源的地址

PS;删除dashboard的方法是:kubectl delete -f kubernetes-dashboard.yaml

6.访问k8s的图形化界面

首先查看pod映射出的端口是多少:kubectl get service --all-namespaces

centos7下kubernetes(5。部署kubernetes  dashboard)

通过https://masterip:端口    的方式访问

如果图形化界面提示不安全的连接什么的,请换个浏览器,或者不检查证书,我使用的是火狐浏览器

centos7下kubernetes(5。部署kubernetes  dashboard)

我是通过token的方式进行登陆的,获取token的方法如下:

kubectl get secret -n kube-system | grep dashboard

centos7下kubernetes(5。部署kubernetes  dashboard)

kubectl describe secret kubernetes-dashboard-token-gjbwq  -n kube-system

centos7下kubernetes(5。部署kubernetes  dashboard)

将token复制进去,进入web界面,如果出现以下的错误:

centos7下kubernetes(5。部署kubernetes  dashboard)

由于 kube-apiserver 启用了 RBAC 授权,而yaml没有定义授权的 ServiceAccount,所以后续访问 API server 的 API 时会被拒绝,

解决方案(Update docs to cover RBAC changes in K8S 1.6):

vim   kube-dashboard-rbac.yml

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

centos7下kubernetes(5。部署kubernetes  dashboard)

然后执行kubectl create -f kube-dashboard-rbac.yml

centos7下kubernetes(5。部署kubernetes  dashboard)

在web界面,退出后重新登陆

centos7下kubernetes(5。部署kubernetes  dashboard)

就ok了,实在还是不行的话,请参考https://www.cnblogs.com/Leo_wl/p/8511902.html#_label2

啊啊啊啊啊,好开心啊,今天星期五呢。反正是今天心情挺好的

上一篇:div下的img标签中图片的大小设定


下一篇:[原]部署kubernetes dashboard(二)