前言
在上一篇,我们已经搭建好了一个k8s的集群环境,现在开始整可视化
这个时候,我们可以了解一些名词
master
Master 节点是 Kubernetes 集群的控制节点,负责整个集群的管理和控制
我们之前搭建的就是master节点,可以通过docker ps,docker images看到它运行的组件:
这些组件具体有啥用暂时不讲,后面慢慢来
pod
Pod 是 Kubernetes 最基本的部署调度单元。每个 Pod 可以由一个或多个业务容器和一个根容器(Pause 容器)组成。一个 Pod 表示某个应用的一个实例
可以通过命令来查看当前运行的pod
root@test02:/home/tioncico# kubectl get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE kube-flannel kube-flannel-ds-rfx4q 1/1 Running 0 58s kube-system coredns-6d8c4cb4d-575sw 1/1 Running 0 66m kube-system coredns-6d8c4cb4d-p4nv8 1/1 Running 0 66m kube-system etcd-master 1/1 Running 0 67m kube-system kube-apiserver-master 1/1 Running 0 67m kube-system kube-controller-manager-master 1/1 Running 0 67m kube-system kube-proxy-n2n4n 1/1 Running 0 66m kube-system kube-scheduler-master 1/1 Running 0 67mReplicaSet
是 Pod 副本的抽象,用于解决 Pod 的扩容和伸缩
Deployment
Deployment 表示部署,在内部使用ReplicaSet 来实现。可以通过 Deployment 来生成相应的 ReplicaSet 完成 Pod 副本的创建
部署dashboard
Kubernetes Dashboard 是 k8s集群的一个 WEB UI管理工具,代码托管在 github 上,地址:https://github.com/kubernetes/dashboard
安装方式一:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.1/aio/deploy/recommended.yaml
安装方式二:
wget kubectl apply -f recommended.yaml
说明一下:k8s的管理基本是通过yaml配置,或者直接命令行来实现的,方式1和2其实一样,只是一个是直接下载安装,另一个是文件安装,我们可以查看文件的配置项
k8s的各种管理,都是可以通过yaml配置文件来决定的
安装好之后,可以通过 查看pod命令查看
root@test02:/home/tioncico# kubectl get pods -n kubernetes-dashboard NAME READY STATUS RESTARTS AGE dashboard-metrics-scraper-6f669b9c9b-86hm6 1/1 Running 0 31m kubernetes-dashboard-54c5fb4776-qb2lf 1/1 Running 0 31m
这里的-n表示的是命名空间筛选,筛选的就是dashboard
访问dashboard
在k8s中,所有节点都是内部网络互通,docker容器互通,默认没有对外开启服务,但是可以通过nodeport,反向代理等方案对外提供服务
在dashboard官方中,建议直接使用kubectl proxy方案进行访问,由于我的环境是虚拟机,所以需要额外监听0.0.0.0
root@test02:/home/tioncico# kubectl proxy --address='0.0.0.0' --accept-hosts='^*$'&
同时需要宿主机开放端口
即可访问dashboard后台:
用户认证
k8s授权方案非常多,我们这边使用最简单的,生成一个serviceAccount
创建用户
kubectl create clusterrolebinding serviceaccount-cluster-admin --clusterrole=cluster-admin --user=system:serviceaccount:kubernetes-dashboard:kubernetes-dashboard
查看用户token:
kubectl describe secrets -n kubernetes-dashboard
将token复制到后台登陆界面,即可登陆成功: