Saat Anda melakukan penerapan, memulai, menambah skala, atau mengurangi skala aplikasi di Enterprise Distributed Application Service (EDAS), halaman Change Records melacak setiap langkah dalam proses perubahan. Jika suatu perubahan gagal, gunakan halaman Change Details untuk mengidentifikasi langkah yang gagal beserta akar penyebabnya.
Temukan langkah yang gagal
Pada halaman detail aplikasi, klik Change Records di panel navigasi sebelah kiri.
Perubahan yang gagal menampilkan Execution failed pada kolom Change Status.
Temukan catatan perubahan yang gagal, lalu klik View pada kolom Actions.
Pada halaman Change Details, klik langkah yang gagal (misalnya, Deploy) pada tab Batch 1 Change. Jika Anda mengonfigurasi penerapan multi-batch, halaman tersebut menampilkan tab terpisah seperti Batch 1 Change dan Batch 2 Change. Klik tab untuk batch yang gagal.
Tinjau log di sisi kanan tab untuk mengidentifikasi akar penyebabnya.
Jika log tidak menunjukkan penyebab yang jelas, periksa skenario kegagalan umum berikut.
Kegagalan pemeriksaan kesehatan port
Gejala
Proses perubahan gagal pada langkah pemeriksaan kesehatan. Port 65000, yang digunakan EDAS untuk memverifikasi bahwa aplikasi telah dimulai, tidak dapat dijangkau.
Penyebab
Port conflict: Proses lain sudah menggunakan port 65000 saat aplikasi dimulai.
Tomcat startup failure: Kontainer Tomcat gagal dimulai karena kesalahan konfigurasi atau dependensi.
Solusi
Periksa log startup aplikasi untuk menemukan exception. Cari error seperti
java.net.BindException: Address already in useatau error dependensi yang hilang.Jika terjadi konflik port, hentikan proses yang menggunakan port 65000 atau konfigurasikan ulang agar menggunakan port berbeda.
Perbaiki error startup yang mendasarinya, lalu lakukan redeploy aplikasi.
Kegagalan pemeriksaan kesehatan URL
Gejala
Proses perubahan gagal pada langkah pemeriksaan kesehatan. Saat Anda mengonfigurasi URL pemeriksaan kesehatan, EDAS mengirim permintaan HTTP ke URL tersebut setelah aplikasi dimulai. Pemeriksaan hanya berhasil jika menerima kode status HTTP 200. Jika kode status lain dikembalikan dalam batas waktu tiga menit, pemeriksaan gagal dan penerapan dihentikan.
Penyebab
Aplikasi gagal dimulai, sehingga URL pemeriksaan kesehatan tidak tersedia.
URL pemeriksaan kesehatan yang dikonfigurasi salah atau mengarah ke path yang tidak ada.
Filter permintaan, aturan firewall, atau security group memblokir permintaan HTTP ke URL pemeriksaan kesehatan.
Solusi
Periksa log startup aplikasi untuk memastikan aplikasi dimulai tanpa error.
Verifikasi bahwa path URL pemeriksaan kesehatan benar dan aplikasi memberikan respons 200 pada path tersebut. Anda dapat mengujinya dengan menjalankan permintaan dari host aplikasi:
curl -I http://localhost:<port>/<health-check-path>Pastikan tidak ada filter permintaan, aturan firewall, atau security group yang memblokir permintaan HTTP inbound ke URL pemeriksaan kesehatan.
Setelah menyelesaikan masalah tersebut, lakukan penerapan ulang aplikasi.
Error disk penuh
Gejala
Aplikasi terhenti lama pada suatu langkah dalam proses perubahan. Log perubahan berisi salah satu pesan error berikut:
The [EDAS-10000] disk has no space available.No space left on device. Free space (for /home/admin) in bytes: 0exit 1.Penyebab
Dalam kebanyakan kasus, log bisnis aplikasi menghabiskan seluruh ruang disk yang tersedia.
Solusi
| Jenis penerapan | Aksi |
|---|---|
| kluster ECS | Login ke Konsol Elastic Compute Service (ECS) dan hapus file log yang tidak diperlukan dari disk. |
| aplikasi Docker di kluster Swarm | Reset the application. Tindakan ini menghentikan, menghapus, dan membangun ulang kontainer, sehingga melepaskan ruang disk yang terpakai. |
Untuk mencegah pengulangan, konfigurasikan rotasi log atau tetapkan kebijakan retensi untuk log aplikasi Anda.
Peran AliyunServiceRoleForAutoScaling tidak ditemukan
Gejala
Proses perubahan gagal karena EDAS tidak dapat memanggil Auto Scaling untuk mengelola sumber daya.
Penyebab
Peran terkait layanan AliyunServiceRoleForAutoScaling belum ditetapkan ke Akun Alibaba Cloud Anda. Peran ini memberikan izin kepada Auto Scaling untuk mengakses Elastic Compute Service (ECS), Virtual Private Cloud (VPC), dan layanan lain yang diperlukan.
Solusi
Tetapkan peran AliyunServiceRoleForAutoScaling ke akun Anda di Konsol Auto Scaling, lalu coba ulang perubahan tersebut.