Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
İpucu
Bu içerik, .NET Docs'ta veya çevrimdışı olarak okunabilen ücretsiz indirilebilir bir PDF olarak sağlanan Azure için Buluta Özel .NET Uygulamaları Tasarlama adlı e-Kitap'tan bir alıntıdır.
Bulutta yerel uygulamalar genellikle kapsayıcılar ve düzenlemeden yararlanan hizmetler uygular. Genellikle uygulamanın bazı hizmetlerini Azure İşlevleri olarak kullanıma sunma fırsatları vardır. Ancak Kubernetes'e dağıtılan buluta özel bir uygulamayla aynı araç takımındaki Azure İşlevleri kullanmak iyi olacaktır. Neyse ki Azure İşlevleri Docker kapsayıcılarının içine sarmalayabilir ve Kubernetes tabanlı uygulamanızın geri kalanıyla aynı işlemleri ve araçları kullanarak dağıtabilirsiniz.
Kapsayıcıları sunucusuz olarak kullanmak ne zaman mantıklıdır?
Azure İşlevinizin dağıtıldığı platform hakkında hiçbir bilgisi yoktur. Bazı senaryolarda belirli gereksinimleriniz olabilir ve işlev kodunuzun üzerinde çalıştırılacağı ortamı özelleştirmeniz gerekebilir. Bağımlılıkları destekleyen özel bir görüntüye veya varsayılan görüntü tarafından desteklenmeyen bir yapılandırmaya ihtiyacınız olacaktır. Bu gibi durumlarda işlevinizi özel bir Docker kapsayıcısına dağıtmak mantıklıdır.
kapsayıcıları Azure İşlevleri ile kullanmaktan ne zaman kaçınmalısınız?
Tüketim faturalamasını kullanmak istiyorsanız, işlevinizi bir kapsayıcıda çalıştıramazsınız. Dahası, işlevinizi bir Kubernetes kümesine dağıtırsanız artık Azure İşlevleri tarafından sağlanan yerleşik ölçeklendirmeden yararlanamayacaksınız. Bu bölümün başlarında açıklanan Kubernetes'in ölçeklendirme özelliklerini kullanmanız gerekir.
Sunucusuz ve Docker kapsayıcılarını birleştirme
Azure İşlevini docker kapsayıcısına sarmak için Azure İşlevleri Core Tools'u yükleyin ve aşağıdaki komutu çalıştırın:
func init ProjectName --worker-runtime dotnet --docker
Proje oluşturulduğunda, bir Dockerfile ve olarak dotnetyapılandırılmış çalışan çalışma zamanı içerir. Artık işlevinizi yerel olarak oluşturabilir ve test edebilirsiniz. ve docker build komutlarını kullanarak docker run derleyin ve çalıştırın. Docker desteğiyle Azure İşlevleri oluşturmaya başlamaya yönelik ayrıntılı adımlar için Özel görüntü kullanarak Linux'ta işlev oluşturma öğreticisine bakın.
Sunucusuz ve Kubernetes'i KEDA ile birleştirme
Bu bölümde, Azure İşlevleri platformunun talebi karşılamak için otomatik olarak ölçeği genişletildiğini gördünüz. Öte yandan AKS'ye kapsayıcılı işlevler dağıtırken yerleşik ölçeklendirme işlevselliğini kaybedersiniz. Kurtarma için Kubernetes tabanlı Event Driven (KEDA) geliyor. Kapsayıcılı işlevler de dahil olmak üzere için event-driven Kubernetes workloadsayrıntılı otomatik ölçeklendirmeyi etkinleştirir.
KEDA, Bir Docker kapsayıcısında İşlevlerin çalışma zamanına olay temelli ölçeklendirme işlevi sağlar. KEDA, yüke göre sıfır örnekten (hiçbir olay gerçekleşmediğinde) ölçeğini olarak n instancesgenişletebilir. Özel ölçümleri Kubernetes otomatik ölçeklendiricisine (Yatay Pod Otomatik Ölçeklendiricisi) göstererek otomatik ölçeklendirmeyi etkinleştirir. İşlev kapsayıcılarını KEDA ile kullanmak, herhangi bir Kubernetes kümesinde sunucusuz işlev özelliklerini çoğaltmayı mümkün kılar.
KEDA projesinin artık Cloud Native Computing Foundation (CNCF) tarafından yönetildiğini belirtmek gerekir.