kubeapps -kubernetes 应用仪表盘

Posted i4leader

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kubeapps -kubernetes 应用仪表盘相关的知识,希望对你有一定的参考价值。

1.介绍
什么是kubeapps?
Kubeapps是Bitnami公司的一个项目,其目的是为Kubernetes的使用者们提供已经打包好的应用仪表盘,它拥有网页界面可以更方便的部署和管理k8s 原生应用。

kubeapps功能说明:
应用仪表盘-包含绝大多数的云原生应用
技术图片
管理应用-部署,删除,升级以及修改配置
技术图片
服务目录-(Service Catalog)是一种扩展 API,它能让 Kubernetes 集群中运行的应用易于使用外部托管的的软件服务,例如云供应商提供的数据仓库服务。
技术图片

2.安装kubeapps
下面我演示下如何安装kubeapps并使用kubeapps来部署kubernetes 应用。
2.1 安装Helm
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
技术图片
技术图片

2.2 helm3添加Bitnami Repository
使用Helm chart来安装最新版本的Kubeapps:
helm repo add bitnami https://charts.bitnami.com/bitnami
2.3 安装Kubeapps
如果你使用 Helm 3, 你需要设置另外的参数,详细命令如下:
kubectl create namespace kubeapps
helm install --name kubeapps --namespace kubeapps bitnami/kubeapps(该命令仅支持helm2)
helm install kubeapps --namespace kubeapps bitnami/kubeapps --set useHelm3=true
技术图片

2.4 创建 Kubernetes API token
访问kubeapps的web界面需要Kubernetes API token 来验证Kubernetes API server.
kubectl create serviceaccount kubeapps-operator
kubectl create clusterrolebinding kubeapps-operator --clusterrole=cluster-admin --serviceaccount=default:kubeapps-operator
注意:生产环境不建议创建cluster-admin 用户. 请参考Access Control 文档来给生产环境配置合适的用户.
2.5 获取Token
Linux/macOS 系统可以使用如下命令来获取Token:
kubectl get secret $(kubectl get serviceaccount kubeapps-operator -o jsonpath=‘{range .secrets[*]}{.name}{" "}{end}‘ | grep kubeapps-operator-token) -o jsonpath=‘{.data.token}‘ -o go-template=‘{{.data.token | base64decode}}‘ && echo

2.6 修改访问模式并访问kubeapps
编辑kubeapps服务svc 将连接类型改为NodePort
kubectl edit svc kubeapps -n kubeapps
技术图片
看下服务所用端口;
技术图片

然后打开浏览器输入node的ip加上32024端口则可以访问kubeapps;输入获取的Token就可以直接登录进去。
技术图片
登录kubeapps之后在catalog之中可以发现有好多已经打包的原生应用可以一建部署。

  1. 演示安装应用
    访问kubeapps 主页并导航到应用目录。
    技术图片

譬如选择grafana,有bitnami以及官方stable的包;
技术图片
这里我选择bitnami的应用包,进去之后点击Deploy
技术图片
确认配置之后直接点击Submit
技术图片
应用就部署完了。

使用kubectl edit svc crazy-jail-grafana -n kubeapps 来修改外网访问类型为NodePort
技术图片

修改完成后,使用命令kubectl get svc -n kubeapps 查看grafana 服务的外部访问端口。
技术图片
浏览器访问node的ip加30647端口。
技术图片
Grafana就部署好了。
我后面又测试了prometheus,wordpress等应用。发现除了pv需要手动创建,其他配置都是自动化部署。相对于传统部署方式,省下了很多配置应用的时间;绝对是原生应用提高生产效率的一把好手。

  1. 官方参考资料:
    官方网站
    https://kubeapps.com/

Github
https://github.com/kubeapps/kubeapps

本文由博客群发一文多发等运营工具平台 OpenWrite 发布

以上是关于kubeapps -kubernetes 应用仪表盘的主要内容,如果未能解决你的问题,请参考以下文章

K8sHelm配置图形,prometheu(采集的自定义指标转化为集群内的量度指标,与hpa结合,实现自动伸缩)

如何将 Web 仪表板与 Android 应用程序连接并发送数据

Qt编写地图综合应用4-仪表盘

.NET 仪表板应用程序的可能性

AI图形算法的应用之一:仪表识别

开发显示 Qlikview 仪表板的跨平台应用程序的策略