Aracılığıyla paylaş


Azure İşlevleri'da Linux kapsayıcısı desteği

tek tek işlevlerinizi Azure İşlevleri çalışacak şekilde planlayıp geliştirirken genellikle kodun kendisine odaklanırsınız. Azure İşlevleri yalnızca kod projenizi Azure'daki bir işlev uygulamasına dağıtmayı kolaylaştırır. Kod projenizi Linux üzerinde çalışan bir işlev uygulamasına dağıttığınızda, proje sizin için otomatik olarak oluşturulan bir kapsayıcıda çalışır. Bu kapsayıcı İşlevler tarafından yönetilir.

İşlevler kapsayıcılı işlev uygulaması dağıtımlarını da destekler. Kapsayıcılı dağıtımda, desteklenen bir tabanlı görüntüden yerel bir Docker kapsayıcısında kendi işlev uygulama örneğinizi oluşturursunuz. Ardından bu kapsayıcılı işlev uygulamasını Azure'daki bir barındırma ortamına dağıtabilirsiniz. Kendi işlev uygulaması kapsayıcınızı oluşturmak, işlev kodunuzun hemen çalışma zamanı ortamını özelleştirmenize veya başka bir şekilde denetlemenize olanak tanır.

Önemli

Kendi kapsayıcılarınızı oluştururken kapsayıcınızın temel görüntüsünü desteklenen en son temel görüntüye güncel tutmanız gerekir. Azure İşlevleri için desteklenen temel görüntüler dile özgü olup Azure İşlevleri temel görüntü depolarında bulunur.

İşlevler ekibi, bu temel görüntüler için aylık güncelleştirmeleri yayımlamaya kararlıdır. Düzenli güncelleştirmeler, hem İşlevler çalışma zamanı hem de diller için en son ikincil sürüm güncelleştirmelerini ve güvenlik düzeltmelerini içerir. Kapsayıcınızı düzenli olarak en son temel görüntüden güncelleştirmeli ve kapsayıcınızın güncelleştirilmiş sürümünü yeniden dağıtmalısınız.

Kapsayıcı barındırma seçenekleri

Kapsayıcılı işlev uygulamalarınızı Azure'da barındırmak için çeşitli seçenekler vardır:

Barındırma seçeneği Sosyal haklar
Azure Container Apps Azure İşlevleri üzerinde kapsayıcılı işlev uygulamaları geliştirmek, dağıtmak ve yönetmek için tümleşik destek sağlarAzure Container Apps. Bu, Azure portalında aynı İşlevler araçlarını ve sayfalarını kullanarak uygulamalarınızı yönetmenizi sağlar. Azure'da olay temelli işlevlerinizi diğer mikro hizmetler, API'ler, web siteleri, iş akışları veya kapsayıcı tarafından barındırılan programlarla aynı ortamda çalıştırmanız gerektiğinde işlev uygulaması kapsayıcılarınızı barındırmak için Azure Container Apps'i kullanın. Container Apps barındırma, açık kaynak izleme, mTLS, Dapr ve KEDA için yerleşik destekle işlevlerinizi yönetilen Kubernetes tabanlı bir ortamda çalıştırmanıza olanak tanır. Sıfıra ölçekle özelliğini destekler ve sunucusuz bir kullanılıp kullanılmadığınız için ödemeli barındırma modeli sağlar. İş yükü profillerini kullanarak ayrılmış donanım hatta GPU'lar da isteyebilirsiniz. Azure'da kapsayıcılı işlev uygulamalarını çalıştırmak için önerilen barındırma seçeneği.
Azure Arc özellikli Kubernetes kümeleri (önizleme) İşlev uygulamalarınızı Azure Arc özellikli Kubernetes kümelerinde yalnızca kod dağıtımı olarak veya özel bir Linux kapsayıcısında barındırabilirsiniz. Azure Arc, Kubernetes kümelerini azure'da yönetebilmeniz ve yapılandırabilmeniz için eklemenize olanak tanır. Azure Arc özellikli Kubernetes kümelerinde Azure İşlevleri kapsayıcıları barındırma şu anda önizleme aşamasındadır.
Azure Functions Kapsayıcıyı Elastik Premium planında veya Ayrılmış planda çalıştırarak kapsayıcılı işlev uygulamalarınızı Azure İşlevleri'de barındırabilirsiniz. Premium plan barındırma, dinamik ölçeklendirmenin avantajlarını sağlar. Mevcut kullanılmayan App Service planı kaynaklarından yararlanmak için Ayrılmış plan barındırmayı kullanmak isteyebilirsiniz.
Kubernetes Azure İşlevleri çalışma zamanı istediğiniz yerde ve şekilde barındırma esnekliği sağladığından işlev uygulaması kapsayıcılarınızı doğrudan Kubernetes kümelerinde barındırabilir ve yönetebilirsiniz. KEDA (Kubernetes tabanlı Event Driven Autoscaling), Kubernetes'te olay odaklı ölçek sağlamak için Azure İşlevleri çalışma zamanı ve araçlarıyla sorunsuz bir şekilde eşleştirir. Kapsayıcılı işlev uygulamalarınızı KEDA kullanarak veya doğrudan dağıtım yoluyla Kubernetes'te çalıştırmanın, katkıda bulunanlar ve topluluk tarafından sağlanan en iyi çaba desteğiyle ücretsiz olarak kullanabileceğiniz bir açık kaynak çaba olduğunu unutmayın. Azure Kubernetes Service'e (AKS) dağıtım yaparken bile bir kümede kendi işlev uygulaması kapsayıcılarınızı korumak sizin sorumluluğunuzdadır.

Özellik desteği karşılaştırması

İşlev uygulamanızı bir kapsayıcıda çalıştırırken Azure İşlevleri çeşitli özelliklerinin ve davranışlarının desteklenme derecesi, seçtiğiniz kapsayıcı barındırma seçeneğine bağlıdır.

Özellik/davranış Container Apps (tümleşik) Container Apps (doğrudan) Premium plan Ayrılmış plan Kubernetes
Ürün desteği Yes Hayı Evet Evet Hayır
İşlevler portalı tümleştirmesi Evet Hayır Evet Evet Hayır
Olay temelli ölçeklendirme Evet5 Evet (ölçek kuralları) Yes Hayır Hayır
Maksimum ölçek (örnekler) 10001  10001  1002  10-303  Kümeye göre değişir
Sıfıra ölçeklendir örnekleri Evet Evet Hayır Hayır KEDA
Yürütme süresi sınırı İlişkisiz6 İlişkisiz6 İlişkisiz7 İlişkisiz8 Hiç kimse
Temel Araçlar dağıtımı func azurecontainerapps Hayır Hayır Hayır func kubernetes 
Düzeltmeler Hayır Evet Hayır Hayır Hayır
Dağıtım yuvaları  Hayır Hayır Evet Evet Hayır
Akış günlükleri  Evet Evet  Evet Evet Hayır
Konsol erişimi  Şu anda kullanılamıyor4  Yes Evet (Kudu kullanarak) Evet (Kudu kullanarak) Evet (kullanarak kubectlpodlarda)
Soğuk başlangıç risk azaltma En düşük çoğaltmalar Ölçek kuralları  Her zaman hazır/önceden ısıtılmış örnekler  yok Yok
App Service kimlik doğrulaması  Şu anda kullanılamıyor4  Evet Evet Evet Hayır
Özel etki alanı adları  Şu anda kullanılamıyor4  Evet Evet Evet Hayır
Özel anahtar sertifikaları  Şu anda kullanılamıyor4  Evet Evet Evet Hayır
Sanal ağlar Evet Evet Evet Evet Evet
Kullanılabilirlik alanları Evet Evet Evet Evet Evet
Tanılama Şu anda kullanılamıyor4  Evet Evet  Evet  Hayır
Özel donanım Evet (iş yükü profilleri) Evet (iş yükü profilleri) Hayır Evet Yes
Ayrılmış GPU'lar Evet (iş yükü profilleri) Evet (iş yükü profilleri) Hayır Hayır Evet
Yapılandırılabilir bellek/CPU sayısı Evet Evet Hayır Hayır Evet
"Ücretsiz hibe" seçeneği Evet Evet Hayır Hayır Hayır
Fiyatlandırma ayrıntıları Container Apps faturalaması Container Apps faturalaması Premium plan faturalaması Ayrılmış plan faturalaması AKS fiyatlandırması
Hizmet adı gereksinimleri 2-32 karakter: küçük harfler, sayılar ve kısa çizgilerle sınırlıdır. Harfle başlayıp alfasayısal karakterle bitmelidir. 2-32 karakter: küçük harfler, sayılar ve kısa çizgilerle sınırlıdır. Harfle başlayıp alfasayısal karakterle bitmelidir. 64 karakterden az: Alfasayısal karakterler ve kısa çizgilerle sınırlıdır. Kısa çizgiyle başlayamaz veya bitemez. 64 karakterden az: Alfasayısal karakterler ve kısa çizgilerle sınırlıdır. Kısa çizgiyle başlayamaz veya bitemez. 253 karakterden az: Alfasayısal karakterler ve kısa çizgilerle sınırlıdır. Alfasayısal karakterle başlayıp bitmelidir.
  1. Container Apps'te varsayılan değer 10 örnektir, ancak toplam en fazla 1000 çoğaltma içeren en fazla çoğaltma sayısını ayarlayabilirsiniz. Yeterli çekirdek kotası olduğu sürece bu ayar kabul edilir. İşlev uygulamanızı Azure portalından oluşturduğunuzda 300 örnekle sınırlısınız.
  2. Bazı bölgelerde Premium plandaki Linux uygulamaları 100 örneğe ölçeklendirilebilir. Daha fazla bilgi için Premium plan makalesine bakın.
  3. Çeşitli App Service planı seçenekleri için belirli sınırlar için bkz . App Service planı sınırları.
  4. Özellik eşliği, Azure Container Apps'te tümleşik barındırmanın bir hedefidir.
  5. KEDA gerektirir; çoğu tetikleyici tarafından desteklenir. Hangi tetikleyicilerin olay odaklı ölçeklendirmeyi desteklediğini öğrenmek için bkz . Container Apps barındırma ile ilgili önemli noktalar.
  6. En az çoğaltma sayısı sıfır olarak ayarlandığında, varsayılan zaman aşımı uygulamada kullanılan belirli tetikleyicilere bağlıdır.
  7. Zorunlu yürütme zaman aşımı süresi üst sınırı yoktur. Ancak, bir işlev yürütmesine verilen yetkisiz kullanım süresi, ölçeği daraltma sırasında 60 dakikadır ve platform güncelleştirmeleri sırasında 10 dakikalık yetkisiz kullanım süresi verilir.
  8. App Service planının Always On olarak ayarlanmasını gerektirir. Platform güncelleştirmeleri sırasında 10 dakikalık bir yetkisiz kullanım süresi verilir.

Başlarken

Linux kapsayıcılarında Azure İşlevleri ile çalışmaya başlamak için şu bağlantıları kullanın:

Yapmak istiyorum... Makaleye bakın:
İlk kapsayıcılı işlevlerimi oluşturma Yerel Linux kapsayıcısında işlev uygulaması oluşturma
İşlev oluşturma ve Azure Container Apps'e dağıtma Azure Container Apps'te ilk kapsayıcılı işlevlerinizi oluşturma
Kapsayıcılı işlevler oluşturma ve Azure İşlevleri dağıtma İlk kapsayıcılı Azure İşlevleri oluşturma
İşlev oluşturma ve Azure Arc özellikli Kubernetes'e dağıtma Azure Arc'ta ilk kapsayıcılı Azure İşlevleri oluşturma (önizleme)