View a markdown version of this page

Siapkan kolektor Prometheus terkelola untuk Amazon Service OpenSearch - Amazon Managed Service for Prometheus

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

Siapkan kolektor Prometheus terkelola untuk Amazon Service OpenSearch

Pengumpul terkelola Amazon Managed Service for Prometheus untuk Amazon OpenSearch Service secara otomatis mengikis Prometheus-compatible metrik dari domain OpenSearch Layanan Anda dan meneruskannya ke tujuan Anda. Amazon Managed Service for Prometheus mengelola kolektor untuk Anda, memberi Anda skalabilitas, keamanan, dan keandalan yang Anda butuhkan, tanpa harus mengelola instans, agen, atau pencakar sendiri. Tujuan Anda dapat berupa Amazon Managed Service untuk ruang kerja Prometheus atau Amazon. CloudWatch

Anda juga dapat membuat scraper yang terintegrasi dengan Amazon Elastic Kubernetes Service atau dengan Amazon Managed Streaming untuk Apache Kafka. Untuk informasi selengkapnya, lihat Meng integrasikan Amazon EKS dan Meng integrasikan Amazon MSK.

Buat scraper

Prosedur ini mengasumsikan bahwa Anda terbiasa dengan administrasi domain OpenSearch Layanan Amazon dan konsep jaringan Amazon Virtual Private Cloud.

Ada beberapa prasyarat untuk membuat scraper untuk domain OpenSearch Layanan:

  • Domain OpenSearch Layanan Amazon dengan akses Amazon Virtual Private Cloud. Kolektor terkelola hanya mendukung domain OpenSearch Layanan yang memiliki akses VPC. Domain dengan akses publik tidak didukung.

  • Grup keamanan yang memungkinkan kolektor terkelola untuk mencapai titik akhir domain OpenSearch Layanan Anda melalui HTTPS (port 443). Tambahkan aturan masuk ke grup keamanan domain yang memungkinkan lalu lintas HTTPS dari grup keamanan yang Anda sediakan untuk kolektor.

Untuk memberi tahu scraper domain OpenSearch Layanan mana yang akan dikumpulkan, Anda menentukan domain di exporters bidang permintaan. Bid exporters ang ini mengambil daftar konfigurasi eksportir; untuk domain OpenSearch Layanan, berikan openSearchConfiguration dengan domain tersebut. domainArn Anda menyediakan jaringan (subnet dan grup keamanan) secara terpisah di source bidang, seperti yang ditunjukkan dalam contoh berikut.

catatan

Scraper menggunakan titik akhir VPC domain seperti yang diselesaikan saat Anda membuat scraper. Jika Anda membuat ulang domain, itu akan mendapatkan titik akhir baru, jadi Anda harus membuat scraper baru atau memperbarui yang sudah ada UpdateScraper untuk mengumpulkannya.

Anda memberikan konfigurasi goresan saat Anda membuat scraper. Kolektor terkelola terhubung ke domain yang Anda tentukan dan mengumpulkan metriknya secara otomatis, sehingga Anda tidak menentukan target pengikisan dalam konfigurasi. Konfigurasi harus menyertakan scrape_configs bagian dengan pekerjaan job_name yang persisopensearch-exporter. Konfigurasi yang tidak berisi pekerjaan bernama opensearch-exporter ditolak. Gunakan konfigurasi pengikisan untuk mengatur interval pengikisan dan, secara opsional, untuk memfilter atau memberi label ulang metrik yang dikumpulkan. Berikut ini adalah contoh konfigurasi scrape:

global: external_labels: domain_name: my-opensearch-domain scrape_configs: - job_name: opensearch-exporter scrape_interval: 60s

Untuk informasi selengkapnya tentang opsi konfigurasi scrape yang didukung, lihatKonfigurasi scraper.

To create a scraper using the AWS API

Gunakan operasi CreateScraper API untuk membuat scraper dengan AWS API. Contoh berikut membuat scraper di Wilayah AS Timur (Virginia Utara) yang mengumpulkan metrik dari domain OpenSearch Layanan dan mengirimkannya ke ruang kerja Amazon Managed Service for Prometheus. Ganti example konten dengan domain, jaringan, dan informasi ruang kerja Anda sendiri, dan berikan konfigurasi scraper Anda.

catatan

Konfigurasikan grup keamanan dan subnet agar sesuai dengan Amazon VPC domain OpenSearch Layanan Anda. Sertakan setidaknya dua subnet di dua Zona Ketersediaan.

POST /scrapers HTTP/1.1 { "alias": "myScraper", "source": { "vpcConfiguration": { "securityGroupIds": ["sg-security-group-id"], "subnetIds": ["subnet-subnet-id-1", "subnet-subnet-id-2"] } }, "exporters": [ { "openSearchConfiguration": { "domainArn": "arn:aws:es:us-east-1:123456789012:domain/my-opensearch-domain" } } ], "destination": { "ampConfiguration": { "workspaceArn": "arn:aws:aps:us-east-1:123456789012:workspace/ws-workspace-id" } }, "scrapeConfiguration": { "configurationBlob": "base64-encoded-blob" } }

Untuk mengirim metrik ke Amazon al CloudWatch ih-alih ruang kerja Amazon Managed Service for Prometheus, ganti destination dengan konfigurasi: CloudWatch

"destination": { "cloudWatchConfiguration": { "datasetArn": "arn:aws:cloudwatch:us-east-1:123456789012:dataset/default" } }

scrapeConfigurationParameter memerlukan file YAML konfigurasi Prometheus yang dikodekan base64. Jalankan salah satu perintah berikut untuk mengonversi file YAML ke base64. Anda juga dapat menggunakan konverter base64 online apa pun untuk mengonversi file.

contoh Linux/macOS
base64 -w0 scraper-config.yaml
contoh Jendela PowerShell
[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("scraper-config.yaml"))
To create a scraper using the AWS CLI

Gunakan create-scraper perintah untuk membuat scraper menggunakan AWS Command Line Interface. Contoh berikut membuat scraper di Wilayah AS Timur (Virginia Utara). Ganti example konten dengan domain, jaringan, dan informasi ruang kerja Anda sendiri, dan berikan konfigurasi scraper Anda.

catatan

Konfigurasikan grup keamanan dan subnet agar sesuai dengan Amazon VPC domain OpenSearch Layanan Anda. Sertakan setidaknya dua subnet di dua Zona Ketersediaan.

aws amp create-scraper \ --source '{"vpcConfiguration":{"securityGroupIds":["sg-security-group-id"],"subnetIds":["subnet-subnet-id-1","subnet-subnet-id-2"]}}' \ --exporters '[{"openSearchConfiguration":{"domainArn":"arn:aws:es:us-east-1:123456789012:domain/my-opensearch-domain"}}]' \ --scrape-configuration configurationBlob=base64-encoded-blob \ --destination '{"ampConfiguration":{"workspaceArn":"arn:aws:aps:us-east-1:123456789012:workspace/ws-workspace-id"}}'
  • Berikut ini adalah daftar lengkap operasi scraper yang dapat Anda gunakan dengan AWS API:

    Buat scraper dengan operasi CreateScraper API.

  • Buat daftar pencakar yang ada dengan operasi ListScrapers API.

  • Perbarui alias, konfigurasi, atau tujuan scraper dengan operasi UpdateScraper API.

  • Hapus scraper dengan operasi DeleteScraper API.

  • Dapatkan detail selengkapnya tentang scraper dengan operasi DescribeScraper API.

Cross-account penyiapan

Untuk membuat scraper dalam pengaturan lintas akun, jika domain OpenSearch Layanan tempat Anda ingin mengumpulkan metrik berada di akun yang berbeda dari pengumpul Layanan Terkelola Amazon untuk Prometheus, gunakan prosedur berikut.

Misalnya, Anda memiliki dua akun: akun sumber account_id_source tempat domain OpenSearch Layanan berada, dan akun target account_id_target tempat ruang kerja Amazon Managed Service for Prometheus berada.

catatan

Kebijakan kepercayaan dalam langkah-langkah berikut mengacu pada scraper oleh ARN-nya, yang mencakup scraper-id yang tidak ada sampai Anda membuat scraper. Untuk menghindari masalah pemesanan ini, pertama-tama buat peran dengan wildcard (scraper/*) sebagai pengganti scraper ARN tertentu, buat scraper, lalu perbarui kedua kebijakan kepercayaan untuk mengganti wildcard dengan scraper ARN aktual yang CreateScraper dikembalikan.

Untuk membuat scraper dalam pengaturan lintas akun
  1. Di akun sumber, buat peran arn:aws:iam::111122223333:role/Source dan tambahkan kebijakan kepercayaan berikut.

    { "Effect": "Allow", "Principal": { "Service": [ "scraper.aps.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:aps:aws-region:111122223333:scraper/scraper-id" }, "StringEquals": { "AWS:SourceAccount": "111122223333" } } }
  2. Di akun target, buat peran arn:aws:iam::444455556666:role/Target dan tambahkan kebijakan kepercayaan berikut, yang memungkinkan peran sumber untuk mengasumsikannya.

    { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/Source" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "arn:aws:aps:aws-region:111122223333:scraper/scraper-id" } } }

    Lampirkan kebijakan izin ke peran target yang memungkinkannya menulis ke tujuan Anda. Jika tujuan Anda adalah ruang kerja Layanan Terkelola Amazon untuk Prometheus, lampirkan AmazonPrometheusRemoteWriteAccess (yang memberikan). aps:RemoteWrite Jika tujuan Anda adalah Amazon CloudWatch, lampirkan kebijakan yang memberikan cloudwatch:PutMetricData pada kumpulan data.

  3. Buat scraper dengan --role-configuration opsi.

    aws amp create-scraper \ --source '{"vpcConfiguration":{"securityGroupIds":["sg-security-group-id"],"subnetIds":["subnet-subnet-id-1","subnet-subnet-id-2"]}}' \ --exporters '[{"openSearchConfiguration":{"domainArn":"arn:aws:es:aws-region:111122223333:domain/my-opensearch-domain"}}]' \ --scrape-configuration configurationBlob=<base64-encoded-blob> \ --destination '{"ampConfiguration":{"workspaceArn":"arn:aws:aps:aws-region:444455556666:workspace/ws-workspace-id"}}' \ --role-configuration '{"sourceRoleArn":"arn:aws:iam::111122223333:role/Source", "targetRoleArn":"arn:aws:iam::444455556666:role/Target"}'
  4. Validasi pembuatan scraper.

    aws amp list-scrapers

Temukan dan hapus pencakar

Anda dapat menggunakan AWS API atau AWS CLI untuk membuat daftar pencakar di akun Anda atau untuk menghapusnya.

catatan

Pastikan Anda menggunakan versi terbaru dari AWS CLI atau SDK. Versi terbaru memberi Anda fitur dan fungsionalitas terbaru, serta pembaruan keamanan. Atau, gunakan AWS CloudShell, yang menyediakan pengalaman baris perintah yang selalu terkini, secara otomatis.

Untuk membuat daftar semua pencakar di akun Anda, gunakan operasi ListScrapers API. Atau, dengan AWS CLI, hubungi:

aws amp list-scrapers

Untuk menghapus scraper, scraperId cari scraper yang ingin Anda hapus, gunakan ListScrapers operasi, lalu gunakan DeleteScraper operasi untuk menghapusnya. Atau, dengan AWS CLI, hubungi:

aws amp delete-scraper --scraper-id scraperId

Metrik yang dikumpulkan dari OpenSearch Layanan Amazon

Saat Anda mengintegrasikan dengan OpenSearch Layanan Amazon, pengumpul Layanan Terkelola Amazon untuk Prometheus secara otomatis mengikis met Prometheus-compatible rik yang menggambarkan kesehatan dan kinerja domain Anda. Kolektor memancarkan beberapa ratus metrik; tabel berikut mencantumkan metrik representatif dari setiap kategori. opensearch_indices_Metrik dalam tabel berikut digabungkan di seluruh domain, dan banyak yang memiliki varian primer saja dan total (berakhiran atau). _primary _total Kolektor juga memancarkan statistik yang sama per indeks, awalanopensearch_index_stats_, dan metrik per-pecahan yang diawali. opensearch_indices_shards_

Metrik Deskripsi/Tujuan

opensearch_cluster_status kesehatan

Status kesehatan cluster (hijau, kuning, atau merah).

opensearch_cluster_health_number_of_node

Jumlah node dalam cluster.

opensearch_cluster_health_nomor_data_node

Jumlah node data dalam cluster.

opensearch_cluster_health_active_primary_shards

Jumlah pecahan primer aktif.

opensearch_cluster_health_active_shards

Jumlah total pecahan aktif, termasuk pecahan primer dan replika.

opensearch_cluster_health_relocating_shards

Jumlah pecahan yang pindah antar node.

opensearch_cluster_health_initialising_shards

Jumlah pecahan yang diinisialisasi.

opensearch_cluster_health_unassigned_shards

Jumlah pecahan yang tidak ditetapkan ke node.

opensearch_cluster_health_tertunda_unassigned_shards

Jumlah pecahan yang tidak ditetapkan yang penugasannya tertunda.

opensearch_cluster_health_nomor_tugas_tergantung

Jumlah tugas tingkat cluster yang diantri dan menunggu untuk dijalankan.

opensearch_cluster_health_nomor_di_flight_fetch

Jumlah permintaan pengambilan pecahan yang sedang berlangsung.

opensearch_cluster_health_task_max_waiting_di_queue_millis

Waktu terlama tugas menunggu dalam antrian, dalam milidetik.

Metrik Deskripsi/Tujuan

opensearch_os_cpu_persen

Persentase CPU yang digunakan oleh sistem operasi pada node.

opensearch_os_load1

Rata-rata beban sistem operasi selama 1 menit terakhir. Kolektor juga memancarkan opensearch_os_load5 danopensearch_os_load15.

opensearch_os_mem_used_byte

Jumlah memori fisik yang digunakan, dalam byte. Kolektor juga memancarkan opensearch_os_mem_free_bytesopensearch_os_mem_actual_used_bytes,, danopensearch_os_mem_actual_free_bytes.

opensearch_jvm_memory_used_byte

Jumlah memori JVM yang digunakan, dalam byte, berdasarkan area memori (heap dan non-heap). Metrik terkait termasuk opensearch_jvm_memory_committed_bytes dan opensearch_jvm_memory_max_bytes.

opensearch_jvm_gc_collection_seconds_count

Jumlah total acara pengumpulan sampah JVM. Gunakan denganopensearch_jvm_gc_collection_seconds_sum, total waktu yang dihabiskan dalam pengumpulan sampah.

opensearch_jvm_uptime_second

Waktu aktif JVM, dalam hitungan detik.

opensearch_thread_pool_active_count

Jumlah thread aktif di setiap kumpulan thread. Metrik terkait meliputiopensearch_thread_pool_queue_count,opensearch_thread_pool_rejected_count, danopensearch_thread_pool_completed_count.

opensearch_filesystem_data_available_bytes

Jumlah ruang disk yang tersedia untuk node, dalam byte. Metrik terkait termasuk opensearch_filesystem_data_free_bytes dan opensearch_filesystem_data_size_bytes.

opensearch_filesystem_io_stats_device_read_operations_count

Jumlah operasi pembacaan disk. Kolektor juga memancarkan jumlah operasi tulis dan total serta ukuran baca dan tulis (misalnya,opensearch_filesystem_io_stats_device_read_size_kilobytes_sum).

opensearch_process_cpu_persen

Persentase CPU yang digunakan oleh OpenSearch proses.

opensearch_process_mem_resident_size_bytes

Ukuran memori residen OpenSearch proses, dalam byte.

opensearch_process_open_file_count

Jumlah deskriptor file yang dibuka oleh OpenSearch proses.

opensearch_breakers_tersandung

Jumlah total kali setiap pemutus sirkuit tersandung. Metrik terkait termasuk opensearch_breakers_estimated_size_bytes dan opensearch_breakers_limit_size_bytes.

opensearch_transport_rx_size_byte_total

Jumlah total data yang diterima melalui lapisan transport antar node, dalam byte. Kolektor juga memancarkan opensearch_transport_tx_size_bytes_total dan menghitung paket.

opensearch_indexing_presire_current_semua_dalam_byte

Memori saat ini dikonsumsi oleh permintaan pengindeksan, dalam byte, dengan opensearch_indexing_pressure_limit_in_bytes batas yang dikonfigurasi.

Metrik Deskripsi/Tujuan

opensearch_indices_docs

Jumlah dokumen. Metrik terkait meliputiopensearch_indices_docs_deleted,opensearch_indices_docs_primary, danopensearch_indices_docs_total.

opensearch_indices_store_size_bytes

Ukuran total indeks pada disk, dalam byte, dengan opensearch_indices_store_size_bytes_primary dan opensearch_indices_store_size_bytes_total varian.

opensearch_indices_index_index_total

Jumlah total dokumen yang diindeks. Gunakan dengan opensearch_indices_indexing_index_time_seconds_total untuk pengindeksan latensi.

opensearch_indices_indexing_is_dibatasi

Menunjukkan apakah pengindeksan saat ini dibatasi, dengan total opensearch_indices_indexing_throttle_time_seconds_total waktu yang dibatasi.

opensearch_indices_search_query_total

Jumlah total permintaan pencarian. Gunakan dengan opensearch_indices_search_query_time_seconds untuk latensi kueri.

opensearch_indices_search_fetch_total

Jumlah total operasi pengambilan, dengan lat opensearch_indices_search_fetch_time_seconds ensi fetch.

opensearch_indices_dapat_total

Jumlah total operasi get, dengan opensearch_indices_get_time_seconds untuk get latency.

opensearch_indices_gabung_total

Jumlah total penggabungan segmen selesai. Metrik terkait termasuk opensearch_indices_merges_current dan opensearch_indices_merges_total_time_seconds_total.

opensearch_indices_refresh total

Jumlah total operasi penyegaran indeks, dengan opensearch_indices_refresh_time_seconds_total waktu penyegaran.

opensearch_indices_flush_total

Jumlah total operasi flush indeks, dengan opensearch_indices_flush_time_seconds waktu flush.

opensearch_indices_segments_count

Jumlah segmen. Kolektor juga memancarkan metrik memori per segmen (misalnya, opensearch_indices_segments_memory_bytes danopensearch_indices_segment_terms_memory_total).

opensearch_indices_translog_operasi

Jumlah operasi dalam log transaksi, dengan opensearch_indices_translog_size_in_bytes ukurannya.

opensearch_indices_fielddata_memory_size_bytes

Memori yang digunakan oleh cache data lapangan, dalam byte, dengan opensearch_indices_fielddata_evictions untuk penggusuran.

opensearch_indices_query_cache_memory_size_bytes

Memori yang digunakan oleh cache query, dalam byte. Metrik terkait termasuk opensearch_indices_query_cache_count dan opensearch_indices_query_cache_evictions.

opensearch_indices_request_cache_memory_size_bytes

Memori yang digunakan oleh cache permintaan, dalam byte. Metrik terkait termasuk opensearch_indices_request_cache_count dan opensearch_indices_request_cache_evictions.

Batasan

Integrasi OpenSearch Layanan Amazon dengan Layanan Terkelola Amazon untuk Prometheus memiliki batasan berikut:

  • Hanya didukung untuk domain OpenSearch Layanan yang memiliki akses Amazon Virtual Private Cloud. Domain dengan akses publik tidak didukung.

  • Scraper mengumpulkan metrik dari satu domain OpenSearch Layanan. Untuk mengumpulkan metrik dari lebih dari satu domain, buat scraper terpisah untuk setiap domain.