Bagikan melalui


Mengelola sumber daya VM di lingkungan

Layanan Azure DevOps | Azure DevOps Server 2022 | Azure DevOps Server 2020

Artikel ini menjelaskan cara menggunakan sumber daya komputer virtual (VM) di lingkungan untuk mengelola penyebaran Azure Pipelines di beberapa komputer. Anda juga dapat menginstal agen di server Anda sendiri untuk penyebaran bergulir.

Sumber daya VM dapat ada di lingkungan, seperti Pengembangan, Pengujian, atau Produksi. Setelah menentukan lingkungan, Anda dapat menambahkan VM ke target dengan penyebaran. Riwayat penyebaran lingkungan memberikan keterlacakan dari setiap VM ke alur Anda.

Prasyarat

  • Akses ke repositori sumber yang tersambung ke alur Anda.
  • Akses dan izin untuk mengunduh dan menjalankan skrip yang dapat dieksekusi pada VM yang ingin Anda sambungkan ke lingkungan.
  • Izin Administrator Proyek atau Administrator Build di proyek Azure DevOps yang berisi lingkungan. Untuk informasi selengkapnya, lihat Sumber daya keamanan alur.
  • Peran administrator untuk kumpulan penyebaran, atau sekumpulan server target yang tersedia untuk organisasi. Untuk informasi selengkapnya, lihat kumpulan penyebaran dan izin lingkungan.

Catatan

Untuk mengonfigurasi agen grup penyebaran, atau jika Anda melihat kesalahan saat mendaftarkan sumber daya lingkungan VM, pastikan Anda mengatur cakupan token akses pribadi (PAT) ke Semua organisasi yang dapat diakses.

Buat lingkungan

Gunakan prosedur berikut untuk menambahkan sumber daya VM ke lingkungan. Anda dapat menggunakan proses yang sama untuk menyiapkan komputer fisik.

Menambahkan sumber daya VM

  1. Di proyek Azure DevOps Anda, buka Lingkungan Alur>lalu pilih Buat lingkungan atau Lingkungan baru.

  2. Pada layar Lingkungan baru pertama, tambahkan Nama dan Deskripsi opsional.

  3. Di bawah Sumber Daya, pilih Komputer virtual, lalu pilih Berikutnya.

    Cuplikan layar yang memperlihatkan penambahan lingkungan.

Menyalin skrip pendaftaran

Skrip agen untuk sumber daya VM seperti skrip untuk agen yang dihost sendiri, dan menggunakan perintah yang sama. Skrip mencakup Token Akses Pribadi (PAT) Azure DevOps untuk pengguna yang masuk, yang kedaluwarsa tiga jam setelah skrip dibuat.

  1. Pada layar Lingkungan baru berikutnya, pilih Linux di bawah Sistem operasi.

  2. Salin skrip pendaftaran Linux.

    Cuplikan layar yang memperlihatkan penambahan komputer virtual.

Skrip ini sama untuk semua VM Linux yang ditambahkan ke lingkungan. Untuk informasi selengkapnya tentang menginstal skrip agen, lihat Agen Linux yang dihost sendiri.

Jalankan skrip yang disalin

  1. Pilih Tutup, dan perhatikan bahwa lingkungan baru dibuat. Untuk menyalin skrip lagi, misalnya jika PAT Anda kedaluwarsa, pilih Tambahkan sumber daya.

    Cuplikan layar pesan lingkungan baru yang dibuat.

  2. Jalankan skrip yang disalin pada setiap VM target yang ingin Anda daftarkan dengan lingkungan.

    Catatan

    Jika VM sudah memiliki agen lain yang berjalan di atasnya, berikan nama unik bagi agen untuk mendaftar dengan lingkungan.

Setelah VM terdaftar, VM muncul sebagai sumber daya di bawah tab Sumber Daya lingkungan.

Cuplikan layar tab Sumber Daya.

Menggunakan VM dalam alur

Dalam alur YAML, Anda dapat menargetkan VM dengan mereferensikan lingkungannya. Secara default, pekerjaan menargetkan semua VM yang terdaftar untuk lingkungan tersebut resourceName.

Catatan

Saat Anda mencoba kembali tahap, penyebaran dimulai ulang pada semua VM, bukan hanya target yang gagal.

trigger: 
- main

pool: 
   vmImage: ubuntu-latest

jobs:
- deployment: VMDeploy
  displayName: Deploy to VM
  environment: 
   name: VMenv
   resourceName: VMenv
   resourceType: virtualMachine
  strategy:
     runOnce:
        deploy:   
          steps:
            - script: echo "Hello world"

Catatan

Nilai resourceType seperti virtualMachine peka huruf besar/kecil. Casing yang salah tidak menghasilkan sumber daya yang cocok yang ditemukan.

Anda dapat menyebarkan ke VM tertentu di lingkungan dengan menentukannya di resourceName. Contoh berikut hanya menyebarkan ke sumber daya VM bernama RESOURCE-PC di VMenv lingkungan.

trigger: 
- main

pool: 
   vmImage: ubuntu-latest

jobs:
- deployment: VMDeploy
  displayName: Deploy to VM
  environment: 
    name: VMenv
    resourceType: virtualMachine
    resourceName: RESOURCE-PC # only deploy to the VM resource named RESOURCE-PC
  strategy:
    runOnce:
      deploy:   
          steps:
          - script: echo "Hello world"

Untuk informasi selengkapnya tentang pekerjaan penyebaran alur YAML, lihat skema alur YAML.

Menambahkan dan mengelola tag

Tag adalah cara untuk menargetkan sekumpulan VM tertentu di lingkungan untuk penyebaran. Tag masing-masing dibatasi hingga 256 karakter. Tidak ada batasan jumlah tag yang dapat Anda gunakan.

Anda dapat menambahkan tag atau menghapus tag untuk VM dalam skrip pendaftaran interaktif atau melalui UI dengan memilih Tindakan lainnya untuk sumber daya VM.

Cuplikan layar yang memperlihatkan pengaturan tag VM.

Jika Anda menentukan beberapa tag, alur hanya menggunakan VM yang menyertakan semua tag. Contoh berikut hanya menargetkan VM yang memiliki windows tag dan prod . VM yang hanya memiliki satu atau tidak satu pun tag tidak ditargetkan.

trigger: 
- main

pool: 
   vmImage: ubuntu-latest

jobs:
- deployment: VMDeploy
  displayName: Deploy to VM
  environment: 
    name: VMenv
    resourceType: virtualMachine
    tags: windows,prod # only deploy to VMs with both windows and prod tags
  strategy:
    runOnce:
      deploy:   
          steps:
          - script: echo "Hello world"

Menerapkan strategi penyebaran

Anda dapat menerapkan penyebaran strategy untuk menentukan cara meluncurkan aplikasi Anda. VM mendukung runOnce strategi dan rolling . Untuk informasi selengkapnya tentang strategi penyebaran dan kait siklus hidup, lihat Strategi penyebaran.

Lihat riwayat penyebaran

Pilih tab Penyebaran untuk keterlacakan lengkap penerapan dan item kerja, dan riwayat penyebaran lintas alur per lingkungan dan sumber daya.

Cuplikan layar yang memperlihatkan tampilan Penyebaran VM.

Menghapus VM dari lingkungan

Untuk menghapus VM dari lingkungan Linux, jalankan perintah berikut pada setiap komputer.

./config.sh remove