Kubeapps可视化管理Helm Chart包

                                              作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.基于helm部署kubeapps

1.kubeapps介绍

Kubeapps提供了一个开源的Helm UI界面,方便以图形界面的形式管理Helm应用。
	- 部署应用:
		可从公共或私有仓库中浏览chart并将其部署到集群中。
		
	- 管理应用:
		升级、管理和删除部署在kubernetes集群中的应用程序。
		
	- 搜索功能:
		Kubeapps提供chart搜索页面。

官网地址:
	https://github.com/vmware-tanzu/kubeapps/

2.添加kubeapps的repo

	1.添加第三方仓库
[root@master231 03-kubeapps]# helm repo add bitnami https://charts.bitnami.com/bitnami
"bitnami" has been added to your repositories
[root@master231 03-kubeapps]# 

	2.查看仓库信息
[root@master231 03-kubeapps]# helm repo list
NAME            	URL                                                   
azure           	http://mirror.azure.cn/kubernetes/charts/             
aliyun				https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
bitnami         	https://charts.bitnami.com/bitnami                    
[root@master231 03-kubeapps]# 

	3.更新repo源
[root@master231 03-kubeapps]# helm repo update 
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "aliyun" chart repository
...Successfully got an update from the "azure" chart repository
...Successfully got an update from the "bitnami" chart repository
Update Complete. ⎈Happy Helming!⎈
[root@master231 03-kubeapps]#  

3.搜索kubeapps

 	1.搜索kubeapps的Chart历史列表信息
[root@master231 03-kubeapps]# helm search repo kubeapps  -l
NAME            	CHART VERSION	APP VERSION	DESCRIPTION                                       
bitnami/kubeapps	17.0.3       	2.12.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	17.0.2       	2.12.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	17.0.1       	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	17.0.0       	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	16.0.1       	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	16.0.0       	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.10      	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.9       	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.8       	2.11.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.7       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.6       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.5       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.4       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.3       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.2       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.1       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.3.0       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.2.2       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.2.1       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.2.0       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.1.2       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.1.1       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.0.5       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.0.4       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.0.3       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.0.2       	2.10.0     	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.0.1       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	15.0.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.7.2       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.7.1       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.7.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.6.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.5.2       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.5.1       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.4.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.3.3       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.3.2       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.3.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.2.1       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.2.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.1.3       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.1.2       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.1.1       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.1.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.0.2       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.0.1       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	14.0.0       	2.9.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	13.1.1       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	13.1.0       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	13.0.1       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	13.0.0       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.12      	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.11      	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.10      	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.9       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.8       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.7       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.6       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.5       	2.8.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.4       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.3       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.2       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.4.1       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.3.3       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.3.2       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.3.1       	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.10      	2.7.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.9       	2.6.4      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.8       	2.6.4      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.7       	2.6.4      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.6       	2.6.3      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.5       	2.6.3      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.4       	2.6.3      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.3       	2.6.3      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.2       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.1       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.2.0       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.6       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.5       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.4       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.3       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.2       	2.6.2      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.1       	2.6.1      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.1.0       	2.6.1      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	12.0.0       	2.6.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	11.0.1       	2.6.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.3.5       	2.5.1      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.3.4       	2.5.1      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.3.3       	2.5.1      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.3.1       	2.5.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.3.0       	2.5.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.2.2       	2.5.0      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.2.1       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.2.0       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.1.1       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.6       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.5       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.4       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.3       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.2       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.1       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	10.0.0       	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	9.0.3        	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	9.0.2        	2.4.6      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	8.1.11       	2.4.5      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	8.1.10       	2.4.5      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	8.1.9        	2.4.5      	Kubeapps is a web-based UI for launching and ma...
bitnami/kubeapps	8.1.8        	2.4.5      	Kubeapps is a web-based UI for launching and ma...
[root@master231 03-kubeapps]# 

	2.以宽格式显示
[root@master231 03-kubeapps]# helm search repo kubeapps  -l --max-col-width 200
NAME            	CHART VERSION	APP VERSION	DESCRIPTION                                                                                                                                                                           
bitnami/kubeapps	17.0.3       	2.12.0     	Kubeapps is a web-based UI for launching and managing applications on Kubernetes. It allows users to deploy trusted applications and operators to control users access to the cluster.
bitnami/kubeapps	17.0.2       	2.12.0     	Kubeapps is a web-based UI for launching and managing applications on Kubernetes. It allows users to deploy trusted applications and operators to control users access to the cluster.
...

4.下载指定的kubeapps版本

温馨提示:
	- 1.对于K8S 1.23.17如果采用最新"Chart 17.0.3"版本进行部署,可能会导致PostgreSQL的Pod在不断重启。
	- 2.推荐大家部署12.2.10版本进行部署,对于15.3.10版本测试过发现也会在重启哟。
	

[root@master231 03-kubeapps]# mkdir kubeapps-12.2.10
[root@master231 03-kubeapps]#
[root@master231 03-kubeapps]# cd kubeapps-12.2.10
[root@master231 kubeapps-12.2.10]# ll
total 8
drwxr-xr-x 2 root root 4096 Nov 29 11:57 ./
drwxr-xr-x 5 root root 4096 Nov 29 11:57 ../
[root@master231 kubeapps-12.2.10]# 
[root@master231 kubeapps-12.2.10]# helm pull bitnami/kubeapps --version 12.2.10
[root@master231 kubeapps-12.2.10]# 
[root@master231 kubeapps-12.2.10]# ll
total 216
drwxr-xr-x 2 root root   4096 Nov 29 11:58 ./
drwxr-xr-x 5 root root   4096 Nov 29 11:57 ../
-rw-r--r-- 1 root root 212910 Nov 29 11:58 kubeapps-12.2.10.tgz
[root@master231 kubeapps-12.2.10]# 

5.基于helm部署kubeapps

	1.外网无法访问kubeapp服务,将svc的类型改为NodePort
查看"kubeapps/values.yaml"目录,将svc的ClusterIP改为"NodePort"类型。

与此同时,修改"nodePort"的端口为"4090"。


	2.安装kubeapps
[root@master231 kubeapps-12.2.10]# helm  install oldboyedu-kubeapps kubeapps
NAME: oldboyedu-kubeapps
LAST DEPLOYED: Fri Nov 29 12:00:36 2024
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
CHART NAME: kubeapps
CHART VERSION: 12.2.10
APP VERSION: 2.7.0** Please be patient while the chart is being deployed **

Tip:

  Watch the deployment status using the command: kubectl get pods -w --namespace default

Kubeapps can be accessed via port 80 on the following DNS name from within your cluster:

   oldboyedu-kubeapps.default.svc.cluster.local

To access Kubeapps from outside your K8s cluster, follow the steps below:

1. Get the Kubeapps URL by running these commands:

   export NODE_IP=$(kubectl get nodes --namespace default -o jsonpath="{.items[0].status.addresses[0].address}")
   export NODE_PORT=$(kubectl get --namespace default -o jsonpath="{.spec.ports[0].nodePort}" services oldboyedu-kubeapps)
   echo "Kubeapps URL: http://$NODE_IP:$NODE_PORT"

2. Open a browser and access Kubeapps using the obtained URL.
[root@master231 kubeapps-12.2.10]# 


	3.查看Pod信息,如下所示,STATUS个别Pod存在问题的两个Pod可以暂时忽略。
[root@master231 kubeapps-12.2.10]# kubectl get pods -o wide
NAME                                                              READY   STATUS                       RESTARTS   AGE     IP             NODE        NOMINATED NODE   READINESS GATES
apprepo-default-sync-bitnami-28880890-ggm2p                       0/1     Completed                    0          68s     10.100.1.4     worker232   <none>           <none>
apprepo-default-sync-bitnami-fx7nm-hxdq2                          0/1     Completed                    0          8m57s   10.100.2.9     worker233   <none>           <none>
apprepo-kubernet-497878190-sync-aliyun-28880890-c58sb             0/1     Completed                    0          68s     10.100.2.13    worker233   <none>           <none>
apprepo-kubernet-497878190-sync-aliyun-njqdv-c6qnr                0/1     Completed                    0          8m57s   10.100.2.10    worker233   <none>           <none>
apprepo-oldboyedu-helm-sync-bitnami-28880890-ktzg6                0/1     CreateContainerConfigError   0          68s     10.100.2.12    worker233   <none>           <none>
apprepo-oldboyedu-helm-sync-bitnami-7lnwz-9ms6z                   0/1     CreateContainerConfigError   0          8m57s   10.100.2.11    worker233   <none>           <none>
oldboyedu-kubeapps-5c48854857-4pvhg                               1/1     Running                      0          10m     10.100.1.3     worker232   <none>           <none>
oldboyedu-kubeapps-5c48854857-fhv6t                               1/1     Running                      0          10m     10.100.2.8     worker233   <none>           <none>
oldboyedu-kubeapps-internal-apprepository-controller-797f8fgf8g   1/1     Running                      0          10m     10.100.2.7     worker233   <none>           <none>
oldboyedu-kubeapps-internal-dashboard-7c589dfbc9-ktkv4            1/1     Running                      0          10m     10.100.2.5     worker233   <none>           <none>
oldboyedu-kubeapps-internal-dashboard-7c589dfbc9-p27q5            1/1     Running                      0          10m     10.100.1.2     worker232   <none>           <none>
oldboyedu-kubeapps-internal-kubeappsapis-645b5f574-7z8gd          1/1     Running                      0          10m     10.100.1.254   worker232   <none>           <none>
oldboyedu-kubeapps-internal-kubeappsapis-645b5f574-jnp2l          1/1     Running                      0          10m     10.100.2.6     worker233   <none>           <none>
oldboyedu-kubeapps-postgresql-0                                   1/1     Running                      0          10m     10.100.1.253   worker232   <none>           <none>
[root@master231 kubeapps-12.2.10]# 

6.访问kubeapps的WebUI

http://10.0.0.233:4090/#/login


温馨提示:
	我们可以基于token登录kubeapps,如何基于token登录,可以参考我们之前登录dashboard的解决方案。

二.通过kubeapps部署应用案例

1 通过kubeapps查看已经部署的Chart

如上图所示,我们可以看到当前K8S系统已经部署好的Chart。

2.通过kubeapps搜索Chart信息

如上图所示,我们可以添加第三方参考,而后在WebUI进行搜索我们关心的Chart。
posted @ 2024-11-29 23:53  尹正杰  阅读(39)  评论(0编辑  收藏  举报