View a markdown version of this page

Menskalakan log masuk AWS PCS - AWS PCS

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

Menskalakan log masuk AWS PCS

Log penskalaan memberi Anda catatan tentang bagaimana Layanan Komputasi AWS Paralel menskalakan grup simpul komputasi di cluster Anda. Setiap entri log mencatat satu transisi status untuk satu node komputasi: misalnya, peluncuran instance, pendaftaran node, penurunan skala, atau kegagalan peluncuran dengan alasannya. Anda dapat menggunakan log penskalaan untuk menjawab pertanyaan seperti mengapa grup node tidak mencapai ukuran targetnya, peluncuran mana yang gagal karena alasan kapasitas, dan ketika node tertentu dimulai atau dihentikan.

Anda dapat mengirim log penskalaan ke Amazon CloudWatch, Amazon Simple Storage Service (Amazon S3), dan Amazon Data Firehose. Untuk setiap transisi, AWS PCS mencatat data berikut:

  • Pengidentifikasi grup node cluster dan komputasi

  • Nama simpul

  • Status baru

  • Kode alasan dan deskripsi yang dapat dibaca manusia

  • ID instans EC2, saat instance dikaitkan dengan transisi

  • Konteks peluncuran, seperti jenis instance dan subnet, bila relevan

AWS PCS mengirimkan log penskalaan melalui jenis PCS_SCALING_LOGS log. Penskalaan pengiriman log adalah opt-in. AWS PCS tidak mengirimkan log penskalaan untuk cluster sampai Anda mengonfigurasi pengiriman untuk itu.

Prasyarat

Prinsip IAM yang mengelola cluster AWS PCS harus mengizinkan pcs:AllowVendedLogDeliveryForResource tindakan tersebut.

Contoh kebijakan IAM berikut memberikan izin yang diperlukan.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "PcsAllowVendedLogsDelivery", "Effect": "Allow", "Action": ["pcs:AllowVendedLogDeliveryForResource"], "Resource": [ "arn:aws:pcs:*::cluster/*" ] } ] }

Menyiapkan log penskalaan

Anda dapat mengatur log penskalaan untuk cluster AWS PCS Anda dengan Konsol Manajemen AWS atau AWS CLI.

Konsol Manajemen AWS
Untuk mengatur log penskalaan dengan konsol
  1. Buka konsol AWS PCS.

  2. Pada panel navigasi, silakan pilih Klaster.

  3. Pilih cluster tempat Anda ingin menambahkan log penskalaan.

  4. Pada halaman detail cluster, pilih tab Log.

  5. Di bawah Scaling Logs, pilih Tambah untuk menambahkan hingga 3 tujuan pengiriman log dari antara CloudWatch Logs, Amazon S3, dan Firehose.

  6. Pilih Perbarui pengiriman log.

AWS CLI
Untuk mengatur log penskalaan dengan AWS CLI
  1. Buat tujuan pengiriman log:

    aws logs put-delivery-destination --region region \ --name pcs-logs-destination \ --delivery-destination-configuration \ destinationResourceArn=resource-arn

    Ganti:

    • region— Wilayah AWS Tempat Anda ingin membuat tujuan, seperti us-east-1

    • pcs-logs-destination— Nama untuk tujuan

    • resource-arn— Nama Sumber Daya Amazon (ARN) dari grup CloudWatch log Logs, bucket S3, atau aliran pengiriman Firehose.

    Untuk informasi selengkapnya, lihat PutDeliveryDestination Referensi API Amazon CloudWatch Logs.

  2. Setel cluster PCS sebagai sumber pengiriman log:

    aws logs put-delivery-source --region region \ --name cluster-logs-source-name \ --resource-arn cluster-arn \ --log-type PCS_SCALING_LOGS

    Ganti:

    • region— Cluster Anda, seperti Wilayah AWS us-east-1

    • cluster-logs-source-name— Nama untuk sumbernya

    • cluster-arn— ARN cluster AWS PCS Anda

    Untuk informasi selengkapnya, lihat PutDeliverySource Referensi API Amazon CloudWatch Logs.

  3. Hubungkan sumber pengiriman ke tujuan pengiriman:

    aws logs create-delivery --region region \ --delivery-source-name cluster-logs-source \ --delivery-destination-arn destination-arn

    Ganti:

    • region— Yang Wilayah AWS, seperti us-east-1

    • cluster-logs-source— Nama sumber pengiriman Anda

    • destination-arn— ARN tujuan pengiriman Anda

    Untuk informasi selengkapnya, lihat CreateDelivery Referensi API Amazon CloudWatch Logs.

Menemukan log penskalaan

Anda dapat mengonfigurasi tujuan CloudWatch log di Logs dan Amazon S3. AWS PCS menggunakan nama jalur terstruktur dan nama file berikut.

CloudWatch Log

AWS PCS menggunakan format nama berikut untuk aliran CloudWatch Logs:

AWSLogs/PCS/cluster-id/node_lifecycle.log

Misalnya: AWSLogs/PCS/pcs_abc123de45/node_lifecycle.log

Amazon S3

AWS PCS menggunakan format nama berikut untuk jalur S3:

AWSLogs/account-id/PCS/region/cluster-id/node_lifecycle/year/month/day/hour/

Misalnya: AWSLogs/111122223333/PCS/us-east-1/pcs_abc123de45/node_lifecycle/2026/09/03/11/

AWS PCS menggunakan format nama berikut untuk file log:

PCS_cluster-id_node_lifecycle_year-month-day-hour_random-id.log.gz

Misalnya: PCS_pcs_abc123de45_node_lifecycle_2026-09-03-11_04be080b.log.gz

Bidang log penskalaan

AWS PCS menulis data log penskalaan sebagai objek JSON. Setiap entri log berisi bidang metadata tingkat atas dan details objek. Bidang tingkat atas mengidentifikasi cluster, waktu peristiwa, dan grup simpul komputasi dan id simpul penjadwal. Ob details jek menyimpan detail transisi.

Tabel berikut menjelaskan bidang tingkat atas di setiap entri log.

Top-level bidang
Nama Nilai contoh Diperlukan Catatan
resource_id "pcs_22l8nzr3t9" Ya ID cluster AWS PCS
resource_type "PCS_CLUSTER" Ya Selalu "PCS_CLUSTER"
event_timestamp 1789179816460 Ya Zaman Unix milidetik saat peristiwa terjadi
compute_node_group_id "pcs_56zr33g8" Ya Grup simpul komputasi milik node
scheduler_node_id "compute-1" Ya Id simpul penjadwal
status_code "LAUNCH_FAILED" Ya Status baru dari node. Lihat Kode status dan kode alasan
reason_code "INSUFFICIENT_CAPACITY" Ya Mengapa transisi terjadi
description "The launch failed because EC2 did not have enough capacity" Ya Ringkasan yang dapat dibaca manusia yang berasal dari kode status dan alasan
details {...} Tidak Konteks tambahan untuk transisi. Tombol tergantung pada jenis transisi

Tabel berikut menjelaskan kunci yang dapat muncul di dalam details objek.

Bidang di dalam objek detail
Nama Nilai contoh Diperlukan Catatan
instance_id "i-0abcdef01234567a" Tidak Instans EC2 yang terkait dengan node. Tidak ada saat tidak ada instance yang terkait, seperti setelah kegagalan peluncuran
ec2_error_code "InsufficientInstanceCapacity" Tidak Kode kesalahan EC2 untuk peluncuran yang gagal. Kode yang sama muncul dalam CloudTrail catatan CreateFleet panggilan di akun Anda
instance_type "t4g.micro" Tidak Jenis instance diluncurkan
subnet_id "subnet-0abc123" Tidak Subnet yang ditargetkan oleh peluncuran

Kode status dan kode alasan

Bid status_code ang memberi tahu Anda status node yang dimasukkan. Bid reason_code ang memberi tahu Anda mengapa. Misalnya, LAUNCH_FAILED status dengan INSUFFICIENT_CAPACITY alasan berarti Amazon EC2 tidak dapat menyediakan kapasitas untuk jenis instans yang diminta di subnet yang ditargetkan. A LIMIT_EXCEEDED berarti kuota Amazon EC2 memblokir peluncuran.

Kode status dan kode alasan
Kode status Kode alasan Deskripsi
LAUNCHED SCHEDULER_REQUESTED Instans diluncurkan untuk memenuhi permintaan penskalaan penjadwal
LAUNCHED MAINTAIN_MIN_CAPACITY Instans diluncurkan untuk mempertahankan kapasitas minimum grup node
REGISTERED REGISTER_SUCCESS Node berhasil terdaftar melalui agen PCS
ACTIVE BOOTSTRAP_SUCCESS Bootstrap node selesai; slurmd sedang berjalan dan menerima pekerjaan
PENDING_REPLACEMENT NODE_GROUP_UPDATE Node terkuras sebelum dimatikan untuk pembaruan grup node
PENDING_REPLACEMENT EC2_HEALTH_CHECK_FAILED Node terkuras karena pemeriksaan kesehatan pada node atau instansnya gagal
PENDING_REPLACEMENT EC2_SCHEDULED_EVENT Node terkuras karena instansnya memiliki acara pemeliharaan EC2 terjadwal
LAUNCH_FAILED INSUFFICIENT_CAPACITY Node tidak mendapatkan instance karena tidak ada cukup kapasitas yang tersedia
LAUNCH_FAILED LIMIT_EXCEEDED Peluncuran instans gagal karena kuota akun terlampaui
LAUNCH_FAILED LAUNCH_ERROR Node gagal meluncurkan instansnya
TERMINATED SCHEDULER_REQUESTED Instance dihentikan setelah penjadwal merilis node (idle timeout atau power down)
TERMINATED UNHEALTHY_NODE Instance dihentikan karena penjadwal melaporkan node tidak sehat
TERMINATED BOOTSTRAP_FAILED Instance dihentikan karena node gagal melakukan bootstrap
TERMINATED EXTERNALLY_TERMINATED Instance dihentikan di luar PCS; node dirilis sehingga dapat diganti
TERMINATED REPLACEMENT_REQUESTED Instance dihentikan karena node dikeringkan untuk penggantian
TERMINATED NODE_GROUP_DELETION Instance dihentikan sebagai bagian dari penghapusan grup simpul komputasi
TERMINATE_FAILED EC2_OPERATION_NOT_PERMITTED Pengakhiran instans gagal. Pastikan perlindungan penghentian tidak diaktifkan pada instans
TERMINATE_FAILED EC2_ERROR Pengakhiran instans gagal

Contoh log penskalaan

Contoh berikut menunjukkan peluncuran instance yang berhasil:

{ "resource_id": "pcs_abc123de45", "resource_type": "PCS_CLUSTER", "event_timestamp": 1789179816460, "compute_node_group_id": "pcs_abcdef01", "scheduler_node_id": "compute-1", "status_code": "LAUNCHED", "reason_code": "SCHEDULER_REQUESTED", "description": "Instance launched to satisfy a scheduler scale-up request.", "details": { "instance_id": "i-0abc12345def67890", "instance_type": "c6i.xlarge", "subnet_id": "subnet-0123456789abcdef0" } }

Contoh berikut menunjukkan kegagalan peluncuran yang disebabkan oleh kapasitas EC2 yang tidak mencukupi. Tidak instance_id hadir karena tidak ada instance yang diluncurkan.

{ "resource_id": "pcs_abc123de45", "resource_type": "PCS_CLUSTER", "event_timestamp": 1789179816460, "compute_node_group_id": "pcs_abcdef01", "scheduler_node_id": "compute-2", "status_code": "LAUNCH_FAILED", "reason_code": "INSUFFICIENT_CAPACITY", "description": "Node did not get an instance because there was not enough capacity available.", "details": { "ec2_error_code": "InsufficientInstanceCapacity" } }