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.
Bu makalede, önceden yapılandırılmış otomatik ölçeklendirme kurallarıyla birlikte Azure Container Apps'te Bir Azure İşlevleri uygulamasının nasıl oluşturulacağı gösterilmektedir.
Önkoşullar
| Kaynak | Açıklama |
|---|---|
| Azure hesabı | Aktif bir aboneliğe sahip bir Azure hesabı. Eğer bir hesabınız yoksa ücretsiz olarak bir tane oluşturabilirsiniz. |
| Azure Depolama hesabı | Azure İşlevlerinizin durumunu depolamak için bir blob depolama hesabı . |
| Azure Application Insights | Kapsayıcı uygulamanız hakkında veri toplamak için Azure Application Insights örneği. |
İşlevler uygulaması oluşturma
Aşağıdaki adımlarda, kapsayıcı uygulamanızı oluşturmak için örnek bir kapsayıcı görüntüsünün nasıl kullanılacağı gösterilmektedir. Bu yordamı özel bir kapsayıcı görüntüsüyle kullanmak istiyorsanız bkz. Azure Container Apps'te ilk işlev uygulamanızı oluşturma.
Azure portalına gidin ve arama çubuğunda Container Apps araması yapın.
Container Apps'i seçin.
Oluştur'i seçin.
Kapsayıcı Uygulaması'nı seçin.
Temel Bilgiler bölümünde aşağıdaki değerleri girin.
Proje detaylarıaltında:
Mülkiyet Değer Abonelik Azure aboneliğinizi seçin. Kaynak grubu Yeni kaynak grubu oluştur'u seçin, my-aca-functions-group olarak adlandırıp Tamam'ı seçin. Kapsayıcı uygulama adı my-aca-functions-app girin. Azure İşlevleri için en iyi duruma getir'in yanında onay kutusunu işaretleyin.
Container Apps ortamı'nın altında şunu girin:
Mülkiyet Değer Bölge Size en yakın bölgeyi seçin. Container Apps ortamı Yeni ortam oluştur'u seçin. Ortam kurulum penceresine şunu girin:
Mülkiyet Değer Ortam adı Girin my-aca-functions-environment Bölge yedekliliği Devre dışı öğesini seçin. Değerlerinizi kaydetmek için Oluştur'u seçin.
Kapsayıcı bölümüne geçmek için İleri: Kapsayıcı'ya tıklayın.
Hızlı başlangıç görüntüsünü kullan'ın yanında, bu kutuyu işaretsiz bırakın.
Kapsayıcı ayrıntıları bölümünün altında aşağıdaki değerleri girin.
Mülkiyet Değer İsim Bu kutu, önceki bölümdeki seçiminizle önceden doldurulmuş. Görüntü kaynağı Docker Hub'ı veya diğer kayıt defterlerini seçin Abonelik Aboneliğinizi seçin. Görüntü türü Genel’i seçin. Kayıt defteri oturum açma sunucusu mcr.microsoft.com girin Resim ve etiket k8se/quickstart-functions:latest girin Ortam değişkenleri'nin altında aşağıdaki değişkenlerin değerlerini girin:
AzureWebJobsStorage-
APPINSIGHTS_INSTRUMENTATIONKEYveyaAPPLICATIONINSIGHTS_CONNECTION_STRING
Bu değişkenler için yönetilen kimlik veya bağlantı dizesi değerlerini girin. Yönetilen kimlik kullanın.
AzureWebJobsStoragedeğişkeni, Azure İşlevleri için gerekli bir Azure Depolama hesabı bağlantı dizesidir. Bu depolama hesabı işlev yürütme günlüklerini depolar, tetikleyicileri ve bağlamaları yönetir ve dayanıklı işlevlerin durumunu korur.Application Insights, Azure İşlevlerinizin performansı ve kullanımı hakkında içgörüler sağlayan bir izleme ve tanılama hizmetidir. Bu izleme, istek oranlarını, yanıt sürelerini, hata oranlarını ve diğer ölçümleri izlemenize yardımcı olur.
Giriş bölümüne geçmek için Sonraki > Giriş'i seçin ve aşağıdaki değerleri girin.
Mülkiyet Değer Giriş Girişi etkinleştirmek için Etkin onay kutusunu seçin. Giriş trafiği Her yerden trafik kabul etme'yi seçin. Giriş türü HTTP'yi seçin. Hedef bağlantı noktası 80 girin. Gözden geçir + Oluştur’u seçin.
Oluştur'i seçin.
Dağıtım tamamlandıktan sonra Kaynağa git seçeneğini seçin.
Genel Bakış sayfasında Uygulama URL'sinin yanındaki bağlantıyı seçerek uygulamayı yeni bir tarayıcı sekmesinde açın.
URL'nin sonuna
/api/HttpExampleekleyin.Tarayıcıda "HTTP tetikleyici işlevi bir isteği işledi" iletisinin döndürülür.
Önkoşullar
- Aktif bir aboneliğe sahip bir Azure hesabı.
- Azure hesabınız yoksa ücretsiz olarak bir hesap oluşturabilirsiniz.
- Azure CLI yüklü.
İşlevler uygulaması oluşturma
CLI'dan Azure'da oturum açmak için aşağıdaki komutu çalıştırın ve istemleri izleyerek kimlik doğrulama işlemini tamamlayın.
Azure'da oturum açın.
az loginCLI'nın en son sürümünü çalıştırdığınızdan emin olmak için yükseltme komutunu çalıştırın.
az upgradeCLI için Azure Container Apps uzantısını yükleyin veya güncelleştirin.
Azure CLI'da komutları veya PowerShell'deki modülden
az containerappcmdlet'leri çalıştırdığınızdaAz.Appeksik parametrelerle ilgili hatalar alırsanız, Azure Container Apps uzantısının en son sürümünün yüklü olduğundan emin olun.az extension add --name containerapp --allow-preview true --upgradeGeçerli uzantı veya modül yüklendikten sonra,
Microsoft.AppveMicrosoft.OperationalInsightsad alanlarını kaydedin.az provider register --namespace Microsoft.Appaz provider register --namespace Microsoft.OperationalInsightsOrtam değişkenleri oluşturma.
RESOURCE_GROUP_NAME="my-aca-functions-group" CONTAINER_APP_NAME="my-aca-functions-app" ENVIRONMENT_NAME="my-aca-functions-environment" LOCATION="westus" STORAGE_ACCOUNT_NAME="storage-account-name" STORAGE_ACCOUNT_SKU="storage-account-sku" APPLICATION_INSIGHTS_NAME="application-insights-name"Bir kaynak grubu oluşturun.
az group create \ --name $RESOURCE_GROUP_NAME \ --location $LOCATION \ --output noneContainer Apps ortamını oluşturun.
az containerapp env create \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP_NAME \ --location $LOCATION \ --output noneDepolama Hesabı Oluşturma
az storage account create \ --name $STORAGE_ACCOUNT_NAME \ --resource-group $RESOURCE_GROUP \ --location $LOCATION \ --sku $STORAGE_ACCOUNT_SKUDepolama Hesabı Bağlantı Dizesi Alma
$STORAGE_ACCOUNT_CONNECTION_STRING = az storage account show-connection-string \ --name $STORAGE_ACCOUNT_NAME \ --resource-group $RESOURCE_GROUP \ --query connectionString \ --output tsvAzure Applications Insights oluşturma
az monitor app-insights component create \ --app $APPLICATION_INSIGHTS_NAME \ --location $LOCATION \ --resource-group $RESOURCE_GROUP \ --application-type webApplication Insights Bağlantı dizesini al
$APPLICATION_INSIGHTS_CONNECTION_STRING = az monitor app-insights component show \ --app $APPLICATION_INSIGHTS_NAME \ --resource-group $RESOURCE_GROUP \ --query connectionString \ --output tsvAzure İşlevleri kapsayıcı uygulaması oluşturma.
az containerapp create \ --resource-group $RESOURCE_GROUP_NAME \ --name $CONTAINER_APP_NAME \ --environment $ENVIRONMENT_NAME \ --image mcr.microsoft.com/azure-functions/dotnet8-quickstart-demo:1.0 \ --ingress external \ --target-port 80 \ --kind functionapp \ --query properties.outputs.fqdnBu komut İşlevler uygulamanızın URL'sini döndürür. Bu URL'yi kopyalayın ve bir web tarayıcısına yapıştırın.
Çoklu revizyon senaryosuyla
--revisions-mode multiplebir Azure İşlevleri kapsayıcı uygulaması oluşturmaaz containerapp create \ --name $CONTAINERAPP_NAME \ --resource-group $RESOURCE_GROUP \ --environment $CONTAINERAPPS_ENVIRONMENT \ --image mcr.microsoft.com/azure-functions/dotnet8-quickstart-demo:1.0 \ --target-port 80 \ --ingress external \ --kind functionapp \ --workload-profile-name $WORKLOAD_PROFILE_NAME \ --env-vars AzureWebJobsStorage="$STORAGE_ACCOUNT_CONNECTION_STRING" APPLICATIONINSIGHTS_CONNECTION_STRING="$APPLICATION_INSIGHTS_CONNECTION_STRING"Çoklu revizyon senaryosu için containerapp'i yükseltin ve trafiği bölüştürün.
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $CONTAINERAPP_NAME \ --image mcr.microsoft.com/azure-functions/dotnet8-quickstart-demo:latest az containerapp ingress traffic set -resource-group \ --name $CONTAINERAPP_NAME \ --resource-group $RESOURCE_GROUP \ --revision-weight {revision1_name}=50 \ --revision-weight {revision2_name}=50URL'nin sonuna
/api/HttpExampleekleyin.Tarayıcıda "HTTP tetikleyici işlevi bir isteği işledi" iletisinin döndürülür.