Kubernetes部署_08_两种可视化工具Dashboard和Kuboard
Dashboard可视化工具
系列文章目录
文章目录
前言
一、可视化DashBoard
可视化:dashboard是简单的可视化,普罗米修斯是复杂的可视化
官网
:https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
Dashboard is a web-based Kubernetes user interface. You can use Dashboard to deploy containerized applications to a Kubernetes cluster, troubleshoot your containerized application, and manage the cluster resources. You can use Dashboard to get an overview of applications running on your cluster, as well as for creating or modifying individual Kubernetes resources (such as Deployments, Jobs, DaemonSets, etc). For example, you can scale a Deployment, initiate a rolling update, restart a pod or deploy new applications using a deploy wizard.
二、可视化DashBoard实践
(1)根据yaml文件创建资源
vi dashboard.yaml (比较大,放在CSDN资源文件中下载)
kubectl apply -f dashboard.yaml
(2)查看资源
kubectl get pods -n kube-system
kubectl get pods -n kube-system -o wide
kubectl get svc -n kube-system
kubectl get deploy kubernetes-dashboard -n kube-system
(3)使用火狐浏览器访问 (因为k8s中使用的是https 443,所以宿主机需要 https://宿主机ip:3008/)
https://192.168.100.151:30018/
特别注意1:在chrome浏览器中输入时,如果输入 https://192.168.100.151:30018 而不是 192.168.100.151:30018 ,即需要手动补上 https://
特别注意2:输入 https://192.168.100.151:30018 ,遇到这种情况,如下:
当前页面点击任意空白处,直接键盘输入“thisisunsafe”即可解决(不是在chrome浏览器搜索栏输入,而是选中网页,然后输入)。
原理是chrome认为这个网站是不安全的,不让你访问。而你输入了这句话,就类似于签了生死状,了解了风险。chrome就放你进去,但那之后再出问题也就没有责任了。
(4)生成登录需要的token
# 创建service account
kubectl create sa dashboard-admin -n kube-system
# 创建角色绑定关系
kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
# 查看dashboard-admin的secret名字
ADMIN_SECRET=$(kubectl get secrets -n kube-system | grep dashboard-admin | awk '{print $1}')
echo ADMIN_SECRET
# 打印secret的token
kubectl describe secret -n kube-system ${ADMIN_SECRET} | grep -E '^token' | awk '{print $2}'
效果演示:
这里注意,dashboard.yaml 需要一个镜像 k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.3 ,这个在国外,我一般是使用 docker load -i xxx.tar(或者xxx.tar.gz) 导入进去的,然后docker tag + docker push放到自己的阿里云镜像仓库,修改一下 dashboard.yaml 的 images 字段就可以使用了。
三、Kuboard可视化
3.1 kuboard-v3 部署
---
apiVersion: v1
kind: Namespace
metadata:
name: kuboard
---
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
deployment.kubernetes.io/revision: '9'
k8s.kuboard.cn/ingress: 'false'
k8s.kuboard.cn/service: NodePort
k8s.kuboard.cn/workload: kuboard-v3
labels:
k8s.kuboard.cn/name: kuboard-v3
name: kuboard-v3
namespace: kuboard
spec:
replicas: 1
selector:
matchLabels:
k8s.kuboard.cn/name: kuboard-v3
template:
metadata:
labels:
k8s.kuboard.cn/name: kuboard-v3
spec:
containers:
- image: 'eipwork/kuboard:v3'
imagePullPolicy: Always
name: kuboard
---
apiVersion: v1
kind: Service
metadata:
annotations:
k8s.kuboard.cn/workload: kuboard-v3
labels:
k8s.kuboard.cn/name: kuboard-v3
name: kuboard-v3
namespace: kuboard
spec:
ports:
- name: webui
nodePort: 30080
port: 80
protocol: TCP
targetPort: 80
- name: agentservertcp
nodePort: 30081
port: 10081
protocol: TCP
targetPort: 10081
- name: agentserverudp
nodePort: 30081
port: 10081
protocol: UDP
targetPort: 10081
selector:
k8s.kuboard.cn/name: kuboard-v3
sessionAffinity: None
type: NodePort
浏览器上输入 http://192.168.100.155:30080/ ,第一次会跳转到登录页面
用户名: admin
密 码: Kuboard123
kuboard 关联k8s集群包括两种方式:
方式1:KubeConfig(Kuboard 可以访问 Kubernetes APIServer)
这种方式需要在master节点中执行 cat ~/.kube/config 查看配置,然后填入相应的地方进行导入
方式2:Kuboard Agent(Kubernetes 节点可以访问 Kuboard)
这种方式需要在Kubernetes上安装Kuboard Agent,用来访问Kuboard
这里使用 kubeconfig ,因为不需要安装 kuboard-agent
这个集群接入进来了,如下:
3.2 kuboard-v3 部署 + kuboard-etcd 部署
没有etcd持久化,只需要pod重启,刚刚进入的k8s集群,就会丢掉,所以需要 安装 kuboard-etcd.
略。
总结
kuboard参考资料:安装kuboard—使用 StorageClass 提供持久化
kuboard参考资料:安装 Kuboard v3 - kubernetes
更多推荐
所有评论(0)