Gunakan agen EC2 Launch v2 untuk melakukan tugas selama peluncuran instans EC2 Windows - Amazon Elastic Compute Cloud

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Gunakan agen EC2 Launch v2 untuk melakukan tugas selama peluncuran instans EC2 Windows

Semua instance Amazon EC2 yang didukung yang diluncurkan dari AWS Windows Server 2022 dan Windows Server 2025 AMIs menyertakan agen EC2 peluncuran Launch v2 (EC2Launch.exe) secara default. Kami juga menyediakan Windows Server 2016 dan 2019 AMIs dengan EC2 Launch v2 diinstal sebagai agen peluncuran default. Ini AMIs disediakan selain Windows Server 2016 dan 2019 AMIs yang mencakup EC2 Launch v1. Anda dapat mencari Windows AMIs yang menyertakan EC2 Launch v2 secara default dengan memasukkan awalan berikut dalam pencarian Anda dari AMIshalaman di EC2 konsol Amazon:EC2LaunchV2-Windows_Server-*.

Untuk membandingkan fitur versi agen peluncuran, lihatBandingkan agen EC2 peluncuran Amazon.

EC2Launch v2 melakukan tugas selama startup instance dan berjalan jika instance dihentikan dan kemudian dimulai, atau dimulai ulang. EC2Launch v2 juga dapat melakukan tugas sesuai permintaan. Beberapa dari tugas ini diaktifkan secara otomatis, sementara yang lainnya harus diaktifkan secara manual. Layanan EC2 Launch v2 mendukung semua fitur EC2 Config dan EC2 Launch.

Layanan ini menggunakan file konfigurasi untuk mengontrol operasinya. Anda dapat memperbarui file konfigurasi dengan menggunakan alat grafis atau dengan mengeditnya secara langsung sebagai file .yml tunggal (agent-config.yml). Biner layanan terletak di direktori %ProgramFiles%\Amazon\EC2Launch.

EC2Launch v2 menerbitkan log peristiwa Windows untuk membantu Anda memecahkan masalah kesalahan dan mengatur pemicu. Untuk informasi selengkapnya, lihat Log peristiwa Windows.

Agen EC2 Launch v2 mendukung versi sistem operasi (OS) Windows Server berikut:

Versi OS yang didukung
  • Windows Server 2025

  • Windows Server 2022

  • Windows Server 2019 (Saluran Layanan Jangka Panjang dan Saluran Semi-Tahunan)

  • Windows Server 2016

EC2Luncurkan konsep v2

Konsep-konsep berikut berguna untuk dipahami saat mempertimbangkan EC2 Peluncuran v2.

Tugas

Anda dapat menginvokasi tugas untuk melakukan tindakan pada sebuah instans. Anda dapat mengonfigurasi tugas dalam file agent-config.yml atau melalui data pengguna. Untuk daftar tugas yang tersedia untuk EC2 Luncurkan v2, lihat EC2Meluncurkan tugas v2. Untuk skema konfigurasi tugas dan detailnya, lihat EC2Luncurkan konfigurasi tugas v2.

Tahap

Tahap adalah pengelompokan tugas logis yang dijalankan agen EC2 Launch v2. Beberapa tugas hanya dapat dijalankan dalam tahap tertentu. Yang lain dapat berjalan dalam beberapa tahap. Saat menggunakan agent-config.yml, Anda harus menentukan daftar tahapan, dan daftar tugas untuk dijalankan dalam setiap tahap.

Layanan berjalan tahapan dalam urutan sebagai berikut:

Tahap 1: Boot

Tahap 2: Jaringan

Tahap 3: PreReady

Windows sudah siap

Setelah PreReady tahap selesai, layanan mengirim Windows is ready pesan ke EC2 konsol Amazon.

Tahap 4: PostReady

Data pengguna berjalan selama PostReadytahap. Beberapa versi skrip berjalan sebelum PostReadytahap agent-config.yml file, dan beberapa berjalan setelahnya, sebagai berikut:

Sebelum agent-config.yml
  • Data pengguna YAML versi 1.1

  • Data pengguna XML

Setelah agent-config.yml
  • Data pengguna YAMB versi 1.0 (versi warisan untuk kompatibilitas mundur)

Untuk contoh tahapan dan tugas, lihat Contoh: agent-config.yml.

Saat Anda menggunakan data pengguna, Anda harus menentukan daftar tugas agar agen peluncuran dijalankan. Panggung tersirat. Untuk contoh tugas, lihat Contoh: data pengguna.

EC2Launch v2 menjalankan daftar tugas dalam urutan yang Anda tentukan dalam agent-config.yml dan dalam data pengguna. Tahapan berjalan secara berurutan. Tahap selanjutnya dimulai setelah tahap sebelumnya selesai. Tugas juga berjalan secara berurutan.

Frekuensi

Frekuensi tugas menentukan kapan tugas harus dijalankan, tergantung pada konteks boot. Sebagian besar tugas hanya memiliki satu frekuensi yang diizinkan. Anda dapat menentukan frekuensi untuk tugas executeScript.

Anda akan melihat frekuensi berikut di EC2Luncurkan konfigurasi tugas v2.

  • Once - Tugas dijalankan sekali, saat AMI telah boot untuk pertama kali (selesai Sysprep).

  • Selalu — Tugas berjalan setiap kali agen peluncuran berjalan. Agen peluncuran berjalan saat:

    • sebuah instans dimulai atau dimulai ulang

    • Layanan EC2 Peluncuran berjalan

    • EC2Launch.exe run diinvokasi

agent-config

agent-configadalah file yang terletak di folder konfigurasi untuk EC2 Launch v2. Ini termasuk konfigurasi untuk boot, jaringan PreReady, dan PostReady tahapan. File ini digunakan untuk menentukan konfigurasi instans untuk tugas-tugas yang harus dijalankan saat AMI di-boot untuk pertama kali atau untuk waktu-waktu berikutnya.

Secara default, instalasi EC2 Launch v2 menginstal agent-config file yang menyertakan konfigurasi yang direkomendasikan yang digunakan di Amazon Windows standar. AMIs Anda dapat memperbarui file konfigurasi untuk mengubah pengalaman boot default untuk AMI Anda yang ditentukan oleh EC2 Launch v2.

Data pengguna

Data pengguna adalah data yang dapat dikonfigurasi saat Anda meluncurkan sebuah instans. Anda dapat memperbarui data pengguna untuk secara dinamis mengubah cara kustom AMIs atau quickstart AMIs dikonfigurasi. EC2Launch v2 mendukung panjang input data pengguna 60 kB. Data pengguna hanya mencakup UserData tahap, dan karena itu berjalan setelah agent-config file. Anda dapat memasukkan data pengguna saat meluncurkan instance menggunakan wizard instans peluncuran, atau Anda dapat memodifikasi data pengguna dari EC2 konsol. Untuk informasi lebih lanjut tentang bekerja dengan data pengguna, lihat Bagaimana Amazon EC2 menangani data pengguna untuk instans Windows.

EC2Luncurkan ikhtisar tugas v2

EC2Launch v2 dapat melakukan tugas-tugas berikut di setiap boot:

  • Siapkan wallpaper baru dan yang disesuaikan secara opsional yang menyajikan informasi tentang instans.

  • Setel atribut untuk akun administrator yang dibuat di mesin lokal.

  • Tambahkan sufiks DNS ke daftar sufiks pencarian. Hanya sufiks yang belum ada yang ditambahkan ke daftar.

  • Atur huruf drive untuk volume tambahan dan perluas untuk menggunakan ruang yang tersedia.

  • Tulis file dari konfigurasi ke disk.

  • Jalankan skrip yang ditentukan dalam file konfigurasi EC2 Launch v2 atau dari. user-data Skrip dari user-data dapat berupa teks biasa atau zip dan disediakan sebagai format base64.

  • Jalankan program dengan argumen yang diberikan.

  • Tetapkan nama komputer.

  • Kirim informasi instans ke EC2 konsol Amazon.

  • Kirim cap jempol sertifikat RDP ke konsol Amazon. EC2

  • Secara dinamis, perluas partisi sistem operasi untuk menyertakan ruang yang tidak dipartisi.

  • Jalankan data pengguna. Untuk informasi selengkapnya tentang menentukan data pengguna, lihat EC2Luncurkan konfigurasi tugas v2.

  • Setel rute statis non-persisten untuk menjangkau layanan metadata dan server. AWS KMS

  • Setel partisi non-boot ke mbr atau. gpt

  • Mulai layanan Systems Manager setelah Sysprep.

  • Optimalkan pengaturan ENA.

  • Aktifkan OpenSSH untuk versi Windows yang lebih baru.

  • Aktifkan Jumbo Frame.

  • Setel Sysprep untuk dijalankan dengan EC2 Launch v2.

  • Publikasikan log peristiwa Windows.

EC2Luncurkan struktur direktori v2

EC2Peluncuran v2 harus diinstal di direktori berikut:

  • Biner layana: %ProgramFiles%\Amazon\EC2Launch

  • Data layanan (pengaturan, file log, dan file statu): %ProgramData%\Amazon\EC2Launch

catatan

Secara default, Windows menyembunyikan file dan folder dalam C:\ProgramData. Untuk melihat direktori dan file EC2 Launch v2, Anda harus memasukkan jalur di Windows Explorer atau mengubah properti folder untuk menampilkan file dan folder tersembunyi.

Direktori %ProgramFiles%\Amazon\EC2Launch berisi binari dan pustaka pendukung. Ini mencakup subdirektori berikut:

  • settings

    • EC2LaunchSettingsUI.exe — antarmuka pengguna untuk memodifikasi file agent-config.yml

    • YamlDotNet.dll — DLL untuk mendukung beberapa operasi di antarmuka pengguna

  • tools

    • ebsnvme-id.exe — alat untuk memeriksa metadata volume EBS di instans

    • AWSAcpiSpcrReader.exe — alat untuk menentukan port COM yang benar untuk digunakan

    • EC2LaunchEventMessage.dll— DLL untuk mendukung pencatatan peristiwa Windows untuk EC2 Peluncuran.

  • service

    • EC2LaunchService.exe — Layanan Windows dapat dieksekusi yang diluncurkan ketika agen peluncuran berjalan sebagai layanan.

  • EC2Launch.exe— EC2 Peluncuran utama yang dapat dieksekusi

  • EC2LaunchAgentAttribution.txt— atribusi untuk kode yang digunakan dalam EC2 Peluncuran

Direktori %ProgramData%\Amazon\EC2Launch berisi subdirektori berikut. Semua data yang dihasilkan oleh layanan, termasuk log, konfigurasi, dan status, disimpan di direktori ini.

  • config— Konfigurasi

    File konfigurasi layanan disimpan dalam direktori ini sebagai agent-config.yml. File ini dapat diperbarui untuk mengubah, menambah, atau menghapus tugas default yang dijalankan oleh layanan. Izin untuk membuat file di direktori ini dibatasi untuk akun administrator untuk mencegah eskalasi hak istimewa.

  • log— Log contoh

    Log untuk service (agent.log), console (console.log), performance (bench.log), error (err.log), dan telemetri (telemetry.logdisimpan dalam direktori ini. File log ditambahkan ke eksekusi layanan selanjutnya.

  • state— Data status layanan

    Status yang digunakan layanan untuk menentukan tugas mana yang harus dijalankan disimpan di sini. Ada sebuah file .run-once yang menunjukkan apakah layanan telah dijalankan setelah Sysprep (jadi tugas dengan frekuensi sekali akan dilewati pada proses berikutnya). Subdirektori ini mencakup state.json dan previous-state.json untuk melacak status setiap tugas.

  • sysprep— Sysprep

    Direktori ini berisi file yang digunakan untuk menentukan operasi mana yang akan dilakukan oleh Sysprep saat membuat AMI Windows kustom yang dapat digunakan kembali.

  • wallpaper— Wallpaper

    Gambar wallpaper ini disimpan di direktori ini.

Telemetri

Telemetri adalah informasi tambahan yang membantu AWS untuk lebih memahami kebutuhan Anda, mendiagnosis masalah, dan memberikan fitur untuk meningkatkan pengalaman Anda. Layanan AWS

EC2Luncurkan versi v2 2.0.592 dan kemudian kumpulkan telemetri, seperti metrik penggunaan dan kesalahan. Data ini dikumpulkan dari EC2 instance Amazon tempat EC2 Launch v2 berjalan. Ini termasuk semua Windows yang AMIs dimiliki oleh AWS.

Jenis telemetri berikut dikumpulkan oleh EC2 Launch v2:

  • Informasi penggunaan — perintah agen, metode penginstalan, dan frekuensi eksekusi terjadwal.

  • Kesalahan dan informasi diagnostik - kode kesalahan instalasi agen, jalankan kode kesalahan, dan tumpukan panggilan kesalahan.

Contoh data yang dikumpulkan:

2021/07/15 21:44:12Z: EC2LaunchTelemetry: IsAgentScheduledPerBoot=true 2021/07/15 21:44:12Z: EC2LaunchTelemetry: IsUserDataScheduledPerBoot=true 2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentCommandCode=1 2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentCommandErrorCode=5 2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentInstallCode=2 2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentInstallErrorCode=0

Telemetri tidak diaktifkan secara default. Anda dapat menonaktifkan kumpulan telemetri kapan saja. Jika telemetri diaktifkan, EC2 Launch v2 mengirimkan data telemetri tanpa pemberitahuan pelanggan tambahan.

Visibilitas telemetri

Ketika telemetri diaktifkan, itu muncul di output EC2 konsol Amazon sebagai berikut.

2021/07/15 21:44:12Z: Telemetry: <Data>
Menonaktifkan telemetri pada sebuah instans

Untuk menonaktifkan telemetri untuk satu instans, Anda dapat mengatur variabel lingkungan sistem, atau menggunakan MSI untuk memodifikasi instalasi.

Untuk menonaktifkan telemetri dengan menyetel variabel lingkungan sistem, jalankan perintah berikut sebagai administrator.

setx /M EC2LAUNCH_TELEMETRY 0

Untuk menonaktifkan telemetri menggunakan MSI, jalankan perintah berikut setelah Anda mengunduh MSI.

msiexec /i ".\AmazonEC2Launch.msi" Remove="Telemetry" /q