Contoh beban kerja Java/JMX untuk klaster-klaster Amazon ECS - Amazon CloudWatch

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

Contoh beban kerja Java/JMX untuk klaster-klaster Amazon ECS

JMX Exporter adalah sebuah pengekspor Prometheus resmi yang dapat melakukan scraping dan mengekspos JMX mBeans sebagai metrik-metrik Prometheus. Untuk informasi selengkapnya, silakan lihat prometheus/jmx_exporter.

CloudWatch Agen dengan dukungan Prometheus menggores metrik Java/JMX Prometheus berdasarkan konfigurasi penemuan layanan di cluster Amazon ECS. Anda dapat mengonfigurasi JMX Exporter untuk mengekspos metrik-metrik sebuah pada port atau metrik_path yang berbeda. Jika Anda mengubah port atau jalur, perbarui ecs_service_discovery bagian default dalam konfigurasi CloudWatch agen.

Untuk mengumpulkan metrik-metrik dari sampel beban kerja Prometheus untuk Amazon ECS, Anda harus menjalankan Wawasan Kontainer di klaster. Untuk informasi tentang cara melakukan instalasi Wawasan Kontainer, silakan lihat Menyiapkan Wawasan Kontainer di Amazon ECS.

Untuk melakukan instalasi beban kerja sampel Java/JMX untuk klaster-klaster Amazon ECS
  1. Ikuti langkah-langkah yang ada di bagian ini untuk membuat citra Docker Anda.

  2. Tentukan dua label docker berikut di file penetapan tugas Amazon ECS. Kemudian, Anda akan dapat menjalankan penetapan tugas sebagai sebuah layanan Amazon ECS atau tugas Amazon ECS dalam klaster.

    • Tetapkan ECS_PROMETHEUS_EXPORTER_PORT untuk menunjuk ke containerPort tempat metrik Prometheus dibuka.

    • Atur Java_EMF_Metrics menjadi true. CloudWatch Agen menggunakan bendera ini untuk menghasilkan format metrik yang disematkan dalam peristiwa log.

    Berikut ini adalah contohnya:

    { "family": "workload-java-ec2-bridge", "taskRoleArn": "{{task-role-arn}}", "executionRoleArn": "{{execution-role-arn}}", "networkMode": "bridge", "containerDefinitions": [ { "name": "tomcat-prometheus-workload-java-ec2-bridge-dynamic-port", "image": "your_docker_image_tag_for_tomcat_with_prometheus_metrics", "portMappings": [ { "hostPort": 0, "protocol": "tcp", "containerPort": 9404 } ], "dockerLabels": { "ECS_PROMETHEUS_EXPORTER_PORT": "9404", "Java_EMF_Metrics": "true" } } ], "requiresCompatibilities": [ "EC2" ], "cpu": "256", "memory": "512" }

Pengaturan default CloudWatch agen dalam AWS CloudFormation template memungkinkan penemuan layanan berbasis label docker dan penemuan layanan berbasis ARN definisi tugas. Untuk melihat setelan default ini, lihat baris 65 dari file konfigurasi YAMM CloudWatch agen. Kontainer-kontainer yang memiliki label ECS_PROMETHEUS_EXPORTER_PORT akan ditemukan secara otomatis berdasarkan port kontainer yang ditentukan untuk scraping Prometheus.

Pengaturan default CloudWatch agen juga memiliki metric_declaration pengaturan untuk java/JMX pada baris 112 dari file yang sama. Semua label docker dari wadah target akan ditambahkan sebagai label tambahan dalam metrik Prometheus dan dikirim ke Log. CloudWatch Untuk kontainer-kontainer Java/JMX yang memiliki label docker Java_EMF_Metrics=“true”, format metrik tersemat akan dibuat.