rainbond云原生应用管理平台部署

rainbond简介

rainbond 是 一个 开源的Kubernetes 云原生应用管理平台。

Rainbond 核心100%开源,Serverless体验,不需要懂K8s也能轻松管理容器化应用,平滑无缝过渡到K8s,是国内首个支持国产化信创、适合私有部署的一体化应用管理平台。

官方网站:https://www.rainbond.com/

项目地址:https://github.com/goodrain/rainbond

helm安装rainbond

Helm chart地址:https://github.com/goodrain/rainbond-chart

前置要求:

准备3个kubernetes节点

bash 复制代码
root@node1:~# kubectl get nodes -o wide
NAME    STATUS   ROLES           AGE   VERSION   INTERNAL-IP     EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION      CONTAINER-RUNTIME
node1   Ready    control-plane   33d   v1.27.3   192.168.72.30   <none>        Ubuntu 22.04.2 LTS   5.15.0-76-generic   containerd://1.6.21
node2   Ready    control-plane   33d   v1.27.3   192.168.72.31   <none>        Ubuntu 22.04.2 LTS   5.15.0-76-generic   containerd://1.6.21
node3   Ready    control-plane   33d   v1.27.3   192.168.72.32   <none>        Ubuntu 22.04.2 LTS   5.15.0-76-generic   containerd://1.6.21

准备可用的storageclass,支持RWO及RWX,本示例为openebs-hostpath 以及openebs-nfs

bash 复制代码
root@node1:~# kubectl get sc
NAME                         PROVISIONER                    RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
openebs-hostpath (default)   openebs.io/local               Delete          WaitForFirstConsumer   false                  33d
openebs-kernel-nfs           openebs.io/nfsrwx              Delete          Immediate              false                  17h

添加Rainbond Helm 仓库

bash 复制代码
helm repo add rainbond https://openchart.goodrain.com/goodrain/rainbond

安装rainbond

bash 复制代码
helm install rainbond rainbond/rainbond-cluster \
-n rbd-system --create-namespace \
--set operator.env[0].name=CONTAINER_RUNTIME \
--set operator.env[0].value=containerd \
--set Cluster.RWX.enable=true \
--set Cluster.RWX.config.storageClassName=openebs-kernel-nfs \
--set Cluster.RWO.enable=true \
--set Cluster.RWO.storageClassName=openebs-hostpath

参数说明:

  • CONTAINER_RUNTIME ,指定容器运行时为containerd,与kubernetes集群一致
  • storageClassName,指定rainbond使用的存储类

等待rainbond部署完成,查看运行的pods

bash 复制代码
root@node1:~# kubectl -n rbd-system get pods
NAME                                        READY   STATUS    RESTARTS   AGE
dashboard-metrics-scraper-6948f9475-lmgd4   1/1     Running   0          12m
kubernetes-dashboard-cd594bb64-mn29s        1/1     Running   0          12m
metrics-server-56df97f57-snb7t              1/1     Running   0          12m
rainbond-operator-85bb988bb8-wxwmm          1/1     Running   0          12m
rbd-api-7d7b876b74-xg4vt                    1/1     Running   0          12m
rbd-app-ui-765669864b-jwrf4                 1/1     Running   0          11m
rbd-chaos-nbn4d                             1/1     Running   0          12m
rbd-chaos-qgxfs                             1/1     Running   0          12m
rbd-db-0                                    2/2     Running   0          12m
rbd-etcd-0                                  1/1     Running   0          12m
rbd-eventlog-0                              1/1     Running   0          12m
rbd-gateway-8tqkr                           1/1     Running   0          12m
rbd-gateway-bpzkp                           1/1     Running   0          12m
rbd-hub-868ccb6645-nfbqs                    1/1     Running   0          12m
rbd-monitor-0                               1/1     Running   0          12m
rbd-mq-5c766bf9cf-2rqp6                     1/1     Running   0          12m
rbd-node-d7cjv                              1/1     Running   0          12m
rbd-node-j57vw                              1/1     Running   0          12m
rbd-node-kjfcf                              1/1     Running   0          12m
rbd-resource-proxy-947f9fc96-jhkjg          1/1     Running   0          12m
rbd-webcli-6b785c49b5-74fl2                 1/1     Running   0          12m
rbd-worker-7d7786c46f-mxp9t                 1/1     Running   0          12m

查看service

bash 复制代码
root@node1:~# kubectl -n rbd-system get svc
NAME                        TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)                      AGE
dashboard-metrics-scraper   ClusterIP   10.96.0.201   <none>        8000/TCP                     27m
kubernetes-dashboard        ClusterIP   10.96.0.180   <none>        443/TCP                      27m
metrics-server              ClusterIP   10.96.1.195   <none>        443/TCP                      27m
rbd-api-api                 ClusterIP   10.96.1.178   <none>        8443/TCP                     26m
rbd-api-api-inner           ClusterIP   10.96.2.253   <none>        8888/TCP                     26m
rbd-api-healthz             ClusterIP   10.96.2.237   <none>        8889/TCP                     26m
rbd-api-websocket           ClusterIP   10.96.1.102   <none>        6060/TCP                     26m
rbd-app-ui                  ClusterIP   10.96.2.126   <none>        7070/TCP                     25m
rbd-chaos                   ClusterIP   10.96.3.227   <none>        3228/TCP                     26m
rbd-db-exporter             ClusterIP   None          <none>        9104/TCP                     27m
rbd-db-rw                   ClusterIP   None          <none>        3306/TCP                     27m
rbd-etcd                    ClusterIP   None          <none>        2379/TCP,2380/TCP            28m
rbd-eventlog                ClusterIP   10.96.1.219   <none>        6363/TCP,6362/TCP,6166/TCP   26m
rbd-hub                     ClusterIP   10.96.1.97    <none>        5000/TCP                     28m
rbd-monitor                 ClusterIP   10.96.1.73    <none>        9999/TCP                     27m
rbd-resource-proxy          ClusterIP   10.96.0.152   <none>        80/TCP                       27m

查看pvc卷

bash 复制代码
root@node1:~# kubectl -n rbd-system get pvc
NAME                  STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS         AGE
data                  Bound    pvc-be13276d-4948-466e-9df6-6f56c3062c52   20Gi       RWO            openebs-hostpath     27m
data-rbd-monitor-0    Bound    pvc-1a35e6b9-45a6-4c21-9e4a-ff6e5a97731e   20Gi       RWO            openebs-hostpath     27m
rbd-api               Bound    pvc-4436a9ae-f85e-4b37-ac73-1123514dd3d1   1Gi        RWX            openebs-kernel-nfs   26m
rbd-app-ui            Bound    pvc-6d1591d0-c3dc-42a0-91dd-b34c155a419e   10Gi       RWX            openebs-kernel-nfs   25m
rbd-chaos-cache       Bound    pvc-cd7d1dcc-fea9-4b7b-bf6b-afcc53905788   10Gi       RWX            openebs-kernel-nfs   26m
rbd-cpt-grdata        Bound    pvc-f59fa5d4-32bb-4b80-98b1-0704d2bf255f   20Gi       RWX            openebs-kernel-nfs   28m
rbd-db-rbd-db-0       Bound    rbd-db                                     1Gi        RWO            manual               27m
rbd-etcd-rbd-etcd-0   Bound    rbd-etcd                                   1Gi        RWO            manual               28m
rbd-hub               Bound    pvc-5571e2cb-ad56-4f40-9235-7e408c73e1a7   10Gi       RWX            openebs-kernel-nfs   28m

访问rainbond UI

查看网关所在节点IP

bash 复制代码
root@node1:~# kubectl -n rbd-system get pods -l name=rbd-gateway -o wide
NAME                READY   STATUS    RESTARTS   AGE   IP              NODE    NOMINATED NODE   READINESS GATES
rbd-gateway-8tqkr   1/1     Running   0          16h   192.168.72.32   node3   <none>           <none>
rbd-gateway-bpzkp   1/1     Running   0          16h   192.168.72.31   node2   <none>           <none>

浏览器访问rainbond UI,其中192.168.72.31为任意网关节点IP地址

bash 复制代码
http://192.168.72.17:7070

总览:

集群信息

相关推荐
不想画图18 分钟前
Kubernetes(八)——PV和PVC
云原生·容器·kubernetes
Serverless社区30 分钟前
探秘 AgentRun|基于 Serverless 的 AI Agent 沙箱工程化之路
运维·阿里云·云原生·serverless·函数计算
阿里云云原生1 小时前
Nacos 生产级安全实践:精细化鉴权、灰度平滑过渡与全量操作审计
安全·阿里云·云原生·nacos
Ashmcracker2 小时前
导入Azure AKS集群到Rancher
microsoft·kubernetes·rancher·azure
码农小卡拉3 小时前
Docker Compose部署EMQX集群详细教程(Ubuntu环境优化版)
mqtt·ubuntu·docker·容器·emqx
WilliamHu.4 小时前
Windows 环境下使用 Docker 成功部署 Dify(完整实战记录)
运维·docker·容器
叫致寒吧4 小时前
Kubernetes 安全机制
安全·容器·kubernetes
Cyber4K5 小时前
【Kubernetes专项】零故障升级之Pod健康探测
云原生·容器·kubernetes
能不能别报错5 小时前
企业级生产级K8s平台
云原生·容器·kubernetes
幼稚园的山代王5 小时前
从 0 到 1,读懂 Kubernetes 核心概念
云原生·容器·kubernetes