我面臨以下問題:我需要在 Azure VM 上執行按需長時間運行的作業人員。這些作業人員被包裝在一個 docker 映像中。
所以我查看了 Azure 提供的內容,我似乎有以下兩種選擇:
使用帶有 docker-compose 的 VM。這意味著我需要能夠以編程方式啟動 VM,在其上運行 docker 映像,然后關閉 VM(我們使用的規范非常昂貴,我們不能讓它無限期地運行)。然而,這意味著我們自己撰寫編排邏輯。有沒有一種服務可以讓我們的生活變得更輕松?
搭建 k8s 集群。但是,我不確定這里的定價是如何運作的。我可以將我們使用的虛擬機的型別添加到集群中,然后使用 k8s API 來啟動按需容器嗎?在這種情況下我將如何定價?
uj5u.com熱心網友回復:
如果您唯一需要的是工人,那么您還有更多選擇。哪種服務最適合取決于您的要求。根據您的問題,我認為以下兩個之一可能最適合:
Azure 容器實體
Azure 容器實體提供了在 Azure 中運行容器的最快、最簡單的方法,無需管理任何虛擬機,也無需采用更高級別的服務。
Azure 容器實體對于可以在隔離容器中運行的任何場景都是一個很好的解決方案,包括簡單的應用程式、任務自動化和構建作業。
Azure 容器應用(預覽版)
Azure 容器應用使你能夠在無服務器平臺上運行微服務和容器化應用程式。Azure 容器應用的常見用途包括:
- 部署 API 端點
- 托管后臺處理應用程式
- 處理事件驅動的處理
- 運行微服務
根據 Azure 的容器服務頁面,您可以選擇以下選項:
| 如果你想 | 用這個 |
|---|---|
| 在托管 Kubernetes 上部署和擴展容器 | Azure Kubernetes 服務 (AKS) |
| 在托管的 Red Hat OpenShift 上部署和擴展容器 | Azure 紅帽 OpenShift |
| 使用無服務器容器構建和部署現代應用程式和微服務 | Azure 容器應用 |
| 通過端到端的開發體驗執行事件驅動的無服務器代碼 | Azure 函式 |
| 在 Windows 和 Linux 上運行容器化 Web 應用程式 | 容器的 Web 應用程式 |
| 啟動具有管理程式隔離的容器 | Azure 容器實體 |
| 部署和運行始終在線、可擴展的分布式應用程式 | Azure 服務結構 |
| 構建、存盤、保護和復制容器映像和工件 Azure | 容器注冊表 |
編輯:
根據評論
假設唯一的要求是我能夠按需使用資源,所以我最終只花費完成某項作業所需的資金來完成執行。你會用什么?
答案很可能是容器應用程式,如果您可用的代碼不容易遷移到 Azure 函式。最重要的原因:它們是無服務器的,這意味著它們可以擴展到零,您只需為實際消耗付費。除此之外,您必須撰寫受限于無編排邏輯,因為容器應用程式可以基于事件源進行擴展。
通過支持基于流量的擴展和從佇列等事件源中拉取,包括縮放到零,從而實作事件驅動的應用程式架構。
另一個很好的資源是將容器應用程式與其他 Azure 容器選項進行比較。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/421315.html
標籤:
下一篇:Go基礎知識梳理(二)
