Aracılığıyla paylaş


Yerel Azure sağlama

.NET .NET Aspire, ilgi çekici uygulama konak modeliyle yerel buluta özel uygulama geliştirmeyi basitleştirir. Bu model, uygulamanızı Azureile aynı yapılandırma ve hizmetlerle yerel olarak çalıştırmanızı sağlar. Bu makalede, .NET.NET Aspire uygulama konağıaracılığıyla yerel geliştirme ortamınızdan Azure kaynakları sağlamayı öğreneceksiniz.

Not

Açık olmak gerekirse, kaynaklar Azureiçinde sağlanır, ancak sağlama işlemi yerel geliştirme ortamınızdan başlatılır. Yerel geliştirme deneyiminizi iyileştirmek için, kullanılabilir olduğunda emülatör veya konteyner kullanmayı göz önünde bulundurun. Daha fazla bilgi için bkz. Tipik geliştirici deneyimi.

Gereksinimler

Bu makalede bir Azure hesabınız ve aboneliğiniz olduğu varsayılır. Azure hesabınız yoksa Azure Ücretsiz Hesapadresinden ücretsiz bir hesap oluşturabilirsiniz. Sağlama işlevinin düzgün çalışması için Azureile kimliğinizin doğrulanması gerekir. Azure Developer CLI yüklediğinizden emin olun. Ayrıca, sağlama mantığının sizin adınıza kaynak oluşturabilmesi için bazı yapılandırma değerleri sağlamanız gerekir.

Uygulama barındırma sağlama API'leri

Uygulama sunucusu, Azure kaynaklarını ifade etmek için bir dizi API sağlar. Bu API'ler, IDistributedApplicationBuilder arabirimini genişleten .NET AspireAzure barındırma kitaplıklarında uzantı yöntemleri olarak kullanılabilir. Uygulama konağınıza Azure kaynakları eklediğinizde, uygun sağlama işlevselliğini kendiliğinden eklerler. Başka bir deyişle, herhangi bir sağlama API'sini doğrudan çağırmanız gerekmez.

Uygulama konağı başlatıldığında aşağıdaki sağlama mantığı yürütülür:

  1. Azure yapılandırma bölümü doğrulanır.
  2. Geçersiz olduğunda, pano ve uygulama sunucusu çıktısı, eksik olanlarla ilgili ipuçları sağlar. Daha fazla bilgi için bkz. eksik yapılandırma değeri ipuçları.
  3. Koşullu olarak geçerli Azure kaynakları sağlandığında:
    1. Eğer belirli bir kaynak için Azure dağıtımı mevcut değilse, bu dağıtım olarak oluşturulup yapılandırılır.
    2. Söz konusu dağıtımın yapılandırması, yalnızca gerektiğinde kaynak sağlanmasını desteklemek için bir araç olarak bir sağlama toplamıyla belirlenir.

Mevcut Azure kaynaklarını kullanma

Uygulama ana bilgisayarı, Azure kaynaklarının sağlanmasını otomatik olarak yönetir. Uygulama konağı ilk kez çalıştırıldığında, uygulama ana bilgisayarında belirtilen kaynakları sağlar. Sonraki çalıştırmalar, uygulama ana bilgisayarı yapılandırması değişmediği sürece kaynakları yeniden sağlamaz.

Uygulama konağı dışında Azure kaynakları önceden sağladıysanız ve kullanmak istiyorsanız, bağlantı dizesini aşağıdaki Azure Key Vault örnekte gösterildiği gibi AddConnectionString API'si ile sağlayabilirsiniz:

// Service registration
var secrets = builder.ExecutionContext.IsPublishMode
    ? builder.AddAzureKeyVault("secrets")
    : builder.AddConnectionString("secrets");

// Service consumption
builder.AddProject<Projects.ExampleProject>()
       .WithReference(secrets)

Yukarıdaki kod parçacığı, uygulama konağına nasıl Azure Key Vault ekleneceğini gösterir. AddAzureKeyVault API'si, Azure Key Vault uygulama konağına eklemek için kullanılır. AddConnectionString API'si, uygulama konağına bağlantı dizesi sağlamak için kullanılır.

Alternatif olarak, bazı Azure kaynaklarını RunAsEmulator API'si ile öykünücü olarak çalıştırmaya karar verebilirsiniz. Bu API, Azure Cosmos DB ve Azure Depolama tümleştirmeleri için kullanılabilir. Örneğin, AzureAzure Cosmos DB öykünücü olarak çalıştırmak için aşağıdaki kod parçacığını kullanabilirsiniz:

var cosmos = builder.AddAzureCosmosDB("cosmos")
                    .RunAsEmulator();

RunAsEmulator API, NoSQL API ile birlikte Azure Cosmos DB öykünücüsü kullanılarak Azure Cosmos DB kaynağını öykünmek için yapılandırır.

.NET Aspire Azure barındırma tümleştirmeleri

Uygulama ana bilgisayarınızda Azure kaynakları kullanıyorsanız, .NET AspireAzurebarındırma entegrasyonlarından bir veya daha fazlasını kullanıyorsunuz. Bu barındırma kitaplıkları, uygulama konağınıza Azure kaynakları eklemek için IDistributedApplicationBuilder arabirimine uzantı yöntemleri sağlar.

Konfigürasyon

Yerel geliştirme ortamınızda Azure kaynakları kullanırken gerekli yapılandırma değerlerini sağlamanız gerekir. Yapılandırma değerleri Azure bölümü altında belirtilir:

  • SubscriptionId: Azure abonelik kimliği.
  • AllowResourceGroupCreation: Yeni bir kaynak grubu oluşturulup oluşturulmayacağını gösteren boole değeri.
  • ResourceGroup: Kullanılacak kaynak grubunun adı.
  • Location: Azure bölgesi kullanılacak.

Aşağıdaki örnek appsettings.json yapılandırmayı göz önünde bulundurun:

{
  "Azure": {
    "SubscriptionId": "<Your subscription id>",
    "AllowResourceGroupCreation": true,
    "ResourceGroup": "<Valid resource group name>",
    "Location": "<Valid Azure location>"
  }
}

Önemli

Bu değerlerin uygulama sırları olarak depolanması önerilir. Daha fazla bilgi için bkz. Uygulama gizli bilgilerini yönetme.

Gerekli değerleri yapılandırdıktan sonra, yerel geliştirme ortamınızda Azure kaynakları sağlamaya başlayabilirsiniz.

Azure sağlama kimlik bilgisi deposu

.NET Aspire uygulama konağı, Azure kaynak kimlik doğrulaması ve yetkilendirmesi için bir kimlik bilgisi deposu kullanır. Abonelik türünüze bağlı olarak, çoğul kullanıcı senaryoları için doğru kimlik bilgisi deposu gerekebilir.

📦 Aspire.Hosting. NuGet paketi yüklüyse veAzure uygulamanızın ana bilgisayarı Azure kaynaklara bağlıysa, varsayılan Azure kimlik bilgisi deposu da DefaultAzureCredentialkullanır. Bu davranışı değiştirmek için, aşağıdaki örnekte gösterildiği gibi appsettings.json dosyasında kimlik bilgisi deposu değerini ayarlayabilirsiniz:

{
  "Azure": {
    "CredentialSource": "AzureCli"
  }
}

tüm yapılandırma tabanlı ayarlarda olduğu gibi, bunları kullanıcı gizli dizileri veyaortam değişkenleri gibi alternatif sağlayıcılarla yapılandırabilirsiniz. Azure:CredentialSource değeri aşağıdaki değerlerden birine ayarlanabilir:

Bahşiş

Daha fazla bilgi için ile ilgili SDK kimlik doğrulaması ve yetkilendirmesi hakkında, Kimlik kitaplığındaki kimlik bilgileri zincirlerine bakın.

Araç desteği

Visual Studio'de, varsayılan Azure sağlama ayarlarını yapılandırmak için Bağlı Hizmetler'i kullanabilirsiniz. Uygulama ana bilgisayar projesini seçin, Bağlı Hizmetler düğümüne sağ tıklayın ve Azure Kaynak Sağlama Ayarlarıöğesini seçin:

Visual Studio 2022: .NET Aspire Uygulama Ana Bilgisayarı projesi, Bağlı Hizmetler bağlam menüsü.

Bu, aşağıdaki ekran görüntüsünde gösterildiği gibi Azure sağlama ayarlarını yapılandırabileceğiniz bir iletişim kutusu açar:

Visual Studio 2022: Kaynak Sağlama Ayarları diyalogu Azure.

Eksik yapılandırma değeri ipuçları

Azure yapılandırma bölümü eksikse, eksik değerlere sahipse veya geçersizse, .NET.NET Aspire panosu yararlı ipuçları sağlar. Örneğin, bir Azure Key Vault kaynağı kullanmaya çalışan, ancak SubscriptionId yapılandırma değeri eksik olan bir uygulama konağını düşünün. Kaynaklar sayfası, DurumuEksik abonelik yapılandırmasıolarak gösterir:

.NET.NET Aspire panosu: Abonelik yapılandırması eksik.

Ayrıca, konsolunun günlükleri bu bilgileri de gösterir, aşağıdaki ekran görüntüsünü göz önünde bulundurun:

.NET.NET Aspire panosu: Konsol logları, abonelik yapılandırması eksik.

Bilinen sınırlamalar

Azure kaynakları bu şekilde sağladıktan sonra, .NET AspireAzure kaynakları silmek için yerleşik bir mekanizma sağlamadığından Azure portalındaki kaynakları el ile temizlemeniz gerekir. Bunu yapmanın en kolay yolu, yapılandırılan kaynak grubunu silmektir. Bu işlem Azure portal veya Azure CLI kullanılarak yapılabilir:

az group delete --name <ResourceGroupName>

<ResourceGroupName> değerini silmek istediğiniz kaynak grubunun adıyla değiştirin. Daha fazla bilgi için bkz. az group delete.