安装Kuboard管理Kubernetesk8s

7次阅读

共计 1582 个字符,预计需要花费 4 分钟才能阅读完成。

一. 背景知识

通过可视化管理后台, 管理 Kubernetes 会更方便. 除了官方的 Dashboard 之外, 还有许多其他第三方开源的管理后. 其中 Kuboard 是一款比较优秀的国内开源管理后台. 相比于 Kubernetes Dashboard, Kuboard 更倾向于微服务配置.

Kuboard 具有以下特性:

  • GitLab/GitHub 单点登录集成
  • RBAC 权限管理
  • 工作负载编辑器
  • 名称空间导出 / 导入

二. 前提条件

安装 Kuboard 时, 我们已经有一个 Kubernetes 集群. 以下任何形式安装的集群都可以:

  • kubeadm 安装(或者基于 kubeadm 的衍生工具, 如 Sealos 等);
  • 二进制安装;
  • 阿里云、腾讯云等公有云托管集群;
  • 其他。

三. 安装

通过以下命令:

$ 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 运行状态:

$ kubectl get pods -l k8s.kuboard.cn/name=kuboard -n kube-system
NAME                       READY   STATUS    RESTARTS   AGE
kuboard-7bb89b4cc4-p5l2p   1/1     Running   0          179m

如果为 Running, 表示已成功启动. 否则使用 kubectl describe 查看失败原因.

墙内很有可能存在无法 Pulling image 的问题, 参考: 为什么我不能获取到镜像,ImagePullBackoff.

也可以使用 daocloud 工具先手动 pull 下来:

$ dao pull eipwork/kuboard:latest

四. 访问

4.1 获取 token

可以获得管理员用户、只读用户的 Token。

  • 默认情况下,可以使用 ServiceAccount 的 Token 登录 Kuboard
  • 还可以 使用 GitLab/GitHub 账号登录 Kuboard/Kubectl
  • 也可以 为用户授权

其中管理员 Token 拥有 ClusterAdmin 的权限,可以执行所有操作.

# 在第一个 Master 节点上执行此命令
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 字段:

eyJhbGciOiJSUzI1NiIsImtpZC......YTwFI8Ba9LleSYbCi4o0k74568KcN_w

4.2 登录 & 访问

可以通过 NodePort、Port-forward 两种方式当中的任意一种访问 Kuboard.

4.2.1 NodePort 方式

Kuboard Service 使用了 NodePort 的方式暴露服务,NodePort 为 32567;所以可以按如下方式访问 Kuboard: http://<server_ip>:32567.

登录界面:

登录成功, 主界面:

4.2.2 Port-forward 方式

这种方式需要先完成 从客户端电脑远程管理 Kubernetes 的配置. 然后在客户端电脑中执行如下命令:

$ kubectl port-forward service/kuboard 8080:80 -n kube-system

转发启动后, 在浏览器打开链接(使用 kubectl 所在机器的 IP 地址)http://localhost:8080.

输入前一步骤中获得的 token,可进入 Kuboard 主界面.

参考

  • https://kuboard.cn/install/install-dashboard.html# 在线体验
正文完
 0