Aracılığıyla paylaş


Hızlı Başlangıç: Azure CLI kullanarak Yönetilen DevOps Havuzu oluşturma

Bu makalede, Azure CLI kullanarak Yönetilen DevOps Havuzu oluşturma ve içinde işlem hattı çalıştırma adımları gösterilmektedir.

Önkoşullar

  • Yönetilen DevOps Havuzları önkoşulları

    Bu makaledeki adımları tamamlamadan önce, Önkoşullar makalesinde açıklandığı gibi Azure aboneliğinizi ve Azure DevOps kuruluşunuzu Yönetilen DevOps Havuzları ile kullanmak üzere yapılandırmış olmanız gerekir. Bu adımların Azure aboneliği ve Azure DevOps kuruluşu başına yalnızca bir kez tamamlanması gerekir.

  • Azure CLI önkoşulları

    • Yerel makinenizde Azure CLI komutlarını çalıştırmak istiyorsanız Azure CLI yükleme yönergelerine bakın. Azure CLI zaten yüklüyse, sürümünüzü denetlemek için komutunu çalıştırın az version . Yönetilen DevOps Havuzları için Azure CLI uzantısı için Azure CLI sürüm 2.57.0 veya üzeri gerekir. Azure CLI'nız 2.57.0'dan düşükse komutunu çalıştırın az upgrade. Daha fazla bilgi için bkz. Azure CLI'yi güncelleştirme.

    • Azure Cloud Shell'i tarayıcınız aracılığıyla kullanmak istiyorsanız Microsoft.CloudShell ad alanını kaydetmek için Azure Cloud Shell kısa ömürlü oturumlarını kullanmaya başlama başlığı altında yer alan yönergeleri izleyin. Ad alanını abonelik başına yalnızca bir kez kaydetmeniz gerekir.

      Aşağıdaki örneklerde bash kullanılır. Bu nedenle Azure Cloud Shell kullanıyorsanız Azure Cloud Shell'i başlatırken Bash'i seçin.

Azure CLI'da oturum açma

Bir komut istemi açın (Windows'da Windows Komut İstemi veya PowerShell kullanın) ve aşağıdaki komutları çalıştırın.

  1. Azure CLI'da oturum açın. Azure Cloud Shell kullanıyorsanız farklı bir hesap kullanmak istemediğiniz sürece çalıştırmanız az login gerekmez.

    az login
    
  2. Birden fazla Azure aboneliğiniz varsa varsayılan Azure aboneliğinizi ayarlayın.

    az account set --subscription "My subscription name"
    

    Aboneliklerinizin listesini almak için aşağıdaki komutu çalıştırabilirsiniz.

    az account list -o table
    

    Birden çok kiracınız varsa veya Azure CLI kullanarak Azure aboneliğiyle çalışma hakkında daha fazla bilgi edinmek istiyorsanız bkz . Azure CLI ile Azure aboneliklerini yönetme.

Ortam değişkenlerini tanımlama

  1. Bu hızlı başlangıçta kaynakların adlarını oluşturmak için aşağıdaki komutları çalıştırın. Bu örnekte bölge kullanılır EastUS2 . değerini istediğiniz bölgeyle değiştirin EastUS2 .

    export REGION=EastUS2
    export RANDOM_ID="$(openssl rand -hex 3)"
    export RESOURCE_GROUP_NAME="myManagedDevOpsPoolGroup$RANDOM_ID"
    export POOL_NAME="mdpPool$RANDOM_ID"
    export DEV_CENTER_NAME="mdpDevCenter$RANDOM_ID"
    export DEV_CENTER_PROJECT_NAME="mdpDevCenterProject$RANDOM_ID"
    
    # Echo the generated resource names
    echo $REGION
    echo $RESOURCE_GROUP_NAME
    echo $POOL_NAME
    echo $DEV_CENTER_NAME
    echo $DEV_CENTER_PROJECT_NAME
    

Kaynak grubu oluşturma

  1. Bu hızlı başlangıçta kullanılan kaynakları içerecek kaynak grubunu oluşturmak için aşağıdaki komutu çalıştırın.

    az group create --name $RESOURCE_GROUP_NAME --location $REGION
    

Geliştirme merkezi ve geliştirme merkezi projesi oluşturma

  1. Yüklü değilse Azure CLI devcenter uzantısını yükleyen ve zaten yüklüyse en son sürüme güncelleştiren aşağıdaki komutu çalıştırın.

    az extension add --name devcenter --upgrade
    
  2. Geliştirme merkezi ve geliştirme merkezi projesi oluşturmak için aşağıdaki komutları çalıştırın.

    # Create a dev center
    az devcenter admin devcenter create -n $DEV_CENTER_NAME \
        -g $RESOURCE_GROUP_NAME \
        -l $REGION
    
    # Save the id of the newly created dev center
    DEVCID=$( \
        az devcenter admin devcenter show -n $DEV_CENTER_NAME \
        -g $RESOURCE_GROUP_NAME \
        --query id -o tsv)
    
    # Create a dev center project
    az devcenter admin project create -n $DEV_CENTER_PROJECT_NAME \
        --description "My dev center project." \
        -g $RESOURCE_GROUP_NAME \
        -l $REGION \
        --dev-center-id $DEVCID
    
    # Save the dev center project for use when creating
    # the Managed DevOps Pool
    DEVCPID=$( \
        az devcenter admin project show -n $DEV_CENTER_PROJECT_NAME \
        -g $RESOURCE_GROUP_NAME \
        --query id -o tsv)
    

    Birkaç dakika sonra çıkış, Geliştirme merkezinin oluşturulduğunu gösterir. id Oluşturulan geliştirme merkezinin dosyası içinde DEVCID kaydedilir ve geliştirme merkezi projesini oluşturmak için kullanılır.

    {
        "devCenterUri": "https://...",
        "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.DevCenter/devcenters/devCenterName",
        "location": "eastus",
        "name": "devCenterName",
        "provisioningState": "Succeeded",
        "resourceGroup": "resourceGroupName",
        "systemData": { ... },
        "type": "microsoft.devcenter/devcenters"
    }
    

    Birkaç dakika sonra çıkış, geliştirme merkezi projesinin oluşturulduğunu gösterir. id Oluşturulan geliştirme merkezi projesinin değeri içinde DEVCPID kaydedilir ve sonraki bölümde Yönetilen DevOps Havuzu oluşturulurken kullanılır.

    {
      "description": "My dev center project.",
      "devCenterId": "...",
      "devCenterUri": "https://...",
      "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.DevCenter/projects/devCenterProjectName",
      "location": "eastus",
      "name": "devCenterProjectName",
      "provisioningState": "Succeeded",
      "resourceGroup": "resourceGroupName",
      "systemData": { ... },
      "type": "microsoft.devcenter/projects"
    }
    

Yönetilen DevOps Havuzu yapılandırma dosyalarını hazırlama

yöntemi, mdp pool create havuzun farklı yönlerini yapılandıran JSON değerlerini alan çeşitli parametrelere sahiptir.

  • agent-profile havuzun durum bilgisi olan mı yoksa durum bilgisi olmayan mı olduğunu belirtir ve hazır bekleyen aracı zamanlamasını içerir. İstediğiniz aracı yapılandırmasına bağlı olarak veya Statefuladlı Stateless tek bir anahtara sahip bir sözlüktür. Özellikler hakkında agent-profile daha fazla bilgi için bkz . Ölçeklendirmeyi yapılandırma.
  • fabric-profile aracı boyutunu, VM görüntülerini, işletim sistemi diskini ve bağlı depolama alanını belirtir. Özellikler hakkında fabric-profile daha fazla bilgi için bkz . Havuz ayarlarını yapılandırma ve Ek depolama alanı yapılandırma.
  • organization-profile , havuzu kullanabilen Azure DevOps kuruluşlarını ve projelerini belirtir. Ayarlar hakkında organization-profile daha fazla bilgi için bkz . Güvenlik ayarlarını yapılandırma - Kuruluş erişimini yapılandırma.

Aşağıdaki üç dosyayı oluşturun ve havuzu oluşturmak için Azure CLI komutlarını çalıştırmayı planladığınız klasöre kaydedin.

  1. aşağıdaki içeriklere sahip agent-profile.json adlı bir dosya oluşturun.

    {
      "Stateless": {}
    }
    

    Bu yapılandırma, havuzunuz için durum bilgisi olmayan bir aracı belirtir.

  2. aşağıdaki içeriklere sahip fabric-profile.json adlı bir dosya oluşturun.

    {
      "vmss": {
        "sku": {
          "name": "Standard_D2as_v5"
        },
        "images": [
          {
            "aliases": [
              "ubuntu-24.04"
            ],
            "buffer": "*",
            "wellKnownImageName": "ubuntu-24.04/latest"
          }
        ],
        "osProfile": {
          "secretsManagementSettings": {
            "observedCertificates": [],
            "keyExportable": false
          },
          "logonType": "Service"
        },
        "storageProfile": {
          "osDiskStorageAccountType": "Standard",
          "dataDisks": []
        }
      }
    }
    

    Bu yapılandırma, Standard_D2as_v5 görüntüsünü, ubuntu-24.04Azure Pipelines görüntüsünü ve ekli veri diski olmayan standart işletim sistemi disk türünü kullanan bir havuz belirtir.

  3. aşağıdaki içeriklere sahip organization-profile.json adlı bir dosya oluşturun. değerini Azure DevOps kuruluşunuzun adıyla değiştirin <organization-name> .

    {
      "AzureDevOps": {
        "organizations": [
          {
            "url": "https://dev.azure.com/<organization-name>",
            "projects": [],
            "parallelism": 1
          }
        ],
        "permissionProfile": {
          "kind": "CreatorOnly"
        }
      }
    }
    

    Bu yapılandırma, Azure DevOps kuruluşunuzdaki tüm projeler için kullanılabilen bir havuz belirtir.

Yönetilen DevOps Havuzu Oluşturma

  1. Yüklü değilse Azure CLI mdp uzantısını yükleyen ve zaten yüklüyse en son sürüme güncelleştiren aşağıdaki komutu çalıştırın.

     az extension add --name mdp --upgrade
    
  2. Aşağıdaki az mdp pool create komutunu çalıştırarak Yönetilen DevOps Havuzu oluşturun .

    az mdp pool create -n $POOL_NAME \
       -g $RESOURCE_GROUP_NAME \
       -l $REGION \
       --devcenter-project-id $DEVCPID \
       --maximum-concurrency 1 \
       --agent-profile agent-profile.json \
       --fabric-profile fabric-profile.json \
       --organization-profile organization-profile.json
    

    Aboneliğinizde havuzunuzu istenen Azure VM SKU'su ve maksimum aracı sayısıyla yapılandırma kapasitesi yoksa havuz oluşturma işlemi aşağıdaki iletiye benzer bir hatayla başarısız olur. Cores needed to complete this request is 2, which exceeds the current limit of 0 for SKU family standardDDSv4Family in region eastus. Please choose a different region if possible, or request additional quota at https://portal.azure.com/#view/Microsoft_Azure_Support/NewSupportRequestV3Blade/issueType/quota/subscriptionId/subscription_id_placeholder/topicId/3eadc5d3-b59a-3658-d8c6-9c729ba35b97. Sorunu çözmek için bkz. Yönetilen DevOps Havuzları kotalarını gözden geçirme.

Oluşturduğunuz havuzu Azure portalında görüntüleme

  1. Azure Portal’ında oturum açın.

  2. Yönetilen DevOps Havuzları'nı arayın ve kullanılabilir seçenekler arasından seçin.

  3. Listeden yeni Yönetilen DevOps Havuzunuzu seçin.

  4. Yönetilen DevOps Havuzları kaynağınızın JSON biçimini görmek için JSON Görünümü'nü seçin.

    Havuza genel bakış bölümünde JSON Görünümü düğmesinin ekran görüntüsü.

Azure DevOps'ta aracı havuzunu görüntüleme

  1. Azure DevOps portalına gidin ve Azure DevOps kuruluşunuzda (https://dev.azure.com/{your-organization} ) oturum açın.

  2. Azure DevOps gidin.

    Kuruluş ayarları düğmesinin ekran görüntüsü.

  3. Pipelines Aracısı havuzları'na >gidin ve yeni havuzunuzun listelendiğini doğrulayın. Yönetilen DevOps Havuzunu yeni oluşturduysanız, yeni havuzun aracılar listesinde görünmesi birkaç dakika sürebilir.

    Aracı havuzları listesinin ekran görüntüsü.

Yeni havuzunuzda işlem hattı çalıştırma

Bu adımda, bir Azure DevOps projesinin varsayılan deposunda basit bir işlem hattı oluşturacak ve bunu yeni Yönetilen DevOps Havuzunuzda çalıştıracağız.

  1. Azure DevOps portalına gidin ve Azure DevOps kuruluşunuzda (https://dev.azure.com/{your-organization} ) oturum açın.

  2. İşlem hattını çalıştırmak istediğiniz projeye gidin ve İşlem hatları'nı seçin.

    Projeler listesinin ekran görüntüsü.

  3. Yeni işlem hattı'nı (veya ilk işlem hattınızsa İşlem Hattı Oluştur'u) seçin.

    Yeni işlem hattı düğmesinin ekran görüntüsü.

  4. Azure Repos Git'i seçin.

    Depo türlerinin ekran görüntüsü.

  5. Projenizle aynı ada sahip depoyu seçin. Bu örnekte proje FabrikamFiber olarak adlandırıldığından aynı ada sahip depoyu seçiyoruz.

    FabrikamFiber deposunun ekran görüntüsü.

  6. Başlangıç işlem hattı'nı seçin.

    İşlem hattı şablon listesinin ekran görüntüsü.

  7. Başlangıç şablonu varsayılan olarak Microsoft tarafından barındırılan bir Linux aracısı kullanır. İşlem hattı şablonunu düzenleyin ve önceki adımlarda oluşturduğunuz havuza başvuracak şekilde bölümünü değiştirin pool .

    # Change these two lines as shown in the following example.
     pool:
      vmImage: ubuntu-latest
    

    Bu örnekte, Yönetilen DevOps Havuzları olarak adlandırılırfabrikam-managed-pool, bu nedenle değerini ile vmImage: ubuntu-latestdeğiştirin name: fabrikam-managed-pool ve Yönetilen DevOps Havuzunuzun adını belirtin.

    # Replace fabrikam-managed-pools with the name
    # of your Managed DevOps Pool.
    pool:
      name: fabrikam-managed-pool
    
  8. Kaydet ve çalıştır'ı seçin ve onaylamak için Kaydet ve ikinci kez çalıştır'ı seçin.

    Kaydet ve çalıştır düğmesinin ekran görüntüsü.

  9. Bu, bu havuzdaki ilk işlem hattı çalıştırmasıysa, işlem hattı çalıştırılmadan önce izinler vermeniz istenebilir. Daha fazla bilgi için Bu işlem hattının çalışmaya devam edebilmesi için bir kaynağa erişim izni gerekiyor bölümüne bakın.

  10. Azure DevOps'ta işlem hattı çalıştırmasını izleyin ve Azure portalına geçip Aracılar görünümünde çalışan aracıyı görebilirsiniz.

Kaynakları temizleme

Bu uygulamayı kullanmaya devam etmeyecekseniz kaynak grubunu, geliştirme merkezini, geliştirme merkezi projesini ve Yönetilen DevOps Havuzunu silin. Bu hızlı başlangıç, tüm kaynakları yeni bir kaynak grubunda oluşturduğundan, az group delete komutunu kullanarak kaynak grubunu ve tüm kaynaklarını silebilirsiniz.

az group delete -n $RESOURCE_GROUP_NAME

Ayrıca bkz.