文章目录

  • 一、前提
  • 二、安装Kuboard for K8S
  • 2.1 安装
  • 2.2 加载Kuboard镜像
  • 2.3 准备kuboard.yaml文件
  • 2.4 执行安装命令
  • 三、启动观察
  • 3.1 获取token
  • 3.2 打开浏览器,享受飞一般的感觉
  • 四、后记


一、前提

Kubernetes(简称K8S)是开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。它既是一款容器编排工具,也是全新的基于容器技术的分布式架构领先方案。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等功能,提高了大规模容器集群管理的便捷性。

k8s官方推荐的前端操作界面(不推荐)

如何在k8s控制台关闭一个容器 k8s操作界面_k8s

以上的界面,除了丑之后,功能还是挺全的,但是使用还是不方便。

我推荐的 Kuboard for K8S

附上官方网站

https://www.kuboard.cn/

如何在k8s控制台关闭一个容器 k8s操作界面_docker_02


以上,清晰

如果觉得官方文档太麻烦,可以按照我下面的说明,一步步安装好 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

三、启动观察

如何在k8s控制台关闭一个容器 k8s操作界面_docker_03

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)

运行结果

如何在k8s控制台关闭一个容器 k8s操作界面_Group_04

3.2 打开浏览器,享受飞一般的感觉

输入token

如何在k8s控制台关闭一个容器 k8s操作界面_如何在k8s控制台关闭一个容器_05


如何在k8s控制台关闭一个容器 k8s操作界面_如何在k8s控制台关闭一个容器_06