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.
Eski İşlevler v1 modelinde çalışan Azure İşlevleri'ni Azure Container Apps'te önerilen İşlevler v2 modeline taşımak için bu kılavuzu kullanın. Geçişin neden yapıldığını, hangi değişikliklerin yapıldığını ve geçişi en düşük riskle nasıl yürüteceğinizi öğrenirsiniz.
İki dağıtım modeli kullanarak Azure Container Apps'te Azure İşlevleri'ne ev sahipliği yapabilirsiniz:
İşlevler v1: İşlev Uygulaması (
Microsoft.Webkaynak sağlayıcısı) ve arka planda kapsayıcı uygulaması kullanan eski ara sunucu modeli.İşlevler v2:
Microsoft.Appile tek bir Azure Container App kaynağı (kind=functionapp) oluşturan doğal model.
v2'ye geçtiğiniz zaman yönetimi basitleştirir, yerel özelliklerin kilidini açar ve Azure İşlevleri'nin gelecekteki yol haritasıyla uyumlu hale getirirsiniz.
Model karşılaştırması
| Area | v1 (eski) | v2 (önerilir) |
|---|---|---|
| Kaynak modeli | Gizli bir taşıyıcı uygulamasıyla eşleştirilmiş Ara Sunucu İşlevleri uygulaması | Tek yerel kapsayıcı uygulaması (kind=functionapp) |
| Yerel özellikler (düzeltmeler, gizli bilgiler, sağlık kontrolleri, özel etki alanları, aynı kapsamdaki modüller) |
Desteklenmez | Destekleniyor |
| Ölçeklendirme denetimleri (bekleme süresi, yoklama aralığı) |
Sınırlı | Tüm kapsayıcı uygulama ölçeklendirme seçenekleri |
| Günlük Kaydı ve Sorun Giderme | Dolaylı. Canlı konsol yok | Dolaysız. Canlı günlükleri ve tanılamaları içerir |
| Dapr tümleştirmesi | Bazı yalıtılmış .NET senaryolarında sorunlu | Standart desenlerle desteklenir |
| Kimlik Doğrulaması (Kolay Doğrulama) | Mevcut değil | Mevcut |
| Sertifikalar ve özel etki alanları | Mevcut değil | Mevcut |
| Ölçümler ve uyarı | Temel | Tam yerel ölçümler ve uyarılar |
| Gelecekteki yol haritası (işlev listesi, anahtarlar, çağırma sayısı) |
Planlanmadı | Planned |
| operasyonel karmaşıklık | çift kaynak yönetimi | Tek kaynak |
| Yeni dağıtımlar için önerilir | Hayı | Yes |
İşlevler v1'in sınırlamaları
Azure Container Apps'te v1 işlevleri ölçeklenebilirliği, yönetimi ve özellik kullanılabilirliğini etkileyen çeşitli sınırlamalara sahiptir. Bu kısıtlamaları anlamak, v2 modeline geçişin avantajlarını netleştirmeye yardımcı olur.
Özellik boşlukları
İşlevler v1 uygulamalarında aşağıdaki özellikler kullanılamaz:
- Kolay Kimlik Doğrulaması
- Sağlık araştırmaları
- Özel alan adları
- Sepet kapsayıcıları
- Yönetilen sertifikalar
- Kapsayıcı uygulama gizlilik bilgileri
- Ayrıntılı ölçek ayarları
- Çoklu revizyonlu trafik bölme
Sorun giderme kısıtlamaları
İşlevler v1 uygulamalarıyla doğrudan kapsayıcı erişiminiz veya gerçek zamanlı konsol çıkışınız yoktur. Bunun yerine, altyapı tanılaması için Log Analytics'i ve uygulama günlükleri için Application Insights'ı kullanmanız gerekir.
Dapr entegrasyon problemleri
Dapr ve .NET yalıtılmış İşlevleri, bağımlılık ve başlatma sıralama kısıtlamaları nedeniyle derleme veya çalışma zamanı sırasında çakışabilir.
İşlevlerin avantajları v2
Functionlar v2 doğrudan yerel bir kapsayıcı uygulama kaynağı oluşturur. Bu yaklaşım, proxy dolaylılığını ortadan kaldırır ve Azure Container Apps'in tüm yeteneklerini etkinleştirir.
Önemli avantajlar:
- Kimlik boşaltma için Kolay Kimlik Doğrulama'yı etkinleştirin.
- Dayanıklılığı artırmak için sağlık denetimlerini yapılandırın.
- Özel etki alanları ayarlayın ve yönetilen sertifikaları kullanın.
- Tek bir kaynakla operasyonel ek yükü azaltın.
- Gizli verileri yerel olarak depolayın ve yan taşıyıcı kapsayıcıları bağlayın.
- Daha net ölçümler, uyarılar ve canlı günlük akışı elde edin.
- Çok bölümlü dağıtımları kullanın ve trafiği güvenli bir şekilde bölün.
- Ayrıntılı ölçeklendirme kuralları uygulama (yoklama aralığı, bekleme süresi).
Uyarı
Kod değişikliği gerekmez. Mevcut kapsayıcı görüntünüzü yeniden kullanabilirsiniz.
Eski doğrudan görüntü dağıtımı (desteklenmiyor)
Bazı dağıtımlarda standart bir kapsayıcı uygulaması kullanılır ve İşlevler görüntüsü manuel olarak çalıştırılır.
Önemli
Bu yaklaşım desteklenmez. Otomatik ölçek kuralları yoktur ve işlev listeleme, anahtarlar ve çağırma sayıları gibi yaklaşan v2 platformu özelliklerini almaz.
Tavsiye: Azure Container Apps'te İşlevler v2'ye geçiş.
Önkoşullar
Taşımadan önce:
- Azure aboneliği ve kaynak oluşturma izni.
- [Azure CLI](/cli/azure/install-azure-cli-windows?view=azure-cli-latest) en son sürümü yüklü.
- Gerekli uzantılar:
az extension add --name containerapp,az extension add --name functionapp(varsa). - v1 dağıtımınız tarafından kullanılan kapsayıcı görüntüsüne erişim.
- Ortam değişkenlerinin, gizli dizilerin, depolama bağlamalarının ve ağ ayarlarının envanteri.
Geçiş prosedürü
1. Hazırlama
- Geçerli dağıtımınızın bir İşlevler v1 uygulaması olduğunu belirleyin.
- Ortam değişkenleri, gizli diziler, bağlantı dizeleri ve özel bağlamalar dahil olmak üzere tüm yapılandırma verilerini dışarı aktarın.
- Ortam kotalarını (CPU, bellek, maksimum örnekler) gözden geçirin ve gerekirse ayarlayın.
- Kayıt defterinizde görüntü kullanılabilirliğini onaylayın.
2. v2 uygulaması oluşturma
Azure Container Apps ortamı oluşturma veya yeniden kullanma.
Aynı görüntüye sahip yeni bir v2 kapsayıcı uygulaması dağıtın.
az containerapp create \ --name my-func-v2 \ --resource-group <RESOURCE_GROUP_NAME> \ --environment <ENVRONMENT_NAME> \ --image myregistry.azurecr.io/<IMAGE_NAME>:<TAG_NAME> \ --kind functionapp \ --ingress external --target-port <TARGET_PORT>Gizli diziler, ortam değişkenleri, kimlik, ağ gibi yapılandırma ayrıntılarını yeniden uygulayın.
Gerekirse kimlik doğrulamasını veya özel etki alanını etkinleştirin.
Ölçeklendirme kurallarını tanımlayın (HTTP, CPU, kuyruk tetikleyicisi bağıntısını uygun şekilde).
3. Doğrulama
HTTP ile tetiklenen işlevleri (curl veya tarayıcı) çağırma.
Her tetikleyici türünü test edin (Event Hubs, Service Bus, zamanlayıcı).
Application Insights telemetrisini ve Log Analytics günlüklerini onaylayın.
Yük altında ölçeklendirme davranışını kontrol edin (otomatik ölçeklendirme kuralları çalışıyor).
Gizli anahtarların ve bağlantı dizelerinin doğru çözüldüğünü doğrulayın.
Sağlık sondası durumu ve kapsayıcı revizyon ayrıntılarını onaylayın.
4. DNS veya özel etki alanlarını güncelleştirme (isteğe bağlı)
Özel bir etki alanı kullanıyorsanız, bunu yeni v2 ana bilgisayar adıyla (CNAME veya A kaydı) eşleyin.
SSL/TLS sertifikalarını yeniden bağlama (yönetilen veya karşıya yüklenen).
Alan adı çözümlemeyi ve TLS el sıkışmasını test edin.
Uç nokta değişikliklerini dahili olarak iletme.
5. Geçiş
Üretim trafiğini kaydırma (DNS TTL veya yönlendirme kurallarını güncelleştirme).
Gecikme süresini, hataları ve çağırma sayılarını izleyin.
Gerekirse ölçeklendirme parametrelerini ayarlayın (bekleme süresi, minimum/maksimum örnekler).
İlk birkaç saat içinde anomaliler için günlükleri izleyin.
6. Temizleme
Eski v1 İşlevleri uygulamasını ve ilgili kaynakları hizmet dışı bırakın.
Dikkat
Silme işleminden önce üretim trafiğinin hala v1 uç noktasını hedeflemiyor olduğunu doğrulayın.
Kullanılmayan gizli bilgileri veya depolama referanslarını kaldırın.
İç belgeleri ve operasyonel runbook'ları güncelleştirin.
Doğrulama denetim listesi
| Ürün | Geçme kriterleri |
|---|---|
| Tetikleyiciler çalışır | Yapılandırılan tüm tetikleyiciler başarıyla yürütülür |
| Günlükler ve telemetri | Application Insights çağrıları gösterir; gerçek zamanlı günlük akışı |
| Scaling | Örnek sayısı kural yapılandırmasına göre ayarlanır |
| Kimlik doğrulaması (etkinse) | Korumalı uç noktalar beklenen durum kodlarını döndürür |
| Etki alanları | Özel alan adı geçerli bir sertifikayla çözümlenir |
| Sırlar | Hassas değerler hatasız yüklenir |
operasyonel geliştirmeler (isteğe bağlı)
Geçiş sonrasında güvenilirliği artırın:
- Uyarı kuralları ekleme
- Otomatik ölçeklendirmeyi ayarlama
- Yönetilen kimlik kullanımını zorunlu kılma
- Gizli bilgileri merkezileştirme