Based on self-built Kubernetes installation

Summarize

This article will guide you through the Helm command to quickly deploy Rainbond based on your existing Kubernetes cluster.

Precondition

Install Rainbond

1. Install the NFS client mounting tool

During the default installation, Rainbond starts an NFS-Provisioner; therefore, an NFS client mounting tool needs to be installed on the node, otherwise the installation will fail due to an inability to mount storage. If you customize the configuration, use external shared storage. Then this step can be ignored.

  • Centos
  • Ubuntu
  1. yum -y install nfs-utils
  1. apt-get install nfs-common

2. Add and update Helm repository

  1. helm repo add rainbond https://openchart.goodrain.com/goodrain/rainbond
  2. helm repo update
  3. kubectl create namespace rbd-system

3. Install Rainbond

Rainbond supports both Docker and Containerd container runtimes. When a cluster environment has both Docker and Containerd installed, Docker is used by default. You can specify the actual container runtimes through the environment variables.

  • Docker
  • Containerd
  1. helm install rainbond rainbond/rainbond-cluster -n rbd-system

If you have a Cluster of public IP, you need to access from outside, please specify Cluster. GatewayIngressIPs parameters, as shown below, will command the gatewayIngressIPs replace your public IP can:

  1. helm install --set Cluster.gatewayIngressIPs=47.96.3.163 rainbond rainbond/rainbond-cluster -n rbd-system
  1. helm install --set operator.env[0].name=CONTAINER_RUNTIME --set operator.env[0].value=containerd rainbond rainbond/rainbond-cluster -n rbd-system

If you have a Cluster of public IP, you need to access from outside, please specify Cluster. GatewayIngressIPs parameters, as shown below, will command the gatewayIngressIPs replace your public IP can:

  1. helm install --set Cluster.gatewayIngressIPs=47.96.3.163 --set operator.env[0].name=CONTAINER_RUNTIME --set operator.env[0].value=containerd rainbond rainbond/rainbond-cluster -n rbd-system

4. Installation progress query

After the installation command is executed, run the following command in the cluster to check the installation status.

  1. watch kubectl get po -n rbd-system

The installation is successful when the Pod with the name rdb-app-ui is in the Running state. If Pod rdd-app-UI-669BB7C74B-7BMLf is in the Running state, Rainbond is installed successfully.

Installation result

  1. NAME READY STATUS RESTARTS AGE
  2. nfs-provisioner-0 1/1 Running 0 14d
  3. rbd-etcd-0 1/1 Running 0 14d
  4. rbd-hub-64777d89d8-l56d8 1/1 Running 0 14d
  5. rbd-gateway-76djb 1/1 Running 0 14d
  6. dashboard-metrics-scraper-7db45b8bb4-tcgxd 1/1 Running 0 14d
  7. rbd-mq-6b847d874b-j5jg2 1/1 Running 0 14d
  8. rbd-webcli-76b54fd7f6-jrcdj 1/1 Running 0 14d
  9. kubernetes-dashboard-fbd4fb949-2qsn9 1/1 Running 0 14d
  10. rbd-resource-proxy-547874f4d7-dh8bv 1/1 Running 0 14d
  11. rbd-monitor-0 1/1 Running 0 14d
  12. rbd-db-0 2/2 Running 0 14d
  13. rbd-eventlog-0 1/1 Running 0 14d
  14. rbd-app-ui-669bb7c74b-7bmlf 1/1 Running 0 7d12h
  15. rbd-app-ui-migrations--1-hp2qg 0/1 Completed 0 14d
  16. rbd-worker-679fd44bc7-n6lvg 1/1 Running 0 9d
  17. rbd-node-jhfzc 1/1 Running 0 9d
  18. rainbond-operator-7978d4d695-ws8bz 1/1 Running 0 9d
  19. rbd-chaos-nkxw7 1/1 Running 0 8d
  20. rbd-api-5d8bb8d57d-djx2s 1/1 Running 0 47h

5. Access platform

Run the following command in the cluster to obtain the platform access address. If there are multiple gateway nodes, the console can be accessed from any one address.

  1. kubectl get rainbondcluster rainbondcluster -n rbd-system -o go-template --template='{{range.spec.gatewayIngressIPs}}{{.}}:7070{{printf "\n"}}{{end}}'

6. Customize Advanced Settings (Optional)

When you have some additional requirements, such as using self-built mirror repositories, databases, ETCD, StorageClass, specifying gateway nodes, specifying build nodes, etc. You can generate the installation command using Helm Installation Command Generator tool. Parameters in detail can refer to values. Yaml explanation

Problem troubleshooting

The installation process if not finished for long time, so please refer to the document Helm installation problem troubleshooting guide, for troubleshooting. Use can reference Rainbond use screen or join WeChat group, nailing group Ask for help.

Next step

See quick start to deploy your first app.