Dış Azure Container Apps ortamına sanal ağ sağlama

Aşağıdaki örnekte, mevcut bir sanal ağda Bir Container Apps ortamının nasıl oluşturulacağı gösterilmektedir.

Azure portalında oturum açarak başlayın.

Kapsayıcı uygulaması oluşturma

Kapsayıcı uygulamanızı oluşturmak için Azure portalı giriş sayfasından başlayın.

  1. Üst arama çubuğunda Container Apps'i arayın.
  2. Arama sonuçlarında Kapsayıcı Uygulamaları'nı seçin.
  3. Oluştur düğmesini seçin.

Temel Bilgiler sekmesi

Temel Bilgiler sekmesinde aşağıdaki eylemleri gerçekleştirin.

  1. Proje ayrıntıları bölümüne aşağıdaki değerleri girin.

    Ayar Eylem
    Abonelik Azure aboneliği seçin.
    Kaynak grubu Yeni oluştur'u seçin ve my-container-apps girin.
    Kapsayıcı uygulama adı my-container-app girin.

Ortam oluşturun

Ardından kapsayıcı uygulamanız için bir ortam oluşturun.

  1. Uygun bölgeyi seçin.

    Ayar Value
    Bölge Orta ABD'yi seçin.
  2. Container Apps ortamı oluştur alanında Yeni oluştur bağlantısını seçin.

  3. Temel Bilgiler sekmesindeki Container Apps Ortamı Oluştur sayfasında aşağıdaki değerleri girin:

    Ayar Value
    Ortam adı My-environment girin.
    Ortam türü Yalnızca tüketim'i seçin.
    Bölge yedekliliği Devre dışı öğesini seçin
  4. Log Analytics çalışma alanı oluşturmak için İzleme sekmesini seçin.

  5. Günlük hedefi olarak Azure Log Analytics'i seçin.

  6. Log Analytics çalışma alanında Yeni oluştur bağlantısını seçin ve aşağıdaki değerleri girin.

    Ayar Değer
    Veri Akışı Adı my-container-apps-logs girin.

    Konum alanı sizin için Orta ABD ile önceden doldurulmuş.

  7. Tamam'ı seçin.

Not

Mevcut bir sanal ağı kullanabilirsiniz, ancak yalnızca Tüketim Mimarisi kullanılırken Kapsayıcı Uygulamaları ile kullanmak için CIDR aralığına /23 sahip veya daha büyük bir ayrılmış alt ağ gereklidir. İş yükü profilleri ortamı kullanılırken veya daha büyük bir /27 ortam gereklidir. Alt ağ boyutlandırma hakkında daha fazla bilgi edinmek için bkz. Ağ mimarisine genel bakış.

  1. Sanal ağ oluşturmak için Ağ sekmesini seçin.

  2. Kendi sanal ağınızı kullanın seçeneğinin yanındaki Evet'i seçin.

  3. Sanal ağ kutusunun yanındaki Yeni oluştur bağlantısını seçin ve aşağıdaki değeri girin.

    Ayar Değer
    Veri Akışı Adı My-custom-vnet girin.
  4. Tamam düğmesini seçin.

  5. Altyapı alt ağı kutusunun yanında Yeni oluştur bağlantısını seçin ve aşağıdaki değerleri girin:

    Ayar Value
    Alt Ağ Adı Altyapı-alt ağ girin.
    Sanal Ağ Adres Bloğu Varsayılan değerleri koruyun.
    Alt Ağ Adres Bloğu Varsayılan değerleri koruyun.
  6. Tamam düğmesini seçin.

  7. Sanal IP'nin altında Dış'ı seçin.

  8. Oluştur'u belirleyin.

Kapsayıcı uygulamasını dağıtma

  1. Sayfanın en altında Gözden geçir ve oluştur'u seçin.

    Hata bulunmazsa Oluştur düğmesi etkinleştirilir.

    Hatalar varsa, hata içeren tüm sekmeler kırmızı noktayla işaretlenir. Uygun sekmeye gidin. Hata içeren alanlar kırmızı renkle vurgulanır. Tüm hatalar düzeltildikten sonra Gözden geçir'i seçin ve yeniden oluşturun .

  2. Oluştur'u belirleyin.

    Dağıtım devam ediyor iletisini içeren bir sayfa görüntülenir. Dağıtım başarıyla tamamlandıktan sonra şu iletiyi görürsünüz: Dağıtımınız tamamlandı.

Önkoşullar

Ayarlama

Başlamak için Azure'da oturum açın. Aşağıdaki komutu çalıştırın ve kimlik doğrulama işlemini tamamlamak için istemleri izleyin.

az login

Ardından CLI için Azure Container Apps uzantısını yükleyin.

az extension add --name containerapp --upgrade

Geçerli uzantı veya modül yüklendikten sonra ad alanını Microsoft.App kaydedin.

Not

Azure Container Apps kaynakları ad alanından Microsoft.Web ad alanına Microsoft.App geçirildi. Daha fazla ayrıntı için Microsoft.Web'den Mart 2022'de Microsoft.App ad alanı geçişi bölümüne bakın.

az provider register --namespace Microsoft.App

Daha önce kullanmadıysanız sağlayıcıyı Microsoft.OperationalInsights Azure İzleyici Log Analytics çalışma alanına kaydedin.

az provider register --namespace Microsoft.OperationalInsights

Ardından aşağıdaki ortam değişkenlerini ayarlayın:

RESOURCE_GROUP="my-container-apps"
LOCATION="canadacentral"
CONTAINERAPPS_ENVIRONMENT="my-environment"

Bu değişkenler tanımlandığında, yeni kapsayıcı uygulamanızla ilgili hizmetleri düzenlemek için bir kaynak grubu oluşturabilirsiniz.

az group create \
  --name $RESOURCE_GROUP \
  --location $LOCATION

CLI yükseltildi ve yeni bir kaynak grubu kullanıma sunuldu. Bir Container Apps ortamı oluşturabilir ve kapsayıcı uygulamanızı dağıtabilirsiniz.

Ortam oluşturun

Azure Container Apps'teki bir ortam, bir grup kapsayıcı uygulaması çevresinde güvenli bir sınır oluşturur. Aynı ortama dağıtılan Container Apps aynı sanal ağa dağıtılır ve günlükleri aynı Log Analytics çalışma alanına yazar.

Sağlayıcıyı Microsoft.ContainerService kaydedin.

az provider register --namespace Microsoft.ContainerService

Sanal ağ adını tutmak için bir değişken bildirin.

VNET_NAME="my-custom-vnet"

Şimdi Container Apps ortamıyla ilişkilendirmek için bir Azure sanal ağı oluşturun. Sanal ağın ortam dağıtımı için kullanılabilir bir alt ağı olmalıdır.

Not

Ağ alt ağ adresi ön eki, Yalnızca Tüketim Mimarisi kullanılırken Container Apps ile kullanmak için en düşük CIDR aralığını /23 gerektirir. İş Yükü Profilleri Mimarisi kullanılırken bir veya daha büyük olması /27 gerekir. Alt ağ boyutlandırma hakkında daha fazla bilgi edinmek için bkz. Ağ mimarisine genel bakış.

az network vnet create \
  --resource-group $RESOURCE_GROUP \
  --name $VNET_NAME \
  --location $LOCATION \
  --address-prefix 10.0.0.0/16
az network vnet subnet create \
  --resource-group $RESOURCE_GROUP \
  --vnet-name $VNET_NAME \
  --name infrastructure-subnet \
  --address-prefixes 10.0.0.0/21

Oluşturulan sanal ağ ile altyapı alt ağının kimliğini alabilirsiniz.

INFRASTRUCTURE_SUBNET=`az network vnet subnet show --resource-group ${RESOURCE_GROUP} --vnet-name $VNET_NAME --name infrastructure-subnet --query "id" -o tsv | tr -d '[:space:]'`

Son olarak, önceki adımlarda dağıtılan özel sanal ağı kullanarak Container Apps ortamını oluşturun.

az containerapp env create \
  --name $CONTAINERAPPS_ENVIRONMENT \
  --resource-group $RESOURCE_GROUP \
  --location "$LOCATION" \
  --infrastructure-subnet-resource-id $INFRASTRUCTURE_SUBNET

Aşağıdaki tabloda içinde containerapp env createkullanılan parametreler açıklanmaktadır.

Parametre Açıklama
name Container Apps ortamının adı.
resource-group Kaynak grubunun adı.
location Ortamın dağıtılacağı Azure konumu.
infrastructure-subnet-resource-id Altyapı bileşenleri ve kullanıcı uygulaması kapsayıcıları için bir alt ağın kaynak kimliği.

Ortamınız özel bir sanal ağ kullanılarak oluşturulduktan sonra artık kapsayıcı uygulamalarını ortama dağıtabilirsiniz.

İsteğe bağlı yapılandırma

Özel DNS dağıtma ve Container Apps ortamınız için özel ağ IP aralıkları tanımlama seçeneğiniz vardır.

Özel DNS ile dağıtma

Kapsayıcı uygulamanızı özel bir DNS ile dağıtmak istiyorsanız aşağıdaki komutları çalıştırın.

İlk olarak, ortamdan tanımlanabilir bilgileri ayıklayın.

ENVIRONMENT_DEFAULT_DOMAIN=`az containerapp env show --name ${CONTAINERAPPS_ENVIRONMENT} --resource-group ${RESOURCE_GROUP} --query properties.defaultDomain --out json | tr -d '"'`
ENVIRONMENT_STATIC_IP=`az containerapp env show --name ${CONTAINERAPPS_ENVIRONMENT} --resource-group ${RESOURCE_GROUP} --query properties.staticIp --out json | tr -d '"'`
VNET_ID=`az network vnet show --resource-group ${RESOURCE_GROUP} --name ${VNET_NAME} --query id --out json | tr -d '"'`

Ardından özel DNS'yi ayarlayın.

az network private-dns zone create \
  --resource-group $RESOURCE_GROUP \
  --name $ENVIRONMENT_DEFAULT_DOMAIN
az network private-dns link vnet create \
  --resource-group $RESOURCE_GROUP \
  --name $VNET_NAME \
  --virtual-network $VNET_ID \
  --zone-name $ENVIRONMENT_DEFAULT_DOMAIN -e true
az network private-dns record-set a add-record \
  --resource-group $RESOURCE_GROUP \
  --record-set-name "*" \
  --ipv4-address $ENVIRONMENT_STATIC_IP \
  --zone-name $ENVIRONMENT_DEFAULT_DOMAIN

Ağ parametreleri

çağrısı containerapp env createyaparken tanımlamayı seçebileceğiniz üç isteğe bağlı ağ parametresi vardır. Ayrı adres aralıklarına sahip eşlenmiş bir sanal ağınız olduğunda bu seçenekleri kullanın. Bu aralıkların açıkça yapılandırılması, Container Apps ortamı tarafından kullanılan adreslerin ağ altyapısındaki diğer aralıklarla çakışmamasını sağlar.

Bu özelliklerin üçü için de değer sağlamanız veya hiçbirini sağlamamalısınız. Sağlanmamışsa, değerler sizin için oluşturulur.

Parametre Açıklama
platform-reserved-cidr Ortam altyapısı hizmetleri için dahili olarak kullanılan adres aralığı. Yalnızca tüketim mimarisi kullanılırken ve /12 arasında /23 bir boyuta sahip olmalıdır
platform-reserved-dns-ip İç DNS sunucusu için kullanılan aralıktan bir platform-reserved-cidr IP adresi. Adres, aralıktaki ilk adres veya ağ adresi olamaz. Örneğin, olarak ayarlanırsa platform-reserved-cidr10.2.0.0/16platform-reserved-dns-ip (ağ adresi) veya 10.2.0.1 (altyapı bu IP'nin kullanımını ayırır) olamaz.10.2.0.0 Bu durumda, DNS 10.2.0.2için ilk kullanılabilir IP olacaktır.
docker-bridge-cidr Docker köprü ağına atanan adres aralığı. Bu aralığın ve /12arasında /28 bir boyutu olmalıdır.
  • platform-reserved-cidr ve docker-bridge-cidr adres aralıkları birbiriyle veya sağlanan alt ağ aralıklarıyla çakışamaz. Ayrıca, bu aralıkların VNET'teki diğer adres aralıklarıyla çakışmadığından emin olun.

  • Bu özellikler sağlanmamışsa, CLI aralık çakışmalarını önlemek için aralık değerlerini sanal ağın adres aralığına göre otomatik olarak oluşturur.

Kaynakları temizleme

Bu uygulamayı kullanmaya devam etmeyecekseniz my-container-apps kaynak grubunu kaldırabilirsiniz. Bu işlem Azure Container Apps örneğini ve ilişkili tüm hizmetleri siler. Ayrıca, Container Apps hizmetinin otomatik olarak oluşturduğu ve özel ağ bileşenlerini içeren kaynak grubunu da siler.

Dikkat

Aşağıdaki komut, belirtilen kaynak grubunu ve içindeki tüm kaynakları siler. Belirtilen kaynak grubunda bu kılavuzun kapsamı dışındaki kaynaklar varsa, bunlar da silinir.

az group delete --name $RESOURCE_GROUP

Sonraki adımlar