Dalam skenario sidecar, satu Pod dapat menjalankan beberapa kontainer yang berisi aplikasi yang ditulis dalam berbagai bahasa pemrograman. Topik ini menjelaskan cara menggunakan komponen ack-onepilot untuk menginstrumentasi aplikasi poliglot tersebut.
Prasyarat
Versi ack-onepilot minimal 4.2.0.
Prosedur
-
Instal ack-onepilot dan berikan izin akses ke resource yang diperlukan sebagaimana dijelaskan dalam salah satu topik berikut:
-
Tambahkan label yang diperlukan ke workload.
File YAML di atas mendefinisikan aplikasi yang menggunakan Java, Go, dan Python dalam tiga kontainer terpisah:
test-java,test-go, dantest-python.Untuk mengisolasi data pemantauan, instrumentasi setiap kontainer agar melaporkan data ke aplikasi ARMS yang terpisah. Ikuti langkah-langkah berikut:
Masuk ke ACK console. Di panel navigasi kiri, klik Clusters.
Pada halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik .
-
Pada halaman Stateless, temukan aplikasi target Anda, lalu pilih di kolom Actions.
Untuk membuat aplikasi baru, klik Create From YAML.
-
Dalam file YAML, tambahkan
labelsberikut di bawah bagianspec.template.metadata, lalu klik Update.labels: # Ganti ${containerName} dengan nama kontainer yang sebenarnya. apsara.apm/container.${containerName}.app-language: java # Ganti dengan bahasa pemrograman aktual kontainer. apsara.apm/container.${containerName}.armsPilotAutoEnable: 'on' apsara.apm/container.${containerName}.armsPilotCreateAppName: "<your-deployment-name>" # Ganti <your-deployment-name> dengan nama aplikasi Anda.
-
Instrumentasi berhasil jika aplikasi Anda muncul di halaman di ARMS console dan sedang melaporkan data.
Di kotak pencarian, masukkan
multilanguage-untuk memfilter ketiga aplikasi: multilanguage-go, multilanguage-java, dan multilanguage-python.
> Edit YAML