Kubernetes 集群管理面板的安装及使用
1 、前言
若海的腾讯云 Lighthouse 组建跨地域 Kubernetes 集群,让我成功体验到了 Kuberetes 集群诸多优点,但是非技术出生的我,长时间使用黑洞洞的命令行终究不是我能接受的,在海哥的帮助下,我成功安装了 Kubernetes 集群管理面板。这里给大家分享,建议大家另外用一台机器,来作为管理机。这样在面板和整个集群就互不干扰了。
2 、安装
2.1 准备工作
在海哥集群安装教程的基础上,安装面板非常简单,下面是具体方法。
如果购买的腾讯云轻量应用服务器不是 docker 镜像的可以重装成 docker 基础镜像。

如果使用其他服务器没有 docker 可以看这篇文章:原来服务器这么有用-Docker 安装 - 青阳のblog-一个计算机爱好者的个人博客 (hipyt.cn)
购买并配置 Lighthouse 服务器 Lighthouse 是腾讯云推出的一款轻量应用服务器产品,它提供了高性价比、高可用性、高安全性和高灵活性的云端计算服务。具体信息参阅官方文档: https://cloud.tencent.com/document/product/1207/44361 。
为了部署 Kubernetes 集群,我们需要至少 2 台轻量应用服务器,并配置好相关的环境和依赖。购买步骤参见官方文档: https://cloud.tencent.com/document/product/1207/56823 ,操作系统选 Debian 或 Ubuntu 最新版本。
2.2 登录服务器
进入腾讯云轻量应用服务器的控制台,点击右上方的 登录 ,使用腾讯云OrcaTerm 登录到服务器(注意图片中标记的两个位置都可以使用)。

点击登录之后将会进入到服务器内部。
注意使用sudo -i切换到管理员模式。

2.3 面板容器安装

docker run -d \ --restart=unless-stopped \ --name=kuboard \ -p 80:80/tcp \ -p 10081:10081/tcp \ -e KUBOARD_ENDPOINT="http://你的 docker 公网 IP:80" \ -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \ -v /root/kuboard-data:/data \ eipwork/kuboard:v3 注意
- KUBOARD_ENDPOINT 参数的作用是,让部署到 Kubernetes 中的
kuboard-agent知道如何访问 Kuboard Server ; - KUBOARD_ENDPOINT 中也可以使用外网 IP ;
- Kuboard 不需要和 K8S 在同一个网段,Kuboard Agent 甚至可以通过代理访问 Kuboard Server ;
- 建议在 KUBOARD_ENDPOINT 中使用域名;
- 如果使用域名,必须能够通过 DNS 正确解析到该域名,如果直接在宿主机配置
/etc/hosts文件,将不能正常运行;
参数解释
- 建议将此命令保存为一个 shell 脚本,例如
start-kuboard.sh,后续升级 Kuboard 或恢复 Kuboard 时,需要通过此命令了解到最初安装 Kuboard 时所使用的参数; - 第 4 行,将 Kuboard Web 端口 80 映射到宿主机的
80端口(您可以根据自己的情况选择宿主机的其他端口); - 第 5 行,将 Kuboard Agent Server 的端口
10081/tcp映射到宿主机的10081端口(您可以根据自己的情况选择宿主机的其他端口); - 第 6 行,指定 KUBOARD_ENDPOINT 为
http://内网 IP,如果后续修改此参数,需要将已导入的 Kubernetes 集群从 Kuboard 中删除,再重新导入; - 第 7 行,指定 KUBOARD_AGENT_SERVER 的端口为
10081,此参数与第 5 行中的宿主机端口应保持一致,修改此参数不会改变容器内监听的端口10081,例如,如果第 5 行为-p 30081:10081/tcp则第 7 行应该修改为-e KUBOARD_AGENT_SERVER_TCP_PORT="30081"; - 第 8 行,将持久化数据
/data目录映射到宿主机的/root/kuboard-data路径,请根据您自己的情况调整宿主机路径;
3 、面板使用
3.1 面板登录
在浏览器输入 http://your-host-ip:80 即可访问 Kuboard v3.x 的界面,登录方式:
- 用户名:
admin - 密 码:
Kuboard123 - 登录之后请尽快修改密码。
浏览器兼容性
- 请使用 Chrome / FireFox / Safari 等浏览器
- 不兼容 IE 以及以 IE 为内核的浏览器 3.2 添加集群
,直接复制获取 Token 的脚本到主节点,运行之后复制到 Token 内。 注意ApiServer 地址 https://主节点 ip:6443 
添加成功之后我们就可以在集群概要看到我们的集群情况了。

3.2 应用创建

可以在名称空间内通过 YAML 创建,我这里给一个搭建 emby 的范例大家参考(注意一点 Deployment.yaml 可以理解成容器创建,Service.yaml 理解成端口映射,这样大家没有接触过的可能容易懂一些)。
Deployment.yaml:
apiVersion: apps/v1 kind: Deployment metadata: name: emby-deployment spec: replicas: 1 selector: matchLabels: app: emby template: metadata: labels: app: emby spec: containers: - name: emby image: emby/embyserver:latest ports: - containerPort: 8096 volumeMounts: - name: emby-config mountPath: /config - name: emby-data mountPath: /data volumes: - name: emby-config emptyDir: {} - name: emby-data emptyDir: {} Service.yaml:
apiVersion: v1 kind: Service metadata: name: emby-service spec: selector: app: emby ports: - protocol: TCP port: 8096 targetPort: 8096 type: LoadBalancer 这个应用中,我运用了 Emby 的官方镜像 emby/embyserver。大家可以根据自己的需求更改镜像标签。
搭建成功之后大家可以在工作负载中看到。

总结
这篇文章我在若海的腾讯云 Lighthouse 组建跨地域 Kubernetes 集群基础上给大家带来了 Kubernetes 集群面板的搭建及简单使用教程,希望可以帮助到大家,更多精彩内容请关注我的博客。
