Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
CloudWatch solusi: beban kerja NGINX di Amazon EC2
Solusi ini membantu Anda mengonfigurasi pengumpulan metrik out-of-the-box menggunakan CloudWatch agen untuk aplikasi NGINX yang berjalan pada instans EC2. Untuk informasi umum tentang semua solusi CloudWatch pengamatan, lihatCloudWatch solusi pengamatan.
Topik
Persyaratan
Solusi ini relevan untuk kondisi berikut:
-
Versi yang didukung: NGINX versi 1.24
-
Komputasi: Amazon EC2
-
Mendukung hingga 500 instans EC2 di semua beban kerja NGINX dalam satu waktu Wilayah AWS
-
Versi terbaru dari CloudWatch agent
-
Eksportir Prometheus: nginxinc/nginx -prometheus-eksportir (lisensi Apache 2.0)
-
Agen SSM diinstal pada instans EC2
catatan
AWS Systems Manager (Agen SSM) sudah diinstal sebelumnya pada beberapa Amazon Machine Images (AMI) yang disediakan oleh AWS dan pihak ketiga tepercaya. Jika agen tidak diinstal, Anda dapat menginstalnya secara manual menggunakan prosedur untuk jenis sistem operasi Anda.
Manfaat
Solusi ini memberikan pemantauan NGINX, memberikan wawasan berharga untuk kasus penggunaan berikut:
-
Tinjau metrik koneksi untuk mengidentifikasi potensi hambatan, masalah koneksi, atau penggunaan yang tidak terduga.
-
Analisis volume permintaan HTTP untuk memahami beban lalu lintas keseluruhan pada NGINX.
Di bawah ini adalah keuntungan utama dari solusi ini:
-
Mengotomatiskan pengumpulan metrik untuk NGINX menggunakan konfigurasi CloudWatch agen, menghilangkan instrumentasi manual.
-
Menyediakan CloudWatch dasbor konsolidasi yang telah dikonfigurasi sebelumnya untuk metrik NGINX. Dasbor akan secara otomatis menangani metrik dari instans NGINX EC2 baru yang dikonfigurasi menggunakan solusi, bahkan jika metrik tersebut tidak ada saat Anda pertama kali membuat dasbor.
Gambar berikut adalah contoh dasbor untuk solusi ini.
Biaya
Solusi ini membuat dan menggunakan sumber daya di akun Anda. Anda dikenai biaya untuk penggunaan standar, termasuk yang berikut:
-
Semua metrik yang dikumpulkan oleh CloudWatch agen untuk solusi ini dipublikasikan ke CloudWatch Log menggunakan Embedded Metric Format (EMF). CloudWatch Log ini dikenakan biaya berdasarkan volume dan periode retensinya. Oleh karena itu, Anda tidak akan ditagih untuk panggilan PutMetricData API apa pun untuk solusi ini. Metrik yang diekstrak dan dicerna dari log Anda akan dikenakan biaya sebagai metrik khusus. Jumlah metrik yang digunakan oleh solusi ini tergantung pada jumlah host EC2.
-
Setiap host NGINX EC2 yang dikonfigurasi untuk solusi menerbitkan total delapan metrik.
-
-
Satu dasbor kustom.
Untuk informasi selengkapnya tentang CloudWatch harga, lihat CloudWatch Harga Amazon
Kalkulator harga dapat membantu Anda memperkirakan perkiraan biaya bulanan untuk menggunakan solusi ini.
Untuk menggunakan kalkulator harga untuk memperkirakan biaya solusi bulanan Anda
-
Buka kalkulator CloudWatch harga Amazon
. -
Untuk Pilih Wilayah, pilih Wilayah AWS tempat Anda ingin menerapkan solusi.
-
Di bagian Metrik, untuk Jumlah metrik, masukkan
8 * number of EC2 instances configured for this solution. -
Di bagian Log, untuk Log Standar: Data Tertelan, masukkan perkiraan volume log harian yang dihasilkan oleh CloudWatch Agen di semua host EC2. Misalnya, lima instans EC2 menghasilkan kurang dari 1000 byte per hari. Setelah diatur, Anda dapat memeriksa penggunaan byte menggunakan
IncomingBytesmetrik, dijual oleh CloudWatch Logs. Pastikan untuk memilih grup log yang sesuai. -
Di bagian Log, untuk Log Storage/Archival (Log Standar dan Vended), pilih
Yes to Store Logs: Assuming 1 month retention. Ubah nilai ini jika Anda memutuskan untuk membuat perubahan khusus pada periode retensi. -
Di bagian Dasbor dan Alarm, untuk Jumlah Dasbor, masukkan.
1 -
Anda dapat melihat perkiraan biaya bulanan Anda di bagian bawah kalkulator harga.
CloudWatch konfigurasi agen untuk solusi ini
CloudWatch Agen adalah perangkat lunak yang berjalan terus menerus dan mandiri di server Anda dan di lingkungan kontainer. Ini mengumpulkan metrik, log, dan jejak dari infrastruktur dan aplikasi Anda dan mengirimkannya ke CloudWatch dan X-Ray.
Untuk informasi lebih lanjut tentang CloudWatch agen, lihatKumpulkan metrik, log, dan jejak menggunakan CloudWatch agen.
Konfigurasi agen dalam solusi ini mengumpulkan seperangkat metrik untuk membantu Anda mulai memantau dan mengamati beban kerja NGINX Anda. CloudWatch Agen dapat dikonfigurasi untuk mengumpulkan lebih banyak metrik NGINX daripada yang ditampilkan dasbor secara default. Untuk daftar semua metrik NGINX yang dapat Anda kumpulkan, lihat Met rik untuk NGINX OSS.
Sebelum mengkonfigurasi CloudWatch agen, Anda harus terlebih dahulu mengkonfigurasi NGINX untuk mengekspos metriknya. Kedua, Anda harus menginstal dan mengkonfigurasi pengekspor metrik Prometheus pihak ketiga.
Mengekspos metrik NGINX
catatan
Perintah berikut adalah untuk Linux. Periksa halaman NGINX untuk Windows
Anda harus terlebih dahulu mengaktifkan stub_status modul. Tambahkan blok lokasi baru di file konfigurasi NGINX Anda. Tambahkan baris berikut di server blok Anda nginx.conf untuk mengaktifkan modul NGINX: stub_status
location /nginx_status { stub_status on; allow 127.0.0.1; # Allow only localhost to access deny all; # Deny all other IPs }
Sebelum memuat ulang NGINX, validasi konfigurasi NGINX Anda:
sudo nginx -t
Perintah validasi ini membantu mencegah kesalahan yang tidak terduga, yang dapat menyebabkan situs web Anda rusak. Contoh berikut menunjukkan respons yang berhasil:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Setelah Anda berhasil memvalidasi konfigurasi yang diperbarui, muat ulang NGINX (tidak ada output yang diharapkan):
sudo systemctl reload nginx
Perintah ini menginstruksikan proses NGINX untuk memuat ulang konfigurasi. Muat ulang lebih anggun dibandingkan dengan restart penuh. Pemuatan ulang memulai proses pekerja baru dengan konfigurasi baru, dengan anggun mematikan proses pekerja lama.
Uji titik akhir status NGINX:
curl http://127.0.0.1/nginx_status
Contoh berikut menunjukkan respons yang berhasil:
Active connections: 1 server accepts handled requests 6 6 6 Reading: 0 Writing: 1 Waiting: 0
Contoh berikut menunjukkan respons kegagalan (tinjau langkah-langkah sebelumnya sebelum melanjutkan):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>The page is not found</title> ...
Konfigurasikan pengekspor metrik Prometheus
Unduh rilis eksportir NGINX Prometheus terbaru dari repositori resmi. GitHub
Contoh berikut menunjukkan perintah untuk AMD64:
cd /tmp wget https://github.com/nginxinc/nginx-prometheus-exporter/releases/download/v1.3.0/nginx-prometheus-exporter_1.3.0_linux_amd64.tar.gz tar -xzvf nginx-prometheus-exporter_1.3.0_linux_amd64.tar.gz sudo cp nginx-prometheus-exporter /usr/local/bin/ rm /tmp/nginx-prometheus-exporter*
Jalankan eksportir Prometheus dan arahkan ke halaman status stub NGINX:
nohup /usr/local/bin/nginx-prometheus-exporter -nginx.scrape-uri http://127.0.0.1/nginx_status &>/dev/null &
Contoh berikut menunjukkan respons (ID pekerjaan latar belakang dan PID):
[1] 74699
Uji titik akhir NGINX Prometheus
Validasikan bahwa eksportir NGINX Prometheus telah mulai mengekspos metrik yang relevan:
curl http://localhost:port-number/metrics
Contoh berikut menunjukkan respons yang berhasil:
# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles. # TYPE go_gc_duration_seconds summary go_gc_duration_seconds{quantile="0"} 0 go_gc_duration_seconds{quantile="0.25"} 0 ... # HELP nginx_connections_accepted Accepted client connections # TYPE nginx_connections_accepted counter nginx_connections_accepted 14 # HELP nginx_connections_active Active client connections # TYPE nginx_connections_active gauge nginx_connections_active 1 ... # TYPE promhttp_metric_handler_requests_total counter promhttp_metric_handler_requests_total{code="200"} 1 promhttp_metric_handler_requests_total{code="500"} 0 promhttp_metric_handler_requests_total{code="503"} 0
Konfigurasi agen untuk solusi ini
Metrik yang dikumpulkan oleh agen ditentukan dalam konfigurasi agen. Solusi ini menyediakan konfigurasi agen untuk mengumpulkan metrik yang direkomendasikan dengan dimensi yang sesuai untuk dasbor solusi.
Langkah-langkah untuk menerapkan solusi dijelaskan nanti diMenyebarkan agen untuk solusi Anda. Informasi berikut dimaksudkan untuk membantu Anda memahami cara menyesuaikan konfigurasi agen untuk lingkungan Anda.
Anda harus menyesuaikan beberapa bagian agen dan konfigurasi Prometheus untuk lingkungan Anda seperti nomor port yang digunakan oleh eksportir Prometheus.
Pelabuhan yang digunakan oleh eksportir Prometheus dapat diverifikasi menggunakan perintah berikut:
sudo netstat -antp | grep nginx-prom
Contoh berikut menunjukkan respons (lihat nilai port 9113):
tcp6 0 0 :::9113 :::* LISTEN 76398/nginx-prometh
Konfigurasi agen untuk host NGINX
CloudWatch Agen dengan pemantauan Prometheus membutuhkan dua konfigurasi untuk mengikis metrik Prometheus. Setiap konfigurasi akan disimpan sebagai parameter terpisah di Penyimpanan Parameter SSM, seperti yang dijelaskan nanti. Langkah 2: Simpan file konfigurasi CloudWatch agen yang direkomendasikan di Penyimpanan Parameter Manajer Sistem
Konfigurasi pertama adalah untuk eksportir Prometheus, seperti yang didokumentasikan dalam dokumentasi scrape_config Pro metheus.
Konfigurasi Prometheus
Ganti port-number dengan port server Anda.
global: scrape_interval: 30s scrape_timeout: 10s scrape_configs: - job_name: 'nginx' metrics_path: /metrics static_configs: - targets: ['localhost:port-number'] ec2_sd_configs: - port:port-numberrelabel_configs: - source_labels: ['__meta_ec2_instance_id'] target_label: InstanceId metric_relabel_configs: - source_labels: ['__name__'] regex: 'nginx_up|nginx_http_requests_total|nginx_connections_.*' action: keep
CloudWatch konfigurasi agen
Sesuai konfigurasi CloudWatch agen sebelumnya, metrik ini dipublikasikan melalui CloudWatch Log menggunakan format metrik tertanam (EMF). Log ini dikonfigurasi untuk menggunakan grup log nginx. Anda dapat menyesuaikan log_group_name dengan nama berbeda yang mewakili CloudWatch log.
Jika Anda menggunakan Windows Server, prometheus_config_path atur konfigurasi berikut keC:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\prometheus.yaml.
{ "agent": { "metrics_collection_interval": 60 }, "logs": { "metrics_collected": { "prometheus": { "log_group_name": "nginx", "prometheus_config_path": "/opt/aws/amazon-cloudwatch-agent/etc/prometheus.yaml", "emf_processor": { "metric_declaration_dedup": true, "metric_namespace": "CWAgent", "metric_declaration":[ { "source_labels":["InstanceId"], "metric_selectors":["nginx_up", "nginx_http_requests_total", "nginx_connections*"], "dimensions": [["InstanceId"]] } ] } } } } }
Menyebarkan agen untuk solusi Anda
Ada beberapa pendekatan untuk menginstal CloudWatch agen, tergantung pada kasus penggunaan. Anda merekomendasikan menggunakan Manajer Sistem untuk solusi ini. Ini memberikan pengalaman konsol dan membuatnya lebih mudah untuk mengelola armada server terkelola dalam satu AWS akun. Petunjuk di bagian ini menggunakan Manajer Sistem dan ditujukan untuk saat Anda tidak menjalankan CloudWatch agen dengan konfigurasi yang ada. Anda dapat memeriksa apakah CloudWatch agen sedang berjalan dengan mengikuti langkah-langkah diVerifikasi bahwa CloudWatch agen sedang berjalan.
Jika Anda sudah menjalankan CloudWatch agen di host EC2 tempat beban kerja digunakan dan mengelola konfigurasi agen, Anda dapat melewati petunjuk di bagian ini dan mengikuti mekanisme penerapan yang ada untuk memperbarui konfigurasi. Pastikan untuk menggabungkan konfigurasi CloudWatch agen dan Prometheus baru dengan konfigurasi yang sudah ada, lalu terapkan konfigurasi gabungan. Jika Anda menggunakan Manajer Sistem untuk menyimpan dan mengelola konfigurasi untuk CloudWatch agen, Anda dapat menggabungkan konfigurasi ke nilai parameter yang ada. Untuk informasi selengkapnya, lihat Mengel CloudWatch ola file konfigurasi agen.
catatan
Menggunakan System Manager untuk menerapkan konfigurasi CloudWatch agen berikut akan menggantikan atau mengganti konfigurasi CloudWatch agen yang ada pada instans EC2 Anda. Anda dapat memodifikasi konfigurasi ini agar sesuai dengan lingkungan unik atau kasus penggunaan Anda. Metrik yang ditentukan dalam konfigurasi adalah minimum yang diperlukan untuk dasbor yang disediakan solusi.
Proses penerapan meliputi langkah-langkah berikut:
-
Langkah 1: Pastikan instans EC2 target memiliki izin IAM yang diperlukan.
-
Langkah 2: Simpan file konfigurasi agen yang direkomendasikan di Penyimpanan Parameter Manajer Sistem.
-
Langkah 3: Instal CloudWatch agen pada satu atau beberapa instans EC2 menggunakan CloudFormation tumpukan.
-
Langkah 4: Verifikasi pengaturan agen dikonfigurasi dengan benar.
Langkah 1: Pastikan instans EC2 target memiliki izin IAM yang diperlukan
Anda harus memberikan izin bagi Manajer Sistem untuk menginstal dan mengkonfigurasi CloudWatch agen. Anda harus memberikan izin kepada CloudWatch agen untuk menerbitkan telemetri dari instans EC2 Anda ke. CloudWatch Anda juga harus memberikan akses baca EC2 CloudWatch agen. Akses baca EC2 diperlukan agar EC2 InstanceId ditambahkan sebagai dimensi metrik. Persyaratan tambahan ini didorong oleh prometheus.yaml seperti yang dijelaskan di atas karena digunakan
__meta_ec2_instance_id melalui EC2 Service Discovery.
Pastikan peran IAM yang dilampirkan ke instans memiliki kebijakan CloudWatchAgentServerPolicy, AmazonSSMManagedInstanceCore, dan AmazonEC2ReadOnlyAccess IAM yang terlampir.
-
Setelah peran dibuat, lampirkan peran ke instans EC2 Anda. Untuk melampirkan peran ke instans EC2, ikuti langkah-langkah di Lamp irkan peran IAM ke instance.
Langkah 2: Simpan file konfigurasi CloudWatch agen yang direkomendasikan di Penyimpanan Parameter Manajer Sistem
Parameter Store menyederhanakan penginst CloudWatch alan agen pada instans EC2 dengan menyimpan dan mengelola parameter konfigurasi dengan aman, menghilangkan kebutuhan akan nilai hardcode. Ini memastikan proses penerapan yang lebih aman dan fleksibel, memungkinkan manajemen terpusat dan pembaruan konfigurasi yang lebih mudah di beberapa instans.
Gunakan langkah-langkah berikut untuk menyimpan file konfigurasi CloudWatch agen yang direkomendasikan sebagai parameter di Penyimpanan Parameter.
Untuk membuat file konfigurasi CloudWatch agen sebagai parameter
Buka AWS Systems Manager konsol di https://console.aws.amazon.com/systems-manager/
. -
Verifikasi bahwa Wilayah yang dipilih pada konsol adalah Wilayah tempat NGINX berjalan.
-
Dari panel navigasi, pilih Manajemen Aplikasi, Penyimpanan Parameter
-
Ikuti langkah-langkah ini untuk membuat parameter baru untuk konfigurasi.
-
Pilih Buat parameter.
-
Di kotak Nama, masukkan nama yang akan Anda gunakan untuk mereferensikan file konfigurasi CloudWatch agen di langkah selanjutnya. Misalnya,
AmazonCloudWatch-NGINX-CloudWatchAgent-Configuration. -
(Opsional) Di kotak Deskripsi, ketik deskripsi untuk parameter.
-
Untuk tingkat Parameter, pilih Standar.
-
Untuk Jenis, pilih String.
-
Untuk Jenis data, pilih teks.
-
Di kotak Nilai, tempel blok JSON yang sesuai yang terdaftar diKonfigurasi agen untuk host NGINX. Pastikan untuk menyesuaikan sesuai kebutuhan. Misalnya, yang relevan
log_group_name. -
Pilih Buat parameter.
-
Untuk membuat file konfigurasi Prometheus sebagai parameter
Buka AWS Systems Manager konsol di https://console.aws.amazon.com/systems-manager/
. -
Dari panel navigasi, pilih Manajemen Aplikasi, Penyimpanan Parameter
-
Ikuti langkah-langkah ini untuk membuat parameter baru untuk konfigurasi.
-
Pilih Buat parameter.
-
Di kotak Nama, masukkan nama yang akan Anda gunakan untuk mereferensikan file konfigurasi di langkah selanjutnya. Misalnya,
AmazonCloudWatch-NGINX-Prometheus-Configuration. -
(Opsional) Di kotak Deskripsi, ketik deskripsi untuk parameter.
-
Untuk tingkat Parameter, pilih Standar.
-
Untuk Jenis, pilih String.
-
Untuk Jenis data, pilih teks.
-
Di kotak Nilai, tempel blok YAML yang sesuai yang terdaftar diKonfigurasi agen untuk host NGINX. Pastikan untuk menyesuaikan sesuai kebutuhan. Misalnya, nomor port yang relevan sesuai
targets. -
Pilih Buat parameter.
-
Langkah 3: Instal CloudWatch agen dan terapkan konfigurasi menggunakan CloudFormation templat
Anda dapat menggunakan AWS CloudFormation untuk menginstal agen dan mengonfigurasinya untuk menggunakan konfigurasi CloudWatch agen yang Anda buat pada langkah sebelumnya.
Untuk menginstal dan mengkonfigurasi CloudWatch agen untuk solusi ini
-
Buka panduan CloudFormation buat tumpukan cepat menggunakan tautan ini: https://console.aws.amazon.com/cloudformation/home? #/? stacks/quickcreate TemplateURL =. https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/CloudWatchAgent/CFN/v1.0.0/cw-agent-installation-template-with-prometheus-config-1.0.0.json
-
Verifikasi bahwa Wilayah yang dipilih pada konsol adalah Wilayah tempat beban kerja NGINX berjalan.
-
Untuk nama Stack, masukkan nama untuk mengidentifikasi tumpukan ini, seperti
CWAgentInstallationStack. -
Di bagian Parameter, tentukan yang berikut ini:
-
Untuk CloudWatchAgentConfigSSM, masukkan nama AWS Systems Manager parameter untuk konfigurasi agen yang Anda buat sebelumnya, seperti
AmazonCloudWatch-NGINX-CloudWatchAgent-Configuration. -
Untuk PrometheusConfig SSM, masukkan nama AWS Systems Manager parameter untuk konfigurasi agen yang Anda buat sebelumnya, seperti
AmazonCloudWatch-NGINX-Prometheus-Configuration. -
Untuk memilih instance target, Anda memiliki dua opsi.
-
Untuk InstanceIds, tentukan daftar ID instance yang dipisahkan koma dari daftar ID instans tempat Anda ingin menginstal CloudWatch agen dengan konfigurasi ini. Anda dapat mencantumkan satu contoh atau beberapa contoh.
-
Jika Anda menerapkan dalam skala besar, Anda dapat menentukan TagKey dan yang sesuai TagValue untuk menargetkan semua instans EC2 dengan tag dan nilai ini. Jika Anda menentukan a TagKey, Anda harus menentukan yang sesuai TagValue. (Untuk grup Penskalaan Otomatis, tent
aws:autoscaling:groupNameukan untuk TagKey dan tentukan nama grup Penskalaan Otomatis untuk diterapkan TagValue ke semua instance dalam grup Penskalaan Otomatis.)
-
-
-
Tinjau pengaturan, lalu pilih Buat tumpukan.
Jika Anda ingin mengedit file template terlebih dahulu untuk menyesuaikannya, pilih opsi Ungg ah file template di bawah Create Stack Wizard untuk mengunggah template yang diedit. Untuk informasi selengkapnya, lihat Membuat tumpukan di CloudFormation konsol. Anda dapat menggunakan tautan berikut untuk mengunduh template: https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/CloudWatchAgent/CFN/v1.0.0/cw-agent-installation-template-with-prometheus-config-1.0.0.json
catatan
Setelah langkah ini selesai, parameter Manajer Sistem ini akan dikaitkan dengan CloudWatch agen yang berjalan di instance yang ditargetkan. Ini artinya bahwa:
-
Jika parameter Manajer Sistem dihapus, agen akan berhenti.
-
Jika parameter Manajer Sistem diedit, perubahan konfigurasi akan secara otomatis berlaku untuk agen pada frekuensi terjadwal yaitu 30 hari secara default.
-
Jika Anda ingin segera menerapkan perubahan pada parameter Manajer Sistem ini, Anda harus menjalankan langkah ini lagi. Untuk informasi selengkapnya tentang asosiasi, lihat Bekerja dengan asosiasi di Manajer Sistem.
Langkah 4: Verifikasi pengaturan agen dikonfigurasi dengan benar
Anda dapat memverifikasi apakah CloudWatch agen diinstal dengan mengikuti langkah-langkah diVerifikasi bahwa CloudWatch agen sedang berjalan. Jika CloudWatch agen tidak diinstal dan berjalan, pastikan Anda telah mengatur semuanya dengan benar.
-
Pastikan Anda telah melampirkan peran dengan izin yang benar untuk instans EC2 seperti yang dijelaskan dalamLangkah 1: Pastikan instans EC2 target memiliki izin IAM yang diperlukan.
-
Pastikan Anda telah mengkonfigurasi JSON dengan benar untuk parameter Manajer Sistem. Ikuti langkah-langkah di Memecahkan masalah instalasi CloudWatch agen dengan CloudFormation.
Jika semuanya diatur dengan benar, maka Anda akan melihat metrik NGINX yang dipublikasikan ke. CloudWatch Anda dapat memeriksa CloudWatch konsol untuk memverifikasi bahwa mereka sedang dipublikasikan.
Untuk memverifikasi bahwa metrik NGINX sedang dipublikasikan ke CloudWatch
Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/
. -
Pilih Metrik, Metrik Klasik.
-
Pastikan Anda telah memilih Wilayah tempat Anda menerapkan solusi, dan pilih ruang nama khusus, CWAgent.
-
Cari metrik seperti
nginx_http_requests_total. Jika Anda melihat hasil untuk metrik ini, maka metrik tersebut dipublikasikan ke CloudWatch.
Buat dasbor solusi NGINX
Dasbor yang disediakan oleh solusi ini menyajikan metrik beban kerja NGINX dengan menggabungkan dan menyajikan metrik di semua instance. Dasbor menunjukkan rincian kontributor teratas (10 teratas per widget metrik) untuk setiap metrik. Ini membantu Anda mengidentifikasi outlier atau instance dengan cepat yang secara signifikan berkontribusi pada metrik yang diamati.
Untuk membuat dasbor, Anda dapat menggunakan opsi berikut:
Gunakan CloudWatch konsol untuk membuat dasbor.
Gunakan AWS CloudFormation konsol untuk menyebarkan dasbor.
Unduh AWS CloudFormation infrastruktur sebagai kode dan integrasikan sebagai bagian dari otomatisasi integrasi berkelanjutan (CI) Anda.
Dengan menggunakan CloudWatch konsol untuk membuat dasbor, Anda dapat melihat pratinjau dasbor sebelum benar-benar membuat dan dikenakan biaya.
catatan
Dasbor yang dibuat dengan CloudFormation solusi ini menampilkan metrik dari Wilayah tempat solusi diterapkan. Pastikan untuk membuat CloudFormation tumpukan di Wilayah tempat metrik NGINX Anda diterbitkan.
Jika Anda telah menentukan namespace khusus selain CWAgent di konfigurasi CloudWatch agen, Anda harus mengubah CloudFormation template untuk dasbor untuk diganti CWAgent dengan namespace khusus yang Anda gunakan.
Untuk membuat dasbor melalui CloudWatch Konsol
-
Buka CloudWatch Console Create Dashboard menggunakan tautan ini: https://console.aws.amazon.com/cloudwatch/home? #dashboards? DasborTemplate= &referrer=os-katalogNginxOnEc2.
-
Verifikasi bahwa Wilayah yang dipilih pada konsol adalah Wilayah tempat beban kerja NGINX berjalan.
-
Masukkan nama dasbor, lalu pilih Buat Dasbor.
Untuk membedakan dasbor ini dengan mudah dari dasbor serupa di Wilayah lain, sebaiknya sertakan nama Wilayah dalam nama dasbor, seperti
NGINXDashboard-us-east-1. -
Pratinjau dasbor dan pilih Simpan untuk membuat dasbor.
Untuk membuat dasbor melalui CloudFormation
-
Buka panduan CloudFormation buat tumpukan cepat menggunakan tautan ini: https://console.aws.amazon.com/cloudformation/home? #/? stacks/quickcreate TemplateURL =. https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/NGINX_EC2/CloudWatch/CFN/v1.0.0/dashboard-template-1.0.0.json
-
Verifikasi bahwa Wilayah yang dipilih pada konsol adalah Wilayah tempat beban kerja NGINX berjalan.
-
Untuk nama Stack, masukkan nama untuk mengidentifikasi tumpukan ini, seperti
NGINXDashboardStack. -
Di bagian Parameter, tentukan nama dasbor di bawah DashboardName parameter.
-
Untuk membedakan dasbor ini dengan mudah dari dasbor serupa di Wilayah lain, sebaiknya sertakan nama Wilayah dalam nama dasbor, seperti
NGINXDashboard-us-east-1. -
Mengakui kemampuan akses untuk transformasi di bawah Kemampuan dan transformasi. Perhatikan bahwa CloudFormation tidak menambahkan sumber daya IAM apa pun.
-
Tinjau pengaturan, lalu pilih Buat tumpukan.
-
Setelah status tumpukan adalah CREATE_COMPLETE, pilih tab Resources di bawah tumpukan yang dibuat dan kemudian pilih tautan di bawah ID Fisik untuk pergi ke dasbor. Anda juga dapat mengakses dasbor di CloudWatch konsol dengan memilih Dasbor di panel navigasi kiri konsol, dan menemukan nama dasbor di bawah Dasbor K ustom.
Jika Anda ingin mengedit file template terlebih dahulu untuk menyesuaikannya, pilih opsi Ungg ah file template di bawah Create Stack Wizard untuk mengunggah template yang diedit. Untuk informasi selengkapnya, lihat Membuat tumpukan di CloudFormation konsol. Anda dapat menggunakan tautan berikut untuk mengunduh template: https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/NGINX_EC2/CloudWatch/CFN/v1.0.0/dashboard-template-1.0.0.json
Memulai dengan dasbor NGINX
Berikut adalah beberapa tugas yang dapat Anda coba dengan dasbor NGINX baru. Tugas-tugas ini memungkinkan Anda untuk memvalidasi bahwa dasbor berfungsi dengan benar dan memberi Anda beberapa pengalaman langsung menggunakannya untuk memantau beban kerja NGINX. Saat Anda mencobanya, Anda akan terbiasa menavigasi dasbor dan menafsirkan metrik yang divisualisasikan.
Tinjau metrik koneksi
Di bagian Koneksi, Anda dapat menemukan beberapa metrik utama yang memberikan wawasan tentang penanganan koneksi klien server NGINX Anda. Memantau metrik koneksi ini dapat membantu Anda mengidentifikasi potensi hambatan, masalah koneksi, atau pola koneksi yang tidak terduga.
-
Koneksi klien yang diterima
-
Koneksi klien aktif
-
Koneksi klien yang ditangani
-
Permintaan membaca koneksi
-
Koneksi klien tidak aktif
-
Koneksi menulis tanggapan
Analisis volume permintaan HTTP
requestMetrik di bagian Permintaan HTTP menunjukkan jumlah total permintaan HTTP yang ditangani oleh server NGINX. Melacak metrik ini dari waktu ke waktu dapat membantu Anda memahami beban lalu lintas keseluruhan pada infrastruktur NGINX Anda dan merencanakan alokasi sumber daya dan penskalaan yang sesuai.