Rainbond ubuntu20.04單主機(allinone)部署及簡單應用構建

xjk27400861發表於2023-02-19

1、Rainbond是什麼?

Rainbond 是一個雲原生應用管理平臺,使用簡單,不需要懂容器、Kubernetes和底層複雜技術,支援管理多個Kubernetes叢集,和管理企業應用全生命週期。

2、為什麼選擇Rainbond?

Rainbond 遵循 以應用為中心 的設計理念,統一封裝容器、Kubernetes和底層基礎設施相關技術,讓使用者專注於業務本身, 避免在業務以外技術上花費大量學習和管理精力。同時,Rainbond 深度整合應用開發、微服務架構、應用交付、應用運維、資源管理,管理高度自動化,實現統一管理所有應用、所有基礎設施和所有IT流程。

3、Docker單機版rainbond安裝,參考官網url:https://www.rainbond.com/docs/installation/install-with-ui/

  • 環境說明

    兩臺ubuntu虛擬機器(192.168.231.138 & 192.168.231.140),140節點作為kubernetes的一個節點
  • 在138主機(前提已安裝docker)上執行docker命令,建立Rainbond容器,啟動 All-In-One 控制檯

      docker run -d -p 7070:7070 \
      --name=rainbond-allinone --restart=always \
      -v ~/.ssh:/root/.ssh \
      -v /home/xujk/Work/Rainbond/rainbonddata:/app/data \
      registry.cn-hangzhou.aliyuncs.com/goodrain/rainbond:v5.11.0-release-allinone
    

    image

  • 透過ip+埠號7070;訪問:http://192.168.231.138:7070/

    image

  • 完成管理員註冊,使用者名稱:admin,密碼:xu**kun

  • 建立一個節點的k8s叢集測試用,節點是奇數個1,3,5...;140機器上需安裝好ssh服務

    image

  • 點選開始安裝,會彈出執行命令框,注意:執行指令碼的使用者需要有執行sudo許可權

    image

  • Ssh免密登入配置,否則ssh部署叢集報錯,沒有許可權

    在192.168.231.138機器上,執行命令:udo chmod 777 /home/xujk/.ssh/id_rsa;修改檔案加許可權,600許可權不可以;
    image
    image

  • Init_node官網指令碼需要修改,否則在ubuntu系統中執行會報錯誤

    check_user_permission方法:

    image

    Docker有執行docker命令的許可權,但是新增叢集的時候,報error這個錯誤,su命令切賬戶會報這個錯誤,加上sudo沒問題了

    check_resource方法:

    image

    check cpu與check memory報錯,保證你的機器能夠滿足條件即可,可以不驗證,這裡應該是ubuntu獲取cpu個數與記憶體大小沒有取到,報錯;也可以改變方法,使其在ubuntu系統中可以取到數值即可

    add_ssh_rsa方法,可以免密登入ssh:

    image

    登出600的那行程式碼,改為執行chmod 777這行

  • 執行執行本地指令碼init_node指令碼命令,命令列切換到指令碼所在目錄執行

      export SSH_RSA="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCw1bUDbNn5lb2pLXmObit2VONV8+hdngSbycpX8mmYWTGqveXlDjG+rf6us9pklZ8kjxLIvl/SO16qx3fusIMlL771ido6g0Lv/4Vco21JYUoOWrHyIliIH88CZa3LdVE/+7ns6mX28wfvcKWNaAFvptsMj8RD5G8gHHF7bcqY8Kzspj2ReRD8oqgawoyPsJiiFrEy0vgDrigwoW5RreZ+R1oKaMf3yDyNx2vNXSp1c5SPxwqMEjOlHLlmbA8FvlG5aJ1oYG3ehFxYGj2TkHds9SNfj+vkorPrBQpBI6RikPbPzSq57LqkbxYV7ytTW1g4RFRBxaX1E2dGY5tPnDC9
      " && bash init_node
    
  • 本地清理指令碼執行命令,命令列切換到指令碼所在目錄執行:

      sudo bash clean-rke
    
  • 安裝步驟截圖

    image

4、建立一個mysql應用元件

  • 從應用市場安裝mysql單機版

    image

  • 進行授權即可安裝

    image
    image

  • 安裝過程需要幾分鐘,可檢視日誌,檢視構建狀況

    image
    image

  • 安裝成功後,應用皮膚變成綠色

    image

  • 配置mysql容器對外訪問,mysql元件皮膚中,點選對外服務,管理訪問策略

    image
    image
    image

  • 透過mysql客戶端訪問工具訪問10000埠;連線成功

    image
    image

5、從原始碼構建java應用元件

  • 在admin的團隊下面,點選新建-從原始碼構建,這裡用官網的原始碼

    image

  • 確認建立後,系統會自動識別專案資訊,幫我們構建元件

    image

  • 過幾分鐘後,系統就會幫我們自動建立完應用,非常方便

    image
    image
    image

  • 應用元件建立完後,我們可以透過元件的埠皮膚,檢視訪問資訊

    image
    image

  • 我們可以透過應用下的皮膚,透過編排模式,從java應用拉一根線關聯到mysql,是兩個元件關聯上;這時候,java應用可以透過環境變數獲取到mysql資料庫的連線資訊等

    image

    image

6、安裝Kubectl CLI;參考官網https://www.rainbond.com/docs/ops-guide/tools/

  • 在客戶端機器140上執行命令

      wget https://grstatic.oss-cn-shanghai.aliyuncs.com/binary/kubectl -O /usr/bin/kubectl
      chmod +x /usr/bin/kubectl
    
    image
  • 編輯kube配置檔案,複製kubeconfig的內容到~/.kube/config檔案中

      mkdir ~/.kube/
      sudo gedit ~/.kube/config
    
    image
    image
  • 執行命令:kubectl get node

    image

7、ubuntu20.04執行指令碼已上傳,僅供參考:https://gitee.com/xujk-27400861/rainbond-ubuntu20-template

相關文章