kubeadm dashboard安装

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: kubeadm dashboard安装

1.因访问dashboard界面时需要使用https

[root@k8s-master ~]# openssl genrsa -des3 -passout pass:x -out dashboard.pass.key 2048

2.将生成的秘钥传给node节点

[root@k8s-master ~]# mkdir /opt/certs
[root@k8s-master ~]# ls
dashboard.crt  dashboard.csr  dashboard.key  dashboard.pass.key
[root@k8s-master ~]# mv dashboard.crt dashboard.key /opt/certs/
[root@k8s-master ~]# scp -r /opt/certs  k8s-node-1:/opt/
dashboard.crt                                                                           100% 1273   919.4KB/s   00:00    
dashboard.key                                                                           100% 1675     1.5MB/s   00:00    
[root@k8s-master ~]# scp -r /opt/certs  k8s-node-2:/opt/
dashboard.crt                                                                           100% 1273   966.4KB/s   00:00    
dashboard.key    

3、下载yaml文件

https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml

修改相应位置
kind: Service
spec:
    type: NodePort
    ports:
    - port: 443
    targetPort: 8443
    nodePort: 30001
selector:
    k8s-app: kubernetes-dashboard

[root@k8s-master ~]# kubectl apply -f kubernetes-dashboard.yaml

如果已经有了的话,通过下面命令删除
[root@k8s-master ~]# kubectl delete -f kubernetes-dashboard.yaml

[root@k8s-master dashboard]# kubectl describe secret dashboard-admin  -n kubernetes-dashboard

4、检查pods发现dashboard正常运行

[root@k8s-00001 ~]# kubectl  get pods --namespace=kubernetes-dashboard
NAME                                        READY   STATUS    RESTARTS   AGE
dashboard-metrics-scraper-c45b7869d-9qd58   1/1     Running   0          14m
kubernetes-dashboard-576cb95f94-8nh2f       1/1     Running   0          14m

5、验证

https://8.130.14.51:30001

img.png

6、增加账号密码

# 创建用户
kubectl create serviceaccount dashboard-admin -n kube-system

# 用户授权
kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin

# 获取用户Token
kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}')

7、配置用户名密码登录

参考地址
https://www.cnblogs.com/wenyang321/p/14149099.html

1、备份kube-apiserver.yaml(重要)
[root@ptestk8sm ~]# cp /etc/kubernetes/manifests/kube-apiserver.yaml .

2、新增密码文件
账户admin密码admin,唯一id是1
[root@ptestk8sm ~]# echo "admin,admin,1" > /etc/kubernetes/pki/basic_auth_file
每行写一个账号,id不能重复(资料写的账号密码要一样,未测试)
注意密码文件路径,通过查看kube-apiserver.yaml可看到其可访问范围

3、修改apiserver.yaml
[root@ptestk8sm ~]# vim /etc/kubernetes/manifests/kube-apiserver.yaml
加入这一行
- --basic-auth-file=/etc/kubernetes/pki/basic_auth_file

4、查看状态
apiserver.yaml被修改后会自动重启(十秒左右),查看状态有报错

5、排错
如果报错,可能没有问题
是添加的这一条出现了问题,原因是- --basic-auth-file已经在1.16版本被弃用,改为了- --token-auth-file

6、修改配置,再次查看状态
- --token-auth-file=/etc/kubernetes/pki/basic_auth_file

7、为admin用户绑定权限
[root@ptestk8sm ~]# kubectl create clusterrolebinding login-on-dashboard-with-cluster-admin --clusterrole=cluster-admin --user=admin

查看绑定结果
[root@ptestk8sm ~]# kubectl get clusterrolebinding login-on-dashboard-with-cluster-admin
NAME                                    ROLE                        AGE
login-on-dashboard-with-cluster-admin   ClusterRole/cluster-admin   10s

8、修改recommended.yaml
kubectl edit deploy kubernetes-dashboard -n kubernetes-dashboard
添加如下两行,保存
- --token-ttl=21600 #新增行 单位秒
- --authentication-mode=basic #新增行

9、新问题,登录后不显示组件,因为匿名用户禁止访问,添加权限
kubectl create clusterrolebinding test:anonymous --clusterrole=cluster-admin --user=system:anonymous

8、dashboard操作手册

https://blog.51cto.com/u_15098527/3592147

微信公众号,需要的话就关注下我~

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
11月前
|
Kubernetes 数据可视化 容器
k8s安装Dashboard
k8s安装Dashboard
269 0
|
域名解析 Kubernetes API
Kubernetes Dashboard 安装与使用
Kubernetes Dashboard是Kubernetes集群的Web UI,用户可以通过Dashboard进行管理集群内所有资源对象,本文将为大家讲解Kubernetes Dashboard 的安装与使用。
13834 1
Kubernetes Dashboard 安装与使用
|
1月前
|
Kubernetes 监控 API
在K8S中,什么是 Minikube、Kubectl、Kubelet?
在K8S中,什么是 Minikube、Kubectl、Kubelet?
|
2月前
|
存储 Linux 数据库
k8s-dashboard、helm
k8s-dashboard、helm
38 1
|
1月前
|
Kubernetes 监控 API
在K8S中,Minikube、Kubectl、Kubelet是什么?
在K8S中,Minikube、Kubectl、Kubelet是什么?
|
1月前
|
Kubernetes 监控 Docker
[kubernetes]安装dashboard
[kubernetes]安装dashboard
|
4月前
|
Kubernetes 负载均衡 调度
使用kubeadm快速安装Kubernetes v1.28.2
使用kubeadm快速安装Kubernetes v1.28.2
1625 0
|
4月前
|
Kubernetes Linux 网络安全
kubeadm安装k8s
该文档提供了一套在CentOS 7.6上安装Docker和Kubernetes(kubeadm)的详细步骤,包括安装系统必备软件、关闭防火墙和SELinux、禁用swap、开启IP转发、设置内核参数、配置Docker源和加速器、安装指定版本Docker、启动Docker、设置kubelet开机启动、安装kubelet、kubeadm、kubectl、下载和配置Kubernetes镜像、初始化kubeadm、创建kubeconfig文件、获取节点加入集群命令、下载Calico YAML文件以及安装Calico。这些步骤不仅适用于v1.19.14,也适用于更高版本。
204 1
|
4月前
|
Kubernetes Linux Docker
kubeadm安装Kubernetes
kubeadm安装Kubernetes
65 0
|
9月前
|
Kubernetes Unix Linux
kubeadm安装kubernetes集群
kubeadm安装kubernetes集群