update kuboard introduction v3.1.x

根据 Kuboard v3.1.x 更新 Kuboard 介绍
pull/1023/head
shaohq 2021-05-20 10:32:39 +08:00 committed by jmgao
parent 1cc2ac039f
commit 32b01d5a4d
1 changed files with 84 additions and 72 deletions

View File

@ -2,10 +2,9 @@
## Kuboard 介绍 ## Kuboard 介绍
Kuboard 官方文档请参考 [https://kuboard.cn](https://kuboard.cn)
Kuboard 是一款免费的 Kubernetes 管理工具,提供了丰富的功能: Kuboard 是一款免费的 Kubernetes 管理工具,提供了丰富的功能:
* Kubernetes 多集群管理
* Kubernetes 基本管理功能 * Kubernetes 基本管理功能
* 节点管理 * 节点管理
* 名称空间管理 * 名称空间管理
@ -33,79 +32,92 @@ Kuboard 是一款免费的 Kubernetes 管理工具,提供了丰富的功能:
* Kuboard 自定义名称空间布局 * Kuboard 自定义名称空间布局
* Kuboard 中英文语言包 * Kuboard 中英文语言包
## 安装前提 <p>
<a aria-label="github" href="https://starchart.cc/eip-work/kuboard-press" target="_blank">
<img src="https://badgen.net/github/stars/eip-work/kuboard-press?label=github stars"/>
</a>
</p>
Kuboard 只依赖于 Kubernetes API您可以在多种情况下使用 Kuboard <a href="https://starchart.cc/eip-work/kuboard-press" target="_blank">
* 使用 kubeadm 安装的 Kubernetes 集群 <img src="https://starchart.cc/eip-work/kuboard-press.svg" alt="Kubernetes教程_Kuboard_Github_Star" style="height: 320px; width: 540px;">
* 使用二进制方式安装的 Kubernetes 集群 </a>
* 阿里云/腾讯云等云供应商托管的 Kubernetes 集群
Kuboard 对 Kubernetes 的版本兼容性,如下表所示: 点击这里可以查看 [Kuboard 的安装文档](https://kuboard.cn/install/v3/install.html)
| Kubernetes 版本 | Kuboard 版本 | 兼容性 | 说明 | ## 在线演示
| --------------- | -------------- | ------ | ------------------------------------------------------------ |
| v1.18 | v1.0.x v2.0.x | <span style="font-size: 24px;">😄</span> | 已验证 | <div>
| v1.17 | v1.0.x v2.0.x | <span style="font-size: 24px;">😄</span> | 已验证 | 在线演示环境中,您具备 <span style="color: red; font-weight: bold">只读</span> 权限,只能体验 Kuboard 的一部分功能。<br/>
| v1.16 | v1.0.x v2.0.x | <span style="font-size: 24px;">😄</span> | 已验证 | </div>
| v1.15 | v1.0.x v2.0.x | <span style="font-size: 24px;">😄</span> | 已验证 | <div style="padding: 10px; border: 1px solid #eee; border-radius: 10px; margin: 10px 0px; background-color: #fafafa;">
| v1.14 | v1.0.x v2.0.x | <span style="font-size: 24px;">😄</span> | 已验证 | <a href="http://demo.kuboard.cn:10080" target="_blank">http://demo.kuboard.cn:10080</a> <br/>
| v1.13 | v1.0.x v2.0.x | <span style="font-size: 24px;">😄</span> | 已验证 | <div style="width: 60px; display: inline-block; margin-top: 5px;">&nbsp;</div>
| v1.12 | v1.0.x v2.0.x | <span style="font-size: 24px;">😐</span> | Kubernetes Api v1.12 不支持 dryRun<br />Kuboard 不支持 Kubernetes v1.12 | demo <br/>
| v1.11 | v1.0.x v2.0.x | <span style="font-size: 24px;">😐</span> | Kuboard 不支持 Kubernetes v1.11 | <div style="width: 60px; display: inline-block;">&nbsp;</div>
demo123
</div>
## 特点介绍
相较于 Kubernetes Dashboard 等其他 Kubernetes 管理界面Kuboard 的主要特点有:
* 多种认证方式
Kuboard 可以使用内建用户库、gitlab / github 单点登录或者 LDAP 用户库进行认证,避免管理员将 ServiceAccount 的 Token 分发给普通用户而造成的麻烦。使用内建用户库时,管理员可以配置用户的密码策略、密码过期时间等安全设置。
![Kuboard登录界面](https://kuboard.cn/images/intro.assets/image-20210405162940278.png)
* 多集群管理
管理员可以将多个 Kubernetes 集群导入到 Kuboard 中,并且通过权限控制,将不同集群/名称空间的权限分配给指定的用户或用户组。
![Kuboard集群列表页](https://kuboard.cn/images/intro.assets/image-20210405164029151.png)
* 微服务分层展示
在 Kuboard 的名称空间概要页中,以经典的微服务分层方式将工作负载划分到不同的分层,更加直观地展示微服务架构的结构,并且可以为每一个名称空间自定义名称空间布局。
![Kuboard-微服务分层](https://kuboard.cn/images/intro.assets/image-20210405164532452.png)
* 工作负载的直观展示
Kuboard 中将 Deployment 的历史版本、所属的 Pod 列表、Pod 的关联事件、容器信息合理地组织在同一个页面中,可以帮助用户最快速的诊断问题和执行各种相关操作。
![Kuboard-工作负载详情](https://kuboard.cn/images/intro.assets/image-20210405180147614.png)
* 工作负载编辑
Kuboard 提供了图形化的工作负载编辑界面,用户无需陷入繁琐的 YAML 文件细节中,即可轻松完成对容器的编排任务。支持的 Kubernetes 对象类型包括Node、Namespace、Deployment、StatefulSet、DaemonSet、Secret、ConfigMap、Service、Ingress、StorageClass、PersistentVolumeClaim、LimitRange、ResourceQuota、ServiceAccount、Role、RoleBinding、ClusterRole、ClusterRoleBinding、CustomResourceDefinition、CustomResource 等各类常用 Kubernetes 对象,
![Kuboard-工作负载编辑](https://kuboard.cn/images/intro.assets/image-20210405180800712.png)
* 存储类型支持
在 Kuboard 中,可以方便地对接 NFS、CephFS 等常用存储类型,并且支持对 CephFS 类型的存储卷声明执行扩容和快照操作。
![Kuboard-存储类](https://kuboard.cn/images/intro.assets/image-20210405181928653.png)
* 丰富的互操作性
可以提供许多通常只在 `kubectl` 命令行界面中才提供的互操作手段,例如:
* Top Nodes / Top Pods
* 容器的日志、终端
* 容器的文件浏览器(支持从容器中下载文件、上传文件到容器)
* KuboardProxy在浏览器中就可以提供 `kubectl proxy` 的功能)
![Kuboard-文件浏览器](https://kuboard.cn/images/intro.assets/image-20210405182805543.png)
* 套件扩展
Kuboard 提供了必要的套件库,使得用户可以根据自己的需要扩展集群的管理能力。当前提供的套件有:
* 资源层监控套件,基于 Prometheus / Grafana 提供 K8S 集群的监控能力,可以监控集群、节点、工作负载、容器组等各个级别对象的 CPU、内存、网络、磁盘等资源的使用情况
* 日志聚合套件,基于 Grafana / Loki / Promtail 实现日志聚合;
* 存储卷浏览器,查看和操作存储卷中的内容;
![Kuboard-套件扩展](https://kuboard.cn/images/intro.assets/image-20210405183652378.png)
## 安装
### 安装 Kuboard。 访问 Kuboard 网站 https://kuboard.cn 可以加入 Kuboard 社群,并获得帮助。
``` sh
kubectl apply -f https://kuboard.cn/install-script/kuboard.yaml
kubectl apply -f https://addons.kuboard.cn/metrics-server/0.3.6/metrics-server.yaml
```
### 卸载 Kuboard
``` sh
kubectl delete -f https://kuboard.cn/install-script/kuboard.yaml
kubectl delete -f https://addons.kuboard.cn/metrics-server/0.3.6/metrics-server.yaml
```
## 获取 Token
您可以获得管理员用户、只读用户的Token
### 管理员用户
**拥有的权限**
* 此Token拥有 ClusterAdmin 的权限,可以执行所有操作
**执行命令**
```bash
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)
```
**输出**
取输出信息中 token 字段
```{13}
eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWc4aHhiIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI5NDhiYjVlNi04Y2RjLTExZTktYjY3ZS1mYTE2M2U1ZjdhMGYiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06YWRtaW4tdXNlciJ9.DZ6dMTr8GExo5IH_vCWdB_MDfQaNognjfZKl0E5VW8vUFMVvALwo0BS-6Qsqpfxrlz87oE9yGVCpBYV0D00811bLhHIg-IR_MiBneadcqdQ_TGm_a0Pz0RbIzqJlRPiyMSxk1eXhmayfPn01upPdVCQj6D3vAY77dpcGplu3p5wE6vsNWAvrQ2d_V1KhR03IB1jJZkYwrI8FHCq_5YuzkPfHsgZ9MBQgH-jqqNXs6r8aoUZIbLsYcMHkin2vzRsMy_tjMCI9yXGiOqI-E5efTb-_KbDVwV5cbdqEIegdtYZ2J3mlrFQlmPGYTwFI8Ba9LleSYbCi4o0k74568KcN_w
```
## 访问 Kuboard
您可以通过NodePort、port-forward 两种方式当中的任意一种访问 Kuboard
### 通过NodePort访问
Kuboard Service 使用了 NodePort 的方式暴露服务NodePort 为 32567您可以按如下方式访问 Kuboard。
`
http://任意一个Worker节点的IP地址:32567/
`
输入前一步骤中获得的 token可进入 **Kubernetes 集群概览**,界面如下所示:
![Kuboard-HomePage](https://kuboard.cn/images/preview.png)