KubeGems容器云平台简介
KubeGems 是一款开源的企业级多租户容器云平台。围绕云原生社区,KubeGems 提供了多 Kubernetes 集群接入能力,并具备丰富的组件管理和资源成本分析功能,能够帮助企业快速的构建和打造一个本地化、功能强大且低成本的云管理平台。
项目地址:https://github.com/kubegems/kubegems
KubeGems容器云平台部署
helm仓库地址:
https://artifacthub.io/packages/helm/kubegems/kubegems
https://artifacthub.io/packages/helm/kubegems/kubegems-installer
准备kubernetes集群节点,版本信息如下:
root@node01:~# kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
node01 Ready control-plane 3d15h v1.25.3 192.168.72.61 <none> Ubuntu 22.04 LTS 5.15.0-27-generic cri-o://1.25.1
node02 Ready <none> 3d15h v1.25.3 192.168.72.62 <none> Ubuntu 22.04 LTS 5.15.0-53-generic cri-o://1.25.1
node03 Ready <none> 3d15h v1.25.3 192.168.72.63 <none> Ubuntu 22.04 LTS 5.15.0-27-generic cri-o://1.25.1
集群已准备默认storageclass,标记为(default)
root@node01:~# kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
cstor-csi-disk (default) cstor.csi.openebs.io Delete Immediate true 3d14h
添加kubegems helm仓库
helm repo add kubegems https://charts.kubegems.io/kubegems
查看可安装的chart版本
helm search repo kubegems/kubegems-installer --versions
helm search repo kubegems/kubegems --versions
首先安装kubegems installer
helm install kubegems-installer -n kubegems-installer --create-namespace \
--version=1.23.8 \
kubegems/kubegems-installer
查看创建的pods
root@node1:~# kubectl -n kubegems-installer get pods
NAME READY STATUS RESTARTS AGE
kubegems-installer-6bcc9c4d96-pglh4 1/1 Running 1 (7m19s ago) 28m
安装kubegems,使用NodePort方式暴露service
helm install kubegems -n kubegems --create-namespace \
--version=1.23.8 \
--set ingress.enable=false \
--set dashboard.service.type=NodePort \
kubegems/kubegems
查看创建的pods
root@node1:~# kubectl -n kubegems get pods
NAME READY STATUS RESTARTS AGE
kubegems-api-5df44cd758-zvx58 1/1 Running 3 (5m21s ago) 15m
kubegems-argo-cd-app-controller-5c4d64cdf6-cfmxc 1/1 Running 1 (6m43s ago) 15m
kubegems-argo-cd-repo-server-7dccf67b7f-5897x 1/1 Running 1 (6m43s ago) 15m
kubegems-argo-cd-server-76b597d76-txpzf 1/1 Running 1 (6m43s ago) 15m
kubegems-chartmuseum-546489d9fc-r9xbs 1/1 Running 1 (6m43s ago) 15m
kubegems-charts-init-rsnvd 0/1 Completed 0 15m
kubegems-dashboard-85c8fcd698-h5m6h 1/1 Running 2 (6m13s ago) 15m
kubegems-gitea-0 1/1 Running 1 (6m43s ago) 15m
kubegems-msgbus-bd55944b7-jgvlg 1/1 Running 3 (5m17s ago) 15m
kubegems-mysql-0 1/1 Running 1 (6m43s ago) 15m
kubegems-redis-master-0 1/1 Running 1 (6m43s ago) 15m
kubegems-worker-76d4f54769-kjghx 1/1 Running 6 (5m19s ago) 15m
查看创建的service
root@node1:~# kubectl -n kubegems get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubegems-api ClusterIP 10.96.1.162 <none> 80/TCP,9100/TCP 15m
kubegems-argo-cd-app-controller ClusterIP 10.96.2.85 <none> 8082/TCP 15m
kubegems-argo-cd-repo-server ClusterIP 10.96.2.59 <none> 8081/TCP 15m
kubegems-argo-cd-server ClusterIP 10.96.3.110 <none> 80/TCP,443/TCP 15m
kubegems-chartmuseum ClusterIP 10.96.0.125 <none> 8080/TCP 15m
kubegems-dashboard NodePort 10.96.3.82 <none> 80:30364/TCP,9100:31968/TCP 15m
kubegems-gitea-http ClusterIP None <none> 3000/TCP 15m
kubegems-gitea-ssh ClusterIP None <none> 22/TCP 15m
kubegems-msgbus ClusterIP 10.96.1.110 <none> 80/TCP,9100/TCP 15m
kubegems-mysql ClusterIP 10.96.3.209 <none> 3306/TCP 15m
kubegems-mysql-headless ClusterIP None <none> 3306/TCP 15m
kubegems-redis-headless ClusterIP None <none> 6379/TCP 15m
kubegems-redis-master ClusterIP 10.96.2.9 <none> 6379/TCP 15m
kubegems-worker ClusterIP 10.96.2.89 <none> 80/TCP,9100/TCP 15m
查看创建的pvc
root@node1:~# kubectl -n kubegems get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
data-kubegems-gitea-0 Bound pvc-1946d826-2978-4bef-9448-4ab107bb0bf1 10Gi RWO openebs-hostpath 15m
data-kubegems-mysql-0 Bound pvc-21bb688f-cba2-4db0-b32b-2dc4d37ded1c 8Gi RWO openebs-hostpath 15m
kubegems-chartmuseum Bound pvc-740b4bae-4f7d-4c1b-8577-e774fd0cf7a4 10Gi RWO openebs-hostpath 15m
kubegems-data Bound pvc-96c20646-eff4-45b9-b37b-4116e08f7b09 6Gi RWO openebs-hostpath 15m
redis-data-kubegems-redis-master-0 Bound pvc-26c6f5e1-941f-4b3c-9590-e3e3fe7fc73b 8Gi RWO openebs-hostpath 15m
如果需要卸载kubegems,执行以下命令
helm -n kubegems uninstall kubegems
helm -n kubegems-installer uninstall kubegems-installer
kubectl -n kubegems delete pvc --all
访问kubegems 平台
查看nodeport
kubectl -n kubegems get svc kubegems-dashboard -ojsonpath='{.spec.ports[0].nodePort}'
浏览器登录kubegems管理界面,,默认用户名为admin
,密码为demo!@#admin
http://192.168.72.61:32720
点击右下方设置–>平台管理,添加集群
在master节点获取kubeconfgi文件并粘贴到文本框。
root@node01:~# cat /root/.kube/config
配置集群信息
集群添加成功
点击插件管理,启用监控插件
选择一个集群,查看节点信息
查看集群信息
查看容器组
查看应用商店