Anda dapat memantau kinerja aplikasi Python yang diterapkan di kluster Alibaba Cloud Container Service for Kubernetes (ACK), termasuk aplikasi web berbasis kerangka kerja seperti Django, Flask, dan FastAPI, serta aplikasi artificial intelligence (AI) atau large language model (LLM) yang dikembangkan dengan LlamaIndex atau Langchain. Untuk menggunakan Application Real-Time Monitoring Service (ARMS), instal komponen ack-onepilot dan modifikasi Dockerfile. ARMS menyediakan fitur pemantauan kinerja aplikasi, seperti topologi aplikasi, analisis pelacakan, analisis panggilan API, deteksi anomali, serta pelacakan terperinci interaksi model besar.
Prasyarat
Namespace telah dibuat. Untuk informasi selengkapnya, lihat Kelola namespace dan kuota sumber daya. Dalam contoh ini, digunakan namespace bernama
arms-demo.Runtime Python versi 3.8 atau lebih baru.
ARMS kompatibel dengan Python 3.8 dan versi yang lebih baru. Jika Anda menggunakan versi sebelumnya, mungkin terjadi masalah koneksi.
ARMS adalah layanan manajemen kinerja aplikasi (APM) dari Alibaba Cloud. Untuk informasi lebih lanjut tentang pemantauan aplikasi dengan ARMS, lihat Apa itu Application Real-Time Monitoring Service? dan Apa itu pemantauan aplikasi.
Langkah 1: Instal komponen ack-onepilot untuk pemantauan aplikasi
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola lalu klik namanya. Di panel navigasi kiri, klik Add-ons.
Di bagian Logs and Monitoring, temukan ack-onepilot lalu klik Install. Pada kotak dialog yang muncul, konfigurasikan parameter sesuai kebutuhan. Kami menyarankan menggunakan nilai default. Kemudian, klik OK.
CatatanPastikan versi ack-onepilot adalah 3.2.4 atau lebih baru. Secara default, komponen ack-onepilot mendukung 1.000 Pod. Untuk setiap tambahan 1.000 Pod melebihi batas ini, tingkatkan sumber daya CPU untuk ack-onepilot sebesar 0,5 core dan sumber daya memori sebesar 512 MB.
Langkah 2: Otorisasi ARMS untuk mengakses sumber daya
Untuk memantau aplikasi yang diterapkan di kluster ACK tanpa
addon.arms.token, lakukan langkah-langkah berikut untuk memberikan otorisasi kepada kluster ACK agar dapat mengakses ARMS. Jikaaddon.arms.tokensudah ada, tidak diperlukan otorisasi tambahan.CatatanDi kluster ACK,
addon.arms.tokenmemungkinkan ARMS melakukan otorisasi otomatis tanpa kata sandi. Biasanya, kluster ACK yang dikelola memilikiaddon.arms.tokensecara default. Namun, beberapa kluster ACK yang dikelola yang dibuat sebelumnya mungkin tidak menyertakanaddon.arms.token.Periksa apakah kluster memiliki
addon.arms.token.Jika
addon.arms.tokentidak ada, lakukan langkah-langkah berikut untuk memberikan otorisasi manual agar kluster dapat mengakses sumber daya ARMS:Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, temukan kluster target lalu klik namanya. Di panel navigasi kiri, klik Cluster Information.
Klik tab Basic Information. Di bagian Cluster Resources, klik tautan di sebelah kanan Worker RAM Role.
Di tab Permissions, klik Grant Permission.
Pilih kebijakan AliyunARMSFullAccess lalu klik OK.
Untuk memantau aplikasi yang diterapkan di kluster ACK yang dikelola yang terhubung ke instans kontainer elastis, buka halaman Otorisasi Cepat RAM dan selesaikan otorisasi tersebut. Kemudian, mulai ulang Pod yang dibuat untuk ack-onepilot.
Langkah 3: Integrasikan agen Python ARMS ke dalam Dockerfile
Modifikasi Dockerfile untuk mengintegrasikan agen Python ARMS ke dalam aplikasi Python Anda dan menjalankannya.
Unduh installer agen dari repositori Python Package Index (PyPI).
pip3 install aliyun-bootstrapGunakan aliyun-bootstrap untuk menginstal agen.
# ID wilayah akun Alibaba Cloud. ARMS_REGION_ID=xxx aliyun-bootstrap -a installCatatanUntuk menginstal versi tertentu dari agen Python, jalankan perintah berikut:
# Ganti ${version} dengan nomor versi aktual. aliyun-bootstrap -a install -v ${version}Untuk informasi selengkapnya tentang semua versi rilis agen Python, lihat Catatan rilis agen Python.
Jalankan aplikasi menggunakan agen Python ARMS.
aliyun-instrument python app.pyBuat citra.
Kode berikut menyediakan contoh lengkap Dockerfile:
Langkah 4: Aktifkan Pemantauan Aplikasi ARMS untuk aplikasi Python
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola lalu klik namanya. Di panel navigasi kiri, pilih .
Di halaman Stateless, klik untuk aplikasi target.
Di file YAML, tambahkan
labelsberikut di bawah `spec.template.metadata`.labels: aliyun.com/app-language: python # Wajib untuk aplikasi Python. Menentukan bahwa ini adalah aplikasi Python. armsPilotAutoEnable: 'on' armsPilotCreateAppName: "deployment-name" # Nama tampilan aplikasi di ARMS.PentingJika versi komponen ack-onepilot yang Anda instal lebih baru dari 5.0.0, komponen tersebut akan secara otomatis mengunduh dan menyuntikkan paket agen Python pada langkah ini. Hal ini memberikan pengalaman instalasi yang sepenuhnya non-intrusif. Jika Anda tidak ingin menggunakan fitur ini, atau jika Anda telah menginstal agen Python secara manual di dalam kontainer, kami menyarankan agar Anda menonaktifkan fitur penyuntikan non-intrusif untuk Python menggunakan label berikut:
labels: aliyun.com/app-language: python # Wajib untuk aplikasi Python. Menentukan bahwa ini adalah aplikasi Python. armsPilotAutoEnable: 'on' armsPilotCreateAppName: "deployment-name" # Nama tampilan aplikasi di ARMS. armsAutoInstrumentationEnable: "off" # Menonaktifkan fitur penyuntikan non-intrusif untuk aplikasi Python.
Kode berikut menyediakan templat YAML lengkap untuk membuat aplikasi tanpa status (Deployment) dan mengaktifkan Pemantauan Aplikasi ARMS:
Langkah 5: Lihat detail pemantauan
Setelah sekitar satu menit, Anda dapat melihat aplikasi Python dan data yang dilaporkannya di halaman di Konsol ARMS.

Klik Application Name untuk melihat detail pemantauan di halaman pemantauan aplikasi pada konsol ARMS. Untuk informasi selengkapnya, lihat Ikhtisar Aplikasi.
(Opsional) Langkah 6: Lepaskan sumber daya
Jika Anda tidak lagi memerlukan ARMS untuk memantau aplikasi Python Anda, Anda dapat menguninstall agen Python ARMS untuk menghentikan pemantauan. Untuk informasi selengkapnya, lihat Uninstall the Python agent.
> YAML Edit