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

总览:

集群信息

相关推荐
拾心212 小时前
【云运维】K8s管理(二)
运维·容器·kubernetes
落日漫游3 小时前
ansible中角色概念
运维·云原生·自动化
小牛马爱写博客3 小时前
Kubernetes Service 核心概念与实操指南(分别使用yaml文件和命令行分别创建service版)
云原生·容器·kubernetes
霍格沃兹测试开发学社-小明3 小时前
测试开发技术路线全新升级:在云原生与AI时代构建核心竞争力
大数据·人工智能·云原生
来旺4 小时前
互联网大厂Java面试实战:核心技术栈与业务场景深度解析
java·spring boot·docker·kubernetes·mybatis·hibernate·microservices
DeepFlow 零侵扰全栈可观测4 小时前
DeepFlow 全栈可观测性 护航某银行核心系统全生命周期
数据库·人工智能·分布式·云原生·金融
哦你看看5 小时前
K8S-单Master集群部署
云原生·容器·kubernetes
BD_Marathon5 小时前
【Zookeeper】CAP理论——BASE定理及ZK追求的一致性
分布式·zookeeper·云原生
h***34635 小时前
docker desktop安装redis
redis·docker·容器
i***48616 小时前
对Docker部署的MySQL中的数据进行备份恢复
mysql·docker·容器