Jalankan skrip sebagai administrator untuk mengonfigurasi pekerja - Batas Waktu Cloud

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

Jalankan skrip sebagai administrator untuk mengonfigurasi pekerja

Skrip konfigurasi host armada khusus memungkinkan Anda melakukan tugas administratif, seperti instalasi perangkat lunak, pada pekerja armada yang dikelola layanan Anda. Skrip ini berjalan dengan hak istimewa yang tinggi, memberi Anda fleksibilitas untuk mengonfigurasi pekerja Anda untuk sistem Anda.

Deadline Cloud menjalankan skrip setelah pekerja memasuki STARTING status dan sebelum menjalankan tugas apa pun.

penting

Skrip berjalan dengan izin tinggi, sudo pada Linux sistem dan 'Administrator' pada Windows sistem. Adalah tanggung jawab Anda untuk memastikan bahwa skrip tidak menimbulkan masalah keamanan apa pun.

Saat Anda menggunakan skrip admin, Anda bertanggung jawab untuk memantau kesehatan armada Anda.

Penggunaan umum untuk skrip meliputi:

  • Menginstal perangkat lunak yang membutuhkan akses administrator

  • Memasang Docker kontainer

Anda dapat membuat dan memperbarui skrip konfigurasi host menggunakan konsol atau menggunakan file AWS CLI.

Console
  1. Pada halaman Detail armada, pilih tab Konfigurasi.

  2. Di bidang Script, masukkan skrip untuk dijalankan dengan izin yang ditinggikan. Anda dapat memilih Impor untuk memuat skrip dari workstation Anda.

  3. Tetapkan periode batas waktu dalam hitungan detik untuk menjalankan skrip. Default-nya adalah 300 detik (5 menit).

  4. Pilih Simpan perubahan untuk menyimpan skrip.

Create with CLI

Gunakan AWS CLI perintah berikut untuk membuat armada dengan skrip konfigurasi host. Ganti placeholder teks dengan informasi Anda.

aws deadline-internal create-fleet \ --farm-id farm-12345 \ --display-name "fleet-name" \ --max-worker-count 1 \ --configuration '{ "serviceManagedEc2": { "instanceCapabilities": { "vCpuCount": {"min": 2}, "memoryMiB": {"min": 4096}, "osFamily": "linux", "cpuArchitectureType": "x86_64" }, "instanceMarketOptions": {"type":"spot"} } }' \ --role-arn arn:aws:iam::111122223333:role/role-name \ --host-configuration '{ "scriptBody": "script body", "scriptTimeoutSeconds": timeout value}'
Update with CLI

Gunakan AWS CLI perintah berikut untuk memperbarui skrip konfigurasi host armada. Ganti placeholder teks dengan informasi Anda.

aws deadline update-fleet \ --farm-id farm-12345 \ --fleet-id fleet-455678 \ --host-configuration '{ "scriptBody": "script body", "scriptTimeoutSeconds": timeout value}'

Skrip berikut menunjukkan:

  • Variabel lingkungan yang tersedia untuk skrip

  • AWS Kredensi itu berfungsi di shell

  • Bahwa skrip berjalan di shell yang ditinggikan

Linux

Gunakan skrip berikut untuk menunjukkan bahwa skrip berjalan dengan root hak istimewa:

# Print environment variables set # Check AWS Credentials aws sts get-caller-identity
Windows

Gunakan PowerShell skrip berikut untuk menunjukkan bahwa skrip berjalan dengan hak istimewa Administrator:

Get-ChildItem env: | ForEach-Object { "$($_.Name)=$($_.Value)" } aws sts get-caller-identity function Test-AdminPrivileges { $currentUser = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent()) $isAdmin = $currentUser.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) return $isAdmin } if (Test-AdminPrivileges) { Write-Host "The current PowerShell session is elevated (running as Administrator)." } else { Write-Host "The current PowerShell session is not elevated (not running as Administrator)." } exit 0

Memecahkan masalah skrip konfigurasi host

Saat Anda menjalankan skrip konfigurasi host:

  • Tentang kesuksesan: Pekerja menjalankan pekerjaan

  • Pada kegagalan (kode keluar bukan nol atau crash):

    • Pekerja menutup

    Armada secara otomatis meluncurkan pekerja baru menggunakan skrip konfigurasi host terbaru

Untuk memantau skrip:

  1. Buka halaman armada di konsol Deadline Cloud.

  2. Pilih Lihat pekerja untuk membuka monitor Deadline Cloud.

  3. Lihat status pekerja di halaman monitor.

Catatan penting:

  • Pekerja yang ditutup karena kesalahan tidak tersedia dalam daftar pekerja di monitor. Gunakan CloudWatch Log untuk melihat log pekerja di grup log berikut:

    /aws/deadline/farm-XXXXX/fleet-YYYYY

    Di dalam grup log itu ada aliran

    worker-ZZZZZ
  • CloudWatch Log menyimpan log pekerja sesuai dengan periode retensi yang dikonfigurasi.

Memantau eksekusi skrip konfigurasi host

Dengan skrip Admin untuk mengonfigurasi pekerja, Anda dapat mengendalikan penuh pekerja Deadline Cloud. Anda dapat menginstal paket perangkat lunak apa pun, mengkonfigurasi ulang parameter sistem operasi, atau memasang sistem file bersama. Dengan fitur canggih ini dan kemampuan Deadline Cloud untuk menskalakan ke ribuan pekerja, kini Anda dapat memantau kapan skrip konfigurasi berhasil dijalankan atau gagal. Penyebab kegagalan mungkin termasuk kesalahan skrip, perilaku bersisik, atau situasi tidak diketahui lainnya.

Kami merekomendasikan solusi berikut untuk memantau eksekusi skrip konfigurasi host.

CloudWatch Pemantauan log

Semua log konfigurasi host armada dialirkan ke grup CloudWatch log armada, dan secara khusus ke aliran CloudWatch log pekerja. Misalnya, /aws/deadline/farm-123456789012/fleet-777788889999 adalah grup log untuk pertanian123456789012, armada777788889999.

Setiap pekerja menyediakan aliran log khusus, misalnyaworker-123456789012. Log konfigurasi host termasuk spanduk log seperti Running Host Configuration Script dan Selesai menjalankan Host Configuration Script, kode keluar: 0. Kode keluar skrip disertakan dalam spanduk yang sudah jadi dan dapat ditanyakan menggunakan CloudWatch alat.

CloudWatch Wawasan Log

CloudWatch Logs Insights menawarkan kemampuan canggih untuk menganalisis informasi log. Misalnya, kueri Log Insights berikut mengurai kode keluar konfigurasi host, diurutkan berdasarkan waktu:

fields @timestamp, @message, @logStream, @log | filter @message like /Finished running Host Configuration Script/ | parse @message /exit code: (?<exit_code>\d+)/ | display @timestamp, exit_code | sort @timestamp desc

Untuk informasi selengkapnya tentang Wawasan CloudWatch Log, lihat Menganalisis data CloudWatch log dengan Wawasan Log di Panduan Pengguna CloudWatch Log Amazon.

Pencatatan terstruktur agen pekerja

Agen pekerja Deadline Cloud menerbitkan log JSON terstruktur ke. CloudWatch Agen pekerja menawarkan beragam log terstruktur untuk menganalisis kesehatan pekerja. Untuk informasi selengkapnya, lihat Deadline Login agen pekerja Cloud. GitHub

Atribut log terstruktur dibongkar ke bidang di Wawasan Log. Anda dapat menggunakan CloudWatch kemampuan ini untuk menghitung dan menganalisis kegagalan startup konfigurasi host. Misalnya, kueri count dan bin dapat digunakan untuk menentukan seberapa sering kegagalan terjadi:

fields @timestamp, @message, @logStream, @log | sort @timestamp desc | filter message like /Worker Agent host configuration failed with exit code/ | stats count(*) by exit_code, bin(1h)

CloudWatch filter metrik untuk metrik dan mengkhawatirkan

Anda dapat mengatur filter CloudWatch metrik untuk menghasilkan CloudWatch metrik dari log. Ini memungkinkan Anda membuat alarm dan dasbor untuk memantau eksekusi skrip konfigurasi host.

Untuk membuat filter metrik
  1. Buka CloudWatch konsol.

  2. Di panel navigasi, pilih Log, lalu Log grup.

  3. Pilih grup log armada Anda.

  4. Pilih Create metric filter (Buat filter metrik).

  5. Tentukan pola filter Anda menggunakan salah satu dari berikut ini:

    • Untuk metrik sukses:

      {$.message = "*Worker Agent host configuration succeeded.*"}
    • Untuk metrik kegagalan:

      {$.exit_code != 0 && $.message = "*Worker Agent host configuration failed with exit code*"}
  6. Pilih Berikutnya untuk membuat metrik dengan nilai berikut:

    • Namespace metrik: Namespace metrik Anda (misalnya,) MyDeadlineFarm

    • Nama metrik: Nama metrik yang Anda minta (misalnya,host_config_failure)

    • Nilai metrik: 1 (setiap contoh adalah hitungan 1)

    • Nilai default: Biarkan kosong

    • Satuan: Count

Setelah membuat filter metrik, Anda dapat mengonfigurasi CloudWatch alarm standar untuk mengambil tindakan pada tingkat kegagalan konfigurasi host yang meningkat, atau menambahkan metrik ke CloudWatch dasbor untuk day-to-day pengoperasian dan pemantauan.

Untuk detail selengkapnya, lihat Filter dan sintaks pola di Panduan Pengguna Amazon CloudWatch Logs.