SAP BTP 平臺 CloudFoundry 環境入門級別的介紹
讓我們首先解釋 Cloud Foundry 的名稱。 它是什麼?
Cloud Foundry(或 CF)是 Cloud Foundry 基金會(之前是 Linux 基金會)的規範和軟體工具集。 它是完全開源的,任何公司或組織都可以使用這些工具或建立遵循 CF 規範的系統。
SAP 通過為其建立專用環境作為簡單易用的平臺即服務 (PaaS),在 SAP BTP 上實施了 Cloud Foundry。
Cloud Foundry 為開發人員和組織帶來了顯著的好處:
- 語言無關 - 選擇任何語言執行時,並根據需要新增新語言
- 管理員分離——管理員和開發人員可以並行工作
- 標準命令列介面 - 所有 CF 提供程式都使用相同的 CLI,而不僅僅是 SAP
- 開源 - 許多公司的貢獻,更新和新功能更快
我們將在下面的部分中討論其中的許多新功能。
Cloud Foundry - Plaform as a Service PaaS
從圖中可以看出,傳統的開發需要整個系統。 硬體、作業系統、應用伺服器和軟體都由組織管理和維護。 這稱為“內部部署”。
傳統的雲開發將硬體和基礎設施移出組織。 但是,開發人員和管理員仍然必須維護從作業系統 (OS) 開始的所有內容。
平臺即服務 PaaS 將執行時(應用程式伺服器、資料庫和其他基本應用程式)的控制從組織轉移回雲。
Fixing a PaaS problem - buildpacks and services
然而,PaaS 系統存在一個問題。 將執行時層移至雲端意味著組織失去了對執行時層的控制。 如果組織想要進行更改,則需要與雲提供商合作。
Cloud Foundry 通過向雲提供商和組織提供執行時控制來解決這個問題。
在 Cloud Foundry 中,雲提供商和組織都可以訪問上面的管理員控制部分。
這是使用兩個概念完成的:構建包和服務。
buildpack 定義了一個用於執行應用程式的容器。例如,一個 buildpack 可能執行 Java Web 應用程式,另一個執行 Node.js 應用程式。 Cloud Foundry 提供了許多標準的構建包,然後還有一個 GitHub 儲存庫,其中有許多其他的開源專案。組織還可以建立自己的構建包、新增新語言、升級到最新版本或建立一組經過 IT 審查的標準授權執行時容器。
Cloud Foundry 服務是提供給所有不同執行時環境的軟體程式或程式集。最常見的服務是提供公共資料儲存位置的資料庫(或其他一些持久儲存)。其他服務可能包括日誌記錄、訊息傳遞或多個應用程式通用的其他工具。
以下是 SAP BTP Cloud Foundry 環境中的部分服務列表:
Development made easy
Cloud Platform 使在雲中執行和測試應用程式變得非常容易。 實際上,在 Cloud Foundry 中上傳和啟動應用程式是一個命令:cf push。
以 Java Web 應用程式為例。 Java Web 應用程式部署在稱為 WAR(用於 Web ARchive)的 zip 檔案中。 建立 WAR 很容易,大多數工具和 IDE 都可以為您完成。
在雲中執行 WAR 檔案很簡單。 只需執行命令 cf push WAR-FILE-NAME。 Cloud Foundry 完成其餘的工作。 它會自動完成所有這些:
- 上傳和儲存檔案(或多個檔案)
- 檢查並存儲應用元資料
- 為應用程式建立一個“droplet”(Cloud Foundry 執行單元)
- 選擇合適的執行時間來執行 Droplet
- 啟動應用程式
Service Marketplace - Services we provide
SAP 為 Cloud Foundry 開發人員提供了許多服務。
我們的服務包括 SAP 軟體(例如 SAP HANA),以及一些連線到 3rd 方平臺的軟體元件(例如 Open Connectors)。
當然,開發者和組織都可以自帶服務來滿足專案或組織的需求。
Understanding spaces
Cloud Foundry 為單個應用程式提供了一個標準的工作環境:它被稱為空間。
空間是單獨的工作區域,通常包含一個應用程式。 每個空間都有一個來自全域性帳戶的資源分配(全域性帳戶屬於您的團隊或組織)。 這種分配被 SAP 稱為配額,並限制記憶體量、URL(稱為路由)的數量和其他資源。 每個空間分配給 1 個或多個使用者(稱為成員)。
組織可以為單個專案建立空間,因為每個空間都是獨立的,並且與所有其他空間隔離。
更多Jerry的原創文章,盡在:"汪子熙":