Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memantau AWS Instans PCS menggunakan Amazon CloudWatch
AWS PCS meluncurkan instans Amazon EC2 sesuai kebutuhan untuk memenuhi persyaratan penskalaan yang ditentukan dalam grup node komputasi PCS Anda. Anda dapat memantau instans ini saat berjalan menggunakan Amazon CloudWatch. Anda dapat memeriksa log instance yang sedang berjalan dengan masuk ke dalamnya dan menggunakan alat baris perintah interaktif. Namun, secara default, data CloudWatch metrik hanya disimpan untuk jangka waktu terbatas setelah instance dihentikan, dan log instans biasanya dihapus bersama dengan volume EBS yang mendukung instans. Untuk mempertahankan metrik atau data pencatatan dari instans yang diluncurkan oleh PCS setelah dihentikan, Anda dapat mengonfigurasi CloudWatch agen pada instans Anda dengan template peluncuran EC2. Topik ini memberikan gambaran umum tentang pemantauan instans yang sedang berjalan dan memberikan contoh cara mengonfigurasi metrik dan log instans persisten.
Memantau instans yang sedang berjalan
Menemukan instans AWS PCS
Untuk memantau instans yang diluncurkan oleh PCS, cari instans yang sedang berjalan terkait dengan cluster atau grup node komputasi. Kemudian, di konsol EC2 untuk contoh tertentu, periksa bagian Status dan alarm dan Pem antauan. Jika akses login dikonfigurasi untuk instans tersebut, Anda dapat menyambungkannya dan memeriksa berbagai file log pada instans. Untuk informasi selengkapnya tentang mengidentifikasi instans mana yang dikelola oleh PCS, lihatMenemukan instance grup node komputasi di PCS AWS.
Mengaktifkan metrik terperinci
Secara default, metrik instans dikumpulkan pada interval 5 menit. Untuk mengumpulkan metrik pada interval satu menit, aktifkan CloudWatch pemantauan terperinci di template peluncuran grup simpul komputasi Anda. Untuk informasi selengkapnya, lihat Aktifkan CloudWatch pemantauan terperinci.
Mengkonfigurasi metrik dan log instans persisten
Anda dapat menyimpan metrik dan log dari instans Anda dengan menginstal dan mengonfigurasi CloudWatch agen Amazon pada instans tersebut. Ini terdiri dari tiga langkah utama:
-
Buat konfigurasi CloudWatch agen.
-
Simpan konfigurasi yang dapat diambil oleh instans PCS.
-
Tulis template peluncuran EC2 yang menginstal perangkat lunak CloudWatch agen, mengambil konfigurasi Anda, dan memulai CloudWatch agen menggunakan konfigurasi.
Untuk informasi selengkapnya, lihat Mengum pulkan metrik, log, dan pel CloudWatch ac akan dengan agen di Panduan CloudWatch Pengguna Amazon, danMenggunakan template peluncuran Amazon EC2 dengan PCS AWS.
Membuat konfigurasi CloudWatch Agen
Sebelum menerapkan CloudWatch agen pada instans Anda, Anda harus membuat file konfigurasi JSON yang menentukan metrik, log, dan jejak yang akan dikumpulkan. File konfigurasi dapat dibuat menggunakan wizard atau secara manual, menggunakan editor teks. File konfigurasi akan dibuat secara manual untuk demonstrasi ini.
Di komputer tempat Anda menginstal AWS CLI, buat file CloudWatch konfigurasi bernama config.json dengan konten berikut. Anda juga dapat menggunakan URL berikut untuk mengunduh salinan file.
https://aws-hpc-recipes.s3.amazonaws.com/main/recipes/pcs/cloudwatch/assets/config.json
Catatan
-
Jalur log dalam file sampel adalah untuk Amazon Linux 2023. Jika instans Anda akan menggunakan sistem operasi dasar yang berbeda, ubah jalur yang sesuai.
-
Untuk menangkap log lain, tambahkan entri tambahan di bawah
collect_list. -
Nilai di dalam
{brackets}adalah variabel templat. Untuk daftar lengkap variabel yang didukung, lihat Membuat atau mengedit file konfigurasi CloudWatch agen secara manual di Panduan CloudWatch Pengguna Amazon. -
Anda dapat memilih untuk menghilangkan
logsataumetricsjika Anda tidak ingin mengumpulkan jenis informasi ini.
{ "agent": { "metrics_collection_interval": 60 }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/var/log/cloud-init.log", "log_group_class": "STANDARD", "log_group_name": "/PCSLogs/instances", "log_stream_name": "{instance_id}.cloud-init.log", "retention_in_days": 30 }, { "file_path": "/var/log/cloud-init-output.log", "log_group_class": "STANDARD", "log_stream_name": "{instance_id}.cloud-init-output.log", "log_group_name": "/PCSLogs/instances", "retention_in_days": 30 }, { "file_path": "/var/log/amazon/pcs/bootstrap.log", "log_group_class": "STANDARD", "log_stream_name": "{instance_id}.bootstrap.log", "log_group_name": "/PCSLogs/instances", "retention_in_days": 30 }, { "file_path": "/var/log/slurmd.log", "log_group_class": "STANDARD", "log_stream_name": "{instance_id}.slurmd.log", "log_group_name": "/PCSLogs/instances", "retention_in_days": 30 }, { "file_path": "/var/log/messages", "log_group_class": "STANDARD", "log_stream_name": "{instance_id}.messages", "log_group_name": "/PCSLogs/instances", "retention_in_days": 30 }, { "file_path": "/var/log/secure", "log_group_class": "STANDARD", "log_stream_name": "{instance_id}.secure", "log_group_name": "/PCSLogs/instances", "retention_in_days": 30 } ] } } }, "metrics": { "aggregation_dimensions": [ [ "InstanceId" ] ], "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}", "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}" }, "metrics_collected": { "cpu": { "measurement": [ "cpu_usage_idle", "cpu_usage_iowait", "cpu_usage_user", "cpu_usage_system" ], "metrics_collection_interval": 60, "resources": [ "*" ], "totalcpu": false }, "disk": { "measurement": [ "used_percent", "inodes_free" ], "metrics_collection_interval": 60, "resources": [ "*" ] }, "diskio": { "measurement": [ "io_time" ], "metrics_collection_interval": 60, "resources": [ "*" ] }, "mem": { "measurement": [ "mem_used_percent" ], "metrics_collection_interval": 60 }, "swap": { "measurement": [ "swap_used_percent" ], "metrics_collection_interval": 60 } } } }
File ini menginstruksikan CloudWatch agen untuk memantau beberapa file yang dapat membantu dalam mendiagnosis kesalahan dalam contoh bootstrap, otentikasi dan login, dan domain pemecahan masalah lainnya. Ini termasuk:
-
/var/log/cloud-init.log- Output dari tahap awal konfigurasi instance -
/var/log/cloud-init-output.log- Output dari perintah yang berjalan selama konfigurasi instance -
/var/log/amazon/pcs/bootstrap.log- Output dari PCS-specific operasi yang berjalan selama konfigurasi instance -
/var/log/slurmd.log— Output dari daemon slurmd manajer beban kerja Slurm -
/var/log/messages— Pesan sistem dari kernel, layanan sistem, dan aplikasi -
/var/log/secure— Log yang terkait dengan upaya otentikasi, seperti SSH, sudo, dan peristiwa keamanan lainnya
File log dikirim ke grup CloudWatch log bernama/PCSLogs/instances. Aliran log adalah kombinasi dari ID instance dan nama dasar file log. Grup log memiliki waktu retensi 30 hari.
Selain itu, file menginstruksikan CloudWatch agen untuk mengumpulkan beberapa metrik umum, menggabungkannya berdasarkan ID instance.
Simpan konfigurasi
File konfigurasi CloudWatch agen harus disimpan di tempat yang dapat diakses oleh instans node komputasi PCS. Ada dua cara umum untuk melakukan ini. Anda dapat mengunggahnya ke bucket Amazon S3 yang dapat diakses oleh instans grup node komputasi Anda melalui profil instansnya. Atau, Anda dapat menyimpannya sebagai parameter SSM di Amazon Systems Manager Parameter Store.
Unggah ke bucket S3
Untuk menyimpan file Anda di S3, gunakan perintah AWS CLI berikut. Sebelum menjalankan perintah, buat penggantian ini:
-
Ganti
amzn-s3-demo-bucketdengan nama bucket S3 Anda sendiri
Pertama, (ini opsional jika Anda memiliki bucket yang ada), buat bucket untuk menyimpan file konfigurasi Anda.
aws s3 mb s3://amzn-s3-demo-bucket
Selanjutnya, unggah file ke bucket.
aws s3 cp ./config.json s3://amzn-s3-demo-bucket/
Simpan sebagai parameter SSM
Untuk menyimpan file Anda sebagai parameter SSM, gunakan perintah berikut. Sebelum menjalankan perintah, buat penggantian ini:
-
Ganti
region-codedengan Wilayah AWS tempat Anda bekerja dengan AWS PCS. -
(Opsional)
AmazonCloudWatch-PCSGanti dengan nama Anda sendiri untuk parameter. Perhatikan bahwa jika Anda mengubah awalan nama dariAmazonCloudWatch-Anda perlu menambahkan akses baca secara khusus ke parameter SSM di profil instance grup simpul Anda.
aws ssm put-parameter \ --regionregion-code\ --name "AmazonCloudWatch-PCS" \ --type String \ --value file://config.json
Tulis template peluncuran EC2
Detail spesifik untuk template peluncuran tergantung pada apakah file konfigurasi Anda disimpan di S3 atau SSM.
Gunakan konfigurasi yang disimpan di S3
Skrip ini menginstal CloudWatch agen, mengimpor file konfigurasi dari bucket S3, dan meluncurkan CloudWatch agen dengannya. Ganti nilai-nilai berikut dalam skrip ini dengan detail Anda sendiri:
-
amzn-s3-demo-bucket— Nama bucket S3 yang dapat dibaca akun Anda -
/config.json— Jalur relatif ke root bucket S3 tempat konfigurasi disimpan
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/cloud-config; charset="us-ascii" packages: - amazon-cloudwatch-agent runcmd: - aws s3 cp s3://amzn-s3-demo-bucket/config.json/etc/s3-cw-config.json - /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file://etc/s3-cw-config.json --==MYBOUNDARY==--
Profil instance IAM untuk grup node harus memiliki akses ke bucket. Berikut adalah contoh kebijakan IAM untuk bucket dalam skrip data pengguna di atas.
Perhatikan juga bahwa instance harus mengizinkan lalu lintas keluar ke S3 dan titik akhir CloudWatch. Hal ini dapat dilakukan dengan menggunakan grup keamanan atau titik akhir VPC, tergantung pada arsitektur cluster Anda.
Gunakan konfigurasi yang disimpan di SSM
Skrip ini menginstal CloudWatch agen, mengimpor file konfigurasi dari parameter SSM, dan meluncurkan CloudWatch agen dengannya. Ganti nilai-nilai berikut dalam skrip ini dengan detail Anda sendiri:
-
(Opsional)
AmazonCloudWatch-PCSGanti dengan nama Anda sendiri untuk parameter.
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/cloud-config; charset="us-ascii" packages: - amazon-cloudwatch-agent runcmd: - /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c ssm:AmazonCloudWatch-PCS--==MYBOUNDARY==--
Kebijakan instance IAM untuk grup node harus dilamp CloudWatchAgentServerPolicy irkan padanya.
Jika nama parameter Anda tidak dimulai dengan, AmazonCloudWatch- Anda perlu menambahkan akses baca secara khusus ke parameter SSM di profil instance grup simpul Anda. Berikut adalah contoh kebijakan IAM yang menggambarkan ini untuk awalan. DOC-EXAMPLE-PREFIX
Perhatikan juga bahwa instance harus mengizinkan lalu lintas keluar ke SSM dan CloudWatch titik akhir. Hal ini dapat dilakukan dengan menggunakan grup keamanan atau titik akhir VPC, tergantung pada arsitektur cluster Anda.