文章目录
一、前提
Kubernetes(简称K8S)是开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。它既是一款容器编排工具,也是全新的基于容器技术的分布式架构领先方案。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等功能,提高了大规模容器集群管理的便捷性。
k8s官方推荐的前端操作界面(不推荐)
以上的界面,除了丑之后,功能还是挺全的,但是使用还是不方便。
我推荐的 Kuboard for K8S
附上官方网站
https://www.kuboard.cn/
以上,清晰
如果觉得官方文档太麻烦,可以按照我下面的说明,一步步安装好 Kuboard for K8S
二、安装Kuboard for K8S
2.1 安装
1、获取Kuboard镜像
在可以上网的机器上抓取 kuboard 镜像
docker pull eipwork/kuboard:latest
2、查看 kuboard 镜像的 ID
docker images | grep kuboard
3、输出结果如下所示:
eipwork/kuboard latest 0146965e6475 3 weeks ago 133MB
4、将 Kuboard 镜像导出到文件
docker save 86eaead8421e > kuboard.tar
5、请使用上一个步骤中查询到的 image ID
将 kuboard.tar 传输到 Kubernetes 集群的某一个节点上
2.2 加载Kuboard镜像
在 Kubernetes 集群的某一个节点上执行
docker load < kuboard.tar
为镜像重新添加标签
docker tag 0146965e6475 eipwork/kuboard:latest
2.3 准备kuboard.yaml文件
以下只有一个地方需要更改,就是需要根据实际情况更改,为主机节点名称
vim kuboard-offline.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: kuboard
namespace: kube-system
annotations:
k8s.kuboard.cn/displayName: kuboard
k8s.kuboard.cn/ingress: "true"
k8s.kuboard.cn/service: NodePort
k8s.kuboard.cn/workload: kuboard
labels:
k8s.kuboard.cn/layer: monitor
k8s.kuboard.cn/name: kuboard
spec:
replicas: 1
selector:
matchLabels:
k8s.kuboard.cn/layer: monitor
k8s.kuboard.cn/name: kuboard
template:
metadata:
labels:
k8s.kuboard.cn/layer: monitor
k8s.kuboard.cn/name: kuboard
spec:
nodeName: k8s-master # ----------------------------------需要根据实际情况更改,为主机节点名称
containers:
- name: kuboard
image: eipwork/kuboard:latest
imagePullPolicy: IfNotPresent
tolerations:
- key: node-role.kubernetes.io/master
effect: NoSchedule
---
apiVersion: v1
kind: Service
metadata:
name: kuboard
namespace: kube-system
spec:
type: NodePort
ports:
- name: http
port: 80
targetPort: 80
nodePort: 32567
selector:
k8s.kuboard.cn/layer: monitor
k8s.kuboard.cn/name: kuboard
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: kuboard-user
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: kuboard-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: kuboard-user
namespace: kube-system
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: kuboard-viewer
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: kuboard-viewer
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: view
subjects:
- kind: ServiceAccount
name: kuboard-viewer
namespace: kube-system
2.4 执行安装命令
kubectl apply -f kuboard-offline.yaml
三、启动观察
3.1 获取token
echo $(kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d)
运行结果
3.2 打开浏览器,享受飞一般的感觉
输入token
四、后记
大部分的程序员,都是面向百度或者谷歌进行编程的,而网上的资料乱七八糟,有时候找起来让人难受,于是本人无偿进行资料收集的工作,大部分资料都是本人实打实收集的而且测试过,大家不用怀疑准确性,奈何能力有限,免于遗漏,希望读者可以在评论或者私信我,进行改正,大家一起为互联网技术做贡献。
========================
收集资料枯燥无味,如果本文对你有帮助,可以点个赞,这个也是对我最大的鼓励和赞许。
本人行不改名坐不改姓,潮汕的灿灿展
立志在互联网这一行,做出自己的贡献
========================