Azure Container App(一)應用介紹

Grant_Allen發表於2022-03-20

一,引言

  容器技術正日益成為打包、部署應用程式的第一選擇。Azure 提供了許多使用容器的選項。例如,我們可以使用 Azure 容器登錄檔來儲存和管理 Docker Images。Azure Container Instance 或 Azure 應用服務可用於執行隔離容器。對於需要完整容器編排、自動縮放和服務發現的更復雜的場景,Azure Kubernetes 服務是一個很好的選擇。問題是,Azure Kubernetes 雖然是託管的,但 用起來還是有些困難,開發人員必須得學習掌握一些運維知識。

2021年,Azure 提出了新服務 Azure Container App。該服務旨在減少構建 AKS 應用程式所需的知識和配置量,從而可能降低解決方案成本並加快上市時間。

-------------------- 我是分割線 --------------------

1,Azure Container App(一)應用介紹

二,正文

1,什麼是 Azure Container App ??

Azure Container App 提供位於 AKS 服務之上的無伺服器託管服務,允許您部署多個容器而無需處理底層基礎結構。事實上,Azure Container App 甚至不向使用者公開 Kubernetes API。

當我們在 Azure Container App中部署或更改容器時,該服務將自動建立應用程式的快照-----修訂版,並在一個 pod 中執行它的容器。就像在 Azure Kubernetes 中一樣,這些容器共享相同的應用程式生命週期、網路和磁碟。它們可以相互交流。此外,由於它與基於 Kubernetes 的事件驅動自動縮放的整合,該服務將根據 HTTP 併發請求數等指標自動增加/減少(不支援垂直縮放)與修訂相關的 Pod 數量和記憶體使用。作為節省一些費用上開支,我們還可以將最小副本數設定為 0。如果應用程式沒有請求,該服務會將活動 pod 的數量縮減為 0,我們無需支付任何費用。

同時多個 Azure Container App 也可以部署到單個環境中通過這樣做,它們將被置於同一個虛擬網路下並與外界隔離。為了提供監視功能,每個環境都有自己的 Log Analytics 工作區,該工作區與其中的 Azure Container App共享。對於熟悉 Kubernetes 的人來說,我們可以將 Azure Container App Environment 視為 Kubernetes Namespace,將 Azure Container App Revision 視為 Kubernetes Deployment。

最後就是,Azure Container App 將可用選項減少為一個簡單的入口切換,一旦啟用,它就會提供 HTTPS 入口和完全限定域名 (FQDN)。

2,修改

當我們在 Azure Container App 中部署或更改容器時,該服務會自動獲取 Azure Container Instance 的不可變快照。然後它在一個單獨的 pod 上部署一個新版本。但是,並非所有更改都會觸發此行為。在 Azure Container App 中,我們可以區分兩種型別的更改:

  1)修訂範圍更改。

  2)應用範圍的變化。

當我們建立新版本時,舊版本的流量會完全轉移到新版本。我們可以使用流量拆分規則來定義它們之間的流量平衡方式。這些包括將一定比例的流量引導到特定的修訂版。

3,和 Dapr 整合

Azure Container App 提供與開源專案 Dapr(分散式應用程式執行時)的內建相容性。啟用後,Dapr 應用程式將與我們修訂版一起部署,通過 HTTP 或 gRPC 提供對 Dapr API 提供的功能的訪問。

三,結尾

  相對於操作有些複雜的 Azure Kubernetes 和昂貴的使用的定價,Azure Container App 這項服務變得越來越流行。目前,該服務作為公共預覽版提供,因此我們已經可以開始使用它了。

參考連結:Azure 容器登錄檔Azure 容器例項Azure Kubernetes

作者:Allen 

版權:轉載請在文章明顯位置註明作者及出處。如發現錯誤,歡迎批評指正。

相關文章