新聞中心
一個由 Kubernetes 驅(qū)動的 PaaS 系統(tǒng) - Porter
作者:Porter 2022-04-17 10:04:32
云計算
云原生 像 Heroku 這樣的傳統(tǒng) PaaS 非常適合最大限度地減少不必要的 DevOps 工作,但隨著應(yīng)用程序的增長,它并不能提供足夠的靈活性。自定義網(wǎng)絡(luò)規(guī)則、資源限制和成本是開發(fā)人員將其應(yīng)用程序從 Heroku 遷出的常見原因。

成都創(chuàng)新互聯(lián)專注于陜西網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供陜西營銷型網(wǎng)站建設(shè),陜西網(wǎng)站制作、陜西網(wǎng)頁設(shè)計、陜西網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務(wù),打造陜西網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供陜西網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
Porter 是一個由 Kubernetes 驅(qū)動的 PaaS 系統(tǒng),可以在你自己的云供應(yīng)商中運行。Porter 嘗試將 Heroku 的使用經(jīng)驗帶到你自己的 AWS/GCP 賬戶中,同時將你的基礎(chǔ)設(shè)施升級為 Kubernetes。
概述
像 Heroku 這樣的傳統(tǒng) PaaS 非常適合最大限度地減少不必要的 DevOps 工作,但隨著應(yīng)用程序的增長,它并不能提供足夠的靈活性。自定義網(wǎng)絡(luò)規(guī)則、資源限制和成本是開發(fā)人員將其應(yīng)用程序從 Heroku 遷出的常見原因。
Porter 為你自己的云提供商帶來了傳統(tǒng) PaaS 的簡單性,同時保留了 Kubernetes 的可配置性。Porter 建立在流行的 Kubernetes 包管理器 helm 之上,并與 kubectl 等標(biāo)準(zhǔn) Kubernetes 管理工具兼容,從一開始就為成熟的 DevOps 工作做好了準(zhǔn)備。只需要點擊幾下即可將應(yīng)用程序部署到你的云提供商中,Porter 將為你配置和管理底層基礎(chǔ)架構(gòu) - 只需指向你的存儲庫,Porter 將處理其余的工作,從構(gòu)建你的應(yīng)用程序到自動擴展它。
在底層,Porter 運行在 Kubernetes 之上。Porter 配置和管理每個云提供商的原生 Kubernetes 產(chǎn)品(AWS 上的 EKS、GCP 上的 GKE 和 Digital Ocean Kubernetes),同時抽象出所有的復(fù)雜性。
可能你會覺得 Porter 在 Kubernetes 之上運行太過復(fù)雜,對于不了解 Kubernetes 的團隊來說,Kubernetes 會有一定的門檻。除了一些基本概念之外,你不需要了解任何關(guān)于 Kubernetes 的知識即可使用 Porter。Kubernetes 恰好是提供 PaaS 體驗的最佳底層。事實上,大多數(shù) PaaS 實際上都是在 Kubernetes 之上運行的,盡管這些細節(jié)對最終用戶來說是隱藏的。如果你的團隊已經(jīng)熟悉 Kubernetes,Porter 可以成為簡化你現(xiàn)有操作的內(nèi)部部署平臺。
特性
- 可以在自己的云控制臺中一鍵開通 Kubernetes 集群:AWS、GCP、Digital Ocean。
- 簡單部署任何公共或私有的 Docker 鏡像。
- 為非容器化應(yīng)用使用 buildpacks 進行 CI/CD。
- 類似于 Heroku 的操作界面,用于監(jiān)控應(yīng)用程序狀態(tài)、日志和歷史記錄。
- 應(yīng)用程序可以方便回滾到以前部署的版本。
- 零宕機部署和健康檢查。
- 監(jiān)控每次部署的 CPU、內(nèi)存和網(wǎng)絡(luò)使用情況。
- 一鍵式插件市場(例如 MongoDB、Redis、PostgreSQL)。
對于熟悉 Kubernetes 和 Helm 的用戶:
- 可以將現(xiàn)有 Kubernetes 集群直接連接到 Porter 使用。
- 通過界面可視化、部署和配置 Helm Charts。
- 深入了解版本,包括修訂歷史和組件圖。
- 回滾/更新現(xiàn)有版本,包括編輯原始 values.yaml 文件。
使用
最簡單的方式就是直接使用 Porter 提供的在線云服務(wù) https://dashboard.getporter.dev/,直接登錄注冊。然后創(chuàng)建一個項目并配置你的云服務(wù)商的相關(guān)憑證,Porter 會在你的云服務(wù)中自動配置 Kubernetes 集群。
如果你沒有云服務(wù)商也可以連接現(xiàn)有的 Kubernetes 集群,下載 Porter CLI 工具,然后將你現(xiàn)有 Kubernetes 集群的 kubeconfig 連接到 Porter 即可:
配置上 Kubernetes 集群后就可以選擇部署服務(wù),支持 Web 服務(wù)、Worker 與 Job 任務(wù):
比如選擇一個 Web 服務(wù),如果你連接了 GitHub,那么可以選擇部署一個倉庫,也可以直接指定一個 Docker 鏡像地址:
如果你使用的 Porter 的云服務(wù),部署完成后會為你的應(yīng)用自動添加一個二級域名,通過該地址即可訪問到部署的服務(wù):
如果你的集群中安裝了 Prometheus,還可以對應(yīng)用進行監(jiān)控:
而且還可以配置自動擴縮容:
如果你需要本地進行開發(fā)測試,可以直接 Clone 倉庫代碼:
git clone https://github.com/porter-dev/porter
然后執(zhí)行 make start-dev 命令即可在本地啟動服務(wù),不過需要在 docker/.env文件中添加下如下兩個環(huán)境變量,否則本地啟動后無法正常使用:
WELCOME_FORM_WEBHOOK=https://www.qikqiak.com
DISABLE_ALLOWLIST=true
關(guān)于 Porter 的更多信息可以查看官方文檔 https://docs.porter.run 了解更多信息。
倉庫地址:https://github.com/porter-dev/porter。
網(wǎng)站欄目:一個由Kubernetes驅(qū)動的PaaS系統(tǒng)-Porter
標(biāo)題網(wǎng)址:http://m.fisionsoft.com.cn/article/ccdjcgp.html


咨詢
建站咨詢
