使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程(3)Kubernetes Dashboard部署
使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程准备工作节点部署Dashboard部署创建Dashboard应用创建用户准备工作使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程(1)准备工作节点部署使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程(2)节点部署Dashboard部
使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程
准备工作
使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程(1)准备工作
节点部署
使用VMware虚拟机搭建Kubernetes的Master和Worker节点 最全教程(2)节点部署
Dashboard部署
创建Dashboard应用
节点部署好后,可以安装可视化的Kubernetes dashboard管理kubernetes集群,比较方便。
Dashboard官方文档
部署的过程其实跟部署其它应用没有区别,Dashboard也是作为一个普通的web应用部署在k8s上。
kubectl apply命令就是使用文件来配置资源。我们先找到Dashboard的资源,可以访问Dashboard官方Github的release页面,可以看到安装方式:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.3/aio/deploy/recommended.yaml
但是,直接使用这个命令,在国内很有可能因为网络问题无法成功,可以先把这个文件下载下来,使用:
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.3/aio/deploy/recommended.yaml
这样就能下载下来这个配置文件。
然后打开配置文件修改:
vim recommended.yaml
在配置文件的spec部分添加一个type为NodePort,在ports部分添加nodePort为30001,方便外部访问。
但是直接这样创建资源也可能因为网络问题一直卡在ContainerCreating,所以可以先把镜像下载下来。在vim中搜索image可以发现有两个镜像需要下载,一个是kubernetesui/dashboard:v2.0.3,可以使用命令
docker pull kubernetesui/dashboard:v2.0.3
还有一个kubernetesui/metrics-scraper:v1.0.4,可以使用命令:
docker pull kubernetesui/metrics-scraper:v1.0.4
然后再进入vim
中,把拉取策略这一行删掉,因为默认策略是IfNotPresent,也就是本地不存在才拉取。然后:wq
保存。
然后根据这个文件创建pod:
kubectl create -f recommended.yaml
然后查看namespace=kubernetes-dashboard的pods
kubectl get pods --namespace=kubernetes-dashboard
如果一直是容器创建状态,很有可能出问题了,使用describe可以查看详情,然后自行搜索
kubectl describe pod dashboard --namespace=kubernetes-dashboard
我这里的问题如下:
是因为我重启虚拟机以后忘记再运行flannel了(很可能你的问题跟我的不一样,可以复制上面的日志自行搜索),所以我使用了上一篇博客中创建flannel的命令:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
flannel成功创建后,还要删除刚刚的dashboard,重新创建一次
kubectl delete -f recommended.yaml
kubectl create -f recommended.yaml
然后再用kubectl get pods
命令,可以看到正在Running
然后用浏览器访问主节点的IP地址:刚刚设置的nodePort端口号,我这里是https://192.168.224.128:30001,访问成功:
创建用户
这里需要创建用户,才能获得进入Dashboard的权限,可以看Github创建用户的官方文档。
这里创建一个绑定集群的账号,可以查看集群中的所有内容。使用下面的命令:
cat <<EOF > account.yml
# Create Service Account
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
---
# Create ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system
EOF
然后应用这个配置文件
kubectl apply -f account.yml
再使用下面的命令找到Token
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
结果如下图:
复制下面的token,然后粘贴到登录界面,即可登录Dashboard,如下图,可以方便的查看各种资源:
更多推荐
所有评论(0)