k8s安装dashboard面板

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

k8s dashboard github地址https://github.com/kubernetes/dashboard

注意dashboard版本要和k8s版本匹配具体参考release里的Compatibilityhttps://github.com/kubernetes/dashboard/releases

安装命令

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
修改recommended.yaml内容
在kind: Service节点的spec节点下添加 type: NodePort
完整Service部分如下

kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort
  ports:
    - port: 443
      targetPort: 8443
  selector:
    k8s-app: kubernetes-dashboard    
修改后执行
kubectl apply -f recommended.yaml

查看运行情况

#查看所有命名空间
kubectl get namespace
#查看dashboard命名空间下的pod
kubectl get pod -n kubernetes-dashboard
#找到node节点
kubectl get pod -o wide -n kubernetes-dashboard
#找到service端口
kubectl get svc -n kubernetes-dashboard

这里节点是192.168.3.85 svc的NodePort端口为30432

根据查看到的节点和端口访问

https://192.168.3.85:30432/

查看token早期版本内置一个用户并且可以通过命令查看新版本需要手动创建用户并且需要通过api接口查看

早期版本

#查看token的secret名
kubectl get secret -n kubernetes-dashboard
#查看token
kubectl describe kubernetes-dashboard-token-ngcmg -n kubernetes-dashboard

新版本创建用户后查看token

#创建k8s管理员用户 用户名dashboard-admin
kubectl create serviceaccount dashboard-admin -n kube-system
#授予角色
kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
# 使用kubectl 开启代理并且设置代理端口为8001
kubectl proxy --port=8001
# 检查是否开启成功
curl http://localhost:8001/api/
# 获取token 注意替换里面的namespace和用户名
curl 'http://127.0.0.1:8001/api/v1/namespaces/kube-system/serviceaccounts/dashboard-admin/token' -H "Content-Type:application/json" -XPOST -d '{}'

问题排查

查看pod时一直在ContainerCreating

通过describe命令查看

kubectl describe pod kubernetes-dashboard -n kubernetes-dashboard

停在pull镜像那一步这个国内下载到60M左右速度下降到非常慢

考虑在外面pull或者其他机器pull后导入

pull导出导入命令如下

#拉取镜像
docker pull kubernetesui/dashboard:v2.7.0
#镜像到处保存为tar文件
docker save kubernetesui/dashboard:v2.7.0> dashboardv2.7.0.tar
#导入tar格式的镜像
docker load < dashboardv2.7.0.tar

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: k8s