Aktifkan Sinyal Aplikasi di EKS klaster Amazon baru dengan aplikasi contoh - Amazon CloudWatch

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

Aktifkan Sinyal Aplikasi di EKS klaster Amazon baru dengan aplikasi contoh

Untuk mencoba Sinyal CloudWatch Aplikasi pada aplikasi sampel sebelum Anda menginstruksikan aplikasi Anda sendiri dengannya, ikuti petunjuk di bagian ini. Instruksi ini menggunakan skrip untuk membantu Anda membuat EKS klaster Amazon, menginstal aplikasi sampel, dan instrumen aplikasi sampel untuk bekerja dengan Sinyal Aplikasi.

Aplikasi sampel adalah aplikasi Spring “Pet Clinic” yang terdiri dari empat layanan mikro. Layanan ini berjalan di Amazon EKS di Amazon EC2 dan memanfaatkan skrip pemberdayaan Sinyal Aplikasi untuk mengaktifkan cluster dengan Java, Python, atau. NETagen instrumentasi otomatis.

Persyaratan

  • Saat ini, Application Signals hanya memonitor Java, Python, atau. NETaplikasi.

  • Anda harus AWS CLI menginstal pada instance. Kami merekomendasikan AWS CLI versi 2, tetapi versi 1 juga harus berfungsi. Untuk informasi selengkapnya tentang menginstal AWS CLI, lihat Menginstal atau memperbarui versi terbaru AWS CLI.

  • Skrip-skrip yang ada di bagian ini dimaksudkan untuk dijalankan di lingkungan Linux dan macOS. Untuk instance Windows, kami menyarankan Anda menggunakan AWS Cloud9 lingkungan untuk menjalankan skrip ini. Untuk informasi lebih lanjut tentang AWS Cloud9, lihat Apa itu AWS Cloud9? .

  • Instal versi yang didukung dari kubectl. Anda harus menggunakan versi kubectl dalam satu perbedaan versi minor dari bidang kontrol EKS cluster Amazon Anda. Sebagai contoh, klien kubectl 1,26 bekerja dengan klaster Kubernetes 1,25, 1,26, dan 1,27. Jika Anda sudah memiliki EKS kluster Amazon, Anda mungkin perlu mengonfigurasi AWS kredensialnya. kubectl Untuk informasi selengkapnya, lihat Membuat atau memperbarui kubeconfig file untuk EKS klaster Amazon.

  • Instaleksctl. eksctlmenggunakan AWS CLI untuk berinteraksi dengan AWS, yang berarti ia menggunakan AWS kredensil yang sama dengan. AWS CLI Untuk informasi selengkapnya, silakan lihat Menginstal atau memperbarui eksctl.

  • Instal jq. jq diperlukan untuk menjalankan skrip pemberdayaan Sinyal Aplikasi. Untuk informasi selengkapnya, silakan lihat Unduh jq.

Langkah 1: Mengunduh skrip

Untuk mengunduh skrip untuk mengatur Sinyal CloudWatch Aplikasi dengan aplikasi sampel, Anda dapat mengunduh dan membuka kompres file GitHub proyek zip ke drive lokal, atau Anda dapat mengkloning proyek. GitHub

Untuk mengkloning proyek, buka sebuah jendela terminal dan masukkan perintah Git berikut di direktori kerja yang diberikan.

git clone https://github.com/aws-observability/application-signals-demo.git

Langkah 2: Membangun dan menerapkan aplikasi sampel

Untuk membuat dan mendorong gambar aplikasi sampel, ikuti petunjuk ini.

Langkah 3: Mendeploy dan mengaktifkan Sinyal Aplikasi dan aplikasi sampel

Pastikan Anda telah melengkapi persyaratan yang tercantum di Aktifkan Sinyal Aplikasi di EKS klaster Amazon baru dengan aplikasi contoh sebelum Anda menyelesaikan langkah-langkah berikut.

Untuk mendeploy dan mengaktifkan Sinyal Aplikasi dan aplikasi sampel
  1. Masukkan perintah berikut. Ganti new-cluster-name dengan nama yang ingin Anda gunakan untuk cluster baru. Ganti region-name dengan nama AWS Wilayah, sepertius-west-1.

    Perintah ini mengatur aplikasi sampel yang berjalan di EKS cluster Amazon baru dengan Sinyal Aplikasi diaktifkan.

    # this script sets up a new cluster, enables Application Signals, and deploys the # sample application cd application-signals-demo/scripts/eks/appsignals/one-step && ./setup.sh new-cluster-name region-name

    Skrip pengaturan membutuhkan waktu sekitar 30 menit untuk dijalankan, dan melakukan hal berikut:

    • Membuat EKS klaster Amazon baru di Wilayah yang ditentukan.

    • Membuat IAM izin yang diperlukan untuk Sinyal Aplikasi (arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccessdanarn:aws:iam::aws:policy/CloudWatchAgentServerPolicy).

    • Mengaktifkan Sinyal Aplikasi dengan menginstal CloudWatch agen dan menginstrumentasi aplikasi sampel secara otomatis untuk CloudWatch metrik dan jejak X-Ray.

    • Menyebarkan aplikasi sampel PetClinic Spring di EKS cluster Amazon yang sama.

    • Menciptakan lima kenari CloudWatch Synthetics, bernama,,pc-add-vist,pc-create-owners,pc-visit-pet. pc-visit-vet pc-clinic-traffic Canary ini akan berjalan pada frekuensi satu menit untuk menghasilkan lalu lintas sintetis untuk aplikasi sampel dan menunjukkan bagaimana canary Synthetics muncul di Sinyal Aplikasi.

    • Menciptakan empat tujuan tingkat layanan (SLOs) untuk PetClinic aplikasi dengan nama-nama berikut:

      • Ketersediaan untuk Mencari Pemilik

      • Latensi untuk Mencari Pemilik

      • Ketersediaan untuk Mendaftarkan Pemilik

      • Latensi untuk Mendaftarkan Pemilik

    • Membuat IAM peran yang diperlukan dengan kebijakan kepercayaan khusus yang memberikan Sinyal Aplikasi izin berikut:

      • cloudwatch:PutMetricData

      • cloudwatch:GetMetricData

      • xray:GetServiceGraph

      • logs:StartQuery

      • logs:GetQueryResults

  2. (Opsional) Jika Anda ingin meninjau kode sumber untuk aplikasi PetClinic sampel, Anda dapat menemukannya di bawah folder root.

    - application-signals-demo - spring-petclinic-admin-server - spring-petclinic-api-gateway - spring-petclinic-config-server - spring-petclinic-customers-service - spring-petclinic-discovery-server - spring-petclinic-vets-service - spring-petclinic-visits-service
  3. Untuk melihat aplikasi PetClinic sampel yang digunakan, jalankan perintah berikut untuk menemukan: URL

    kubectl get ingress

Langkah 4: Memantau aplikasi sampel

Setelah menyelesaikan langkah-langkah di bagian sebelumnya untuk membuat EKS cluster Amazon dan menyebarkan aplikasi sampel, Anda dapat menggunakan Sinyal Aplikasi untuk memantau aplikasi.

catatan

Agar konsol Sinyal Aplikasi mulai mengisi, beberapa lalu lintas harus mencapai aplikasi sampel tersebut. Bagian dari langkah sebelumnya dibuat kenari CloudWatch Synthetics yang menghasilkan lalu lintas ke aplikasi sampel.

Pemantauan kondisi layanan

Setelah diaktifkan, Sinyal CloudWatch Aplikasi secara otomatis menemukan dan mengisi daftar layanan tanpa memerlukan pengaturan tambahan.

Untuk melihat daftar layanan yang ditemukan dan memantau kondisi kesehatan mereka
  1. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  2. Pada panel navigasi, silakan pilih Sinyal Aplikasi, Layanan.

  3. Untuk melihat layanan, operasinya, dan dependensinya, pilih nama dari salah satu layanan yang ada dalam daftar.

    Tampilan terpadu dan terpusat pada aplikasi ini membantu memberikan perspektif penuh tentang bagaimana pengguna berinteraksi dengan layanan Anda. Hal ini dapat membantu Anda dalam melakukan triase masalah jika terjadi anomali performa. Untuk detail selengkapnya tentang tampilan Layanan, silakan lihat Memantau kondisi kesehatan operasional aplikasi Anda dengan Sinyal Aplikasi.

  4. Pilih tab Operasi Layanan untuk melihat metrik aplikasi standar untuk operasi-operasi layanan tersebut. Operasi adalah API operasi yang dipanggil layanan, misalnya.

    Kemudian, untuk dapat melihat grafik untuk satu operasi layanan itu, pilih nama operasi itu.

  5. Pilih tab Dependensi untuk melihat dependensi yang dimiliki aplikasi Anda, bersama dengan metrik aplikasi penting untuk setiap dependensi. Dependensi mencakup AWS layanan dan layanan pihak ketiga yang dipanggil aplikasi Anda.

  6. Untuk dapat melihat jejak berkorelasi dari halaman detail layanan, pilih sebuah titik data di salah satu dari tiga grafik di atas tabel. Hal ini akan mengisi panel baru dengan jejak yang difilter dari periode waktu. Jejak ini diurutkan dan difilter berdasarkan grafik yang Anda pilih. Sebagai contoh, jika Anda memilih grafik Latensi, maka jejak akan diurutkan berdasarkan waktu respons layanan.

  7. Di panel navigasi CloudWatch konsol, pilih SLOs. Anda melihat SLOs bahwa skrip dibuat untuk aplikasi sampel. Untuk informasi selengkapnya tentang SLOs, lihat Tujuan tingkat layanan (SLOs).

(Opsional) Langkah 5: Pembersihan

Setelah selesai menguji sinyal Aplikasi, Anda dapat menggunakan sebuah skrip yang disediakan oleh Amazon untuk membersihkan dan menghapus artefak yang dibuat di akun Anda untuk aplikasi sampel. Untuk melakukan pembersihan, Anda bisa memasukkan perintah berikut. Ganti new-cluster-name dengan nama cluster yang Anda buat untuk aplikasi sampel, dan ganti region -name dengan nama AWS Region, sepertius-west-1.

cd application-signals-demo/scripts/eks/appsignals/one-step && ./cleanup.sh new-cluster-name region-name