全部产品
Search
文档中心

Container Service for Kubernetes:Diagnosis Ingress

更新时间:Jul 06, 2025

Konsol Container Service for Kubernetes (ACK) menyediakan fitur diagnosis Ingress untuk membantu Anda mendiagnosis masalah umum terkait Ingress. Topik ini menjelaskan item diagnostik Ingress serta memberikan saran untuk memperbaiki masalah tersebut.

Item diagnostik dalam diagnosis Ingress mencakup Ingress, parameter startup, log kesalahan pod Ingress, dan instance Server Load Balancer (SLB) dari controller Ingress.

Penting

Saat menggunakan fitur diagnosis, ACK menjalankan program pengumpulan data di setiap node dalam kluster dan mengumpulkan hasil diagnosis. Informasi yang dikumpulkan mencakup versi sistem, status beban, Docker, kubelet, serta informasi kesalahan utama dalam log sistem. ACK tidak mengumpulkan informasi bisnis atau data sensitif.

Item diagnostik Ingress

Catatan

Item diagnostik dapat bervariasi berdasarkan konfigurasi kluster. Item diagnostik aktual pada halaman diagnosis yang akan berlaku.

Kategori

Deskripsi

Ingress

Periksa ketersediaan sumber daya Ingress.

Addon

Periksa parameter startup komponen Ingress, Service yang terkait dengan Ingress, dan pod Ingress.

SLB

Periksa status instance SLB yang digunakan oleh controller Ingress, jumlah maksimum koneksi, QPS, dan status kesehatan.

Ingress

Item Diagnostik

Deskripsi

Cara Memperbaiki

Pemeriksaan Ingress

Periksa apakah Ingress yang ditentukan tersedia.

Periksa apakah aturan Ingress telah dibuat untuk URL tertentu. Jika URL valid, tinjau aturan Ingress, misalnya, apakah ekspresi reguler digunakan sebagai jalur atau anotasi use-regex diterapkan.

Pemeriksaan base-url-scheme

Periksa apakah anotasi nginx.ingress.kubernetes.io/base-url-scheme digunakan. Anotasi ini sudah tidak digunakan lagi di Ingress Controller 0.22.0.

Periksa versi controller Ingress, lalu hapus anotasi atau gunakan anotasi lain.

Pemeriksaan grpc-backend

Periksa apakah anotasi nginx.ingress.kubernetes.io/grpc-backend digunakan. Anotasi ini sudah tidak digunakan lagi di Ingress Controller 0.21.0.

Periksa versi controller Ingress, lalu hapus anotasi atau gunakan anotasi lain.

Pemeriksaan mirror-uri

Periksa apakah anotasi nginx.ingress.kubernetes.io/mirror-uri digunakan. Anotasi ini sudah tidak digunakan lagi di Ingress Controller 0.24.0.

Periksa versi controller Ingress, lalu hapus anotasi atau gunakan anotasi lain.

Pemeriksaan secure-backends

Periksa apakah anotasi nginx.ingress.kubernetes.io/secure-backends digunakan. Anotasi ini sudah tidak digunakan lagi di Ingress Controller 0.21.0.

Periksa versi controller Ingress, lalu hapus anotasi atau gunakan anotasi lain.

Pemeriksaan session-cookie-hash

Periksa apakah anotasi nginx.ingress.kubernetes.io/session-cookie-hash digunakan. Anotasi ini sudah tidak digunakan lagi di Ingress Controller 0.24.0.

Periksa versi controller Ingress, lalu hapus anotasi atau gunakan anotasi lain.

Pemeriksaan nginx.com/nginx.org

Periksa apakah Ingress menggunakan anotasi yang dimulai dengan nginx.com/nginx.org. Anotasi ini hanya untuk versi komersial NGINX Ingress controller dan tidak dapat digunakan oleh versi open source NGINX Ingress controller.

Gunakan anotasi yang didukung oleh versi open source NGINX Ingress controller. Untuk informasi lebih lanjut tentang Ingresses, lihat Manajemen NGINX Ingress atau NGINX Ingress Controller di situs resmi.

Status Canary

Untuk menggunakan fitur Canary, Anda harus menentukan nginx.ingress.kubernetes.io/canary: "true". Jika pengaturan ini tidak ditentukan, fitur Canary tidak akan berlaku.

Untuk mengaktifkan fitur Canary untuk Ingress, tambahkan anotasi nginx.ingress.kubernetes.io/canary: "true" ke aturan Ingress.

Addon

Item Diagnostik

Deskripsi

Cara Memperbaiki

Persentase Pod Ingress dalam Status Ready

Periksa persentase pod yang berada dalam status Ready dibandingkan dengan pod yang dibuat oleh Deployment Ingress. Jika nilainya kurang dari 100%, beberapa pod Ingress gagal memulai atau melewati pemeriksaan kesehatan.

Periksa log kesalahan untuk menemukan pod yang bermasalah dan perbaiki masalah tersebut. Untuk informasi lebih lanjut tentang pemecahan masalah Ingress, lihat Pemecahan Masalah NGINX Ingress Controller.

Pemeriksaan Alamat IP Ingress

Periksa apakah controller Ingress mengalokasikan alamat IP ke Ingress.

Jika tidak ada alamat IP yang dialokasikan, periksa apakah controller Ingress ada di IngressClass dari Ingress dan apakah controller Ingress berfungsi dengan normal. Perbaiki masalah berdasarkan hasil diagnosis.

Pemeriksaan Pod Pemimpin

Periksa apakah pod pemimpin dipilih. Jika tidak ada pod pemimpin yang dipilih, waktu startup pod mungkin terlalu singkat atau izin controller Ingress tidak dikonfigurasi dengan benar.

Periksa apakah pod Ingress menghasilkan log kesalahan dan perbaiki masalah yang ditunjukkan dalam log kesalahan. Untuk informasi lebih lanjut tentang pemecahan masalah Ingress, lihat Pemecahan Masalah NGINX Ingress Controller.

Anotasi yang Digunakan oleh NGINX Ingresses

Versi open source NGINX Ingress controller menggunakan anotasi yang dimulai dengan nginx.ingress.kubernetes.io. Versi open source tidak dapat mengenali anotasi yang dimulai dengan nginx.com/nginx.org. Jika Anda menggunakan anotasi yang dimulai dengan nginx.com/nginx.org, konfigurasi Anda mungkin menjadi tidak valid atau tidak sesuai dengan kebutuhan Anda.

Gunakan anotasi yang didukung oleh versi open source NGINX Ingress controller. Untuk informasi lebih lanjut tentang anotasi, lihat Anotasi.

Penggunaan Grup Penangkap dengan Rewrite-target di NGINX Ingresses

Periksa apakah anotasi rewrite-target di NGINX Ingresses digunakan bersama dengan grup penangkap. Di Ingress controller 0.22.0 dan versi lebih baru, Anda perlu secara eksplisit menentukan grup penangkap saat menggunakan anotasi rewrite-target. Jika tidak, kesalahan pengalihan lalu lintas akan terjadi.

Konfigurasikan Ingresses dengan benar. Untuk informasi lebih lanjut tentang konfigurasi Ingress, lihat Konfigurasi Lanjutan NGINX Ingress.

Aturan Canary NGINX Ingress

Periksa apakah tidak lebih dari dua Layanan ditentukan dalam service-match atau service-weight. Anda dapat menentukan service-match atau service-weight untuk mendistribusikan lalu lintas antara hanya dua Layanan. Jika Anda menentukan lebih dari dua Layanan, Layanan berlebih akan diabaikan. Akibatnya, pengalihan lalu lintas mungkin tidak sesuai dengan kebutuhan Anda.

Atur ulang jumlah Layanan.

Nama Ingress

Tampilkan nama aturan Ingress yang cocok.

Tidak ada.

Log Kesalahan Pod

Periksa apakah pod controller Ingress menghasilkan log kesalahan. Saat log kesalahan dihasilkan, controller Ingress mungkin tidak berjalan seperti yang diharapkan.

Lokasikan penyebab dan perbaiki masalah berdasarkan log kesalahan. Untuk informasi lebih lanjut tentang pemecahan masalah Ingress, lihat Pemecahan Masalah NGINX Ingress Controller.

Penggunaan Grup Penangkap dalam Jalur Rewrite-target

Di Ingress controller 0.22.0 dan versi lebih baru, jika Anda ingin menggunakan anotasi nginx.ingress.kubernetes.io/rewrite-target, Anda perlu menentukan grup penangkap. Jika tidak, kesalahan jalur mungkin terjadi.

Konfigurasikan Ingresses dengan benar. Untuk informasi lebih lanjut tentang Ingresses, lihat Konfigurasikan Aturan Routing untuk Mengarahkan Lalu Lintas dari URL Tertentu.

Target Ganda dalam service-*

Anda dapat menentukan service-match atau service-weight untuk mendistribusikan lalu lintas antara hanya dua Layanan.

Tentukan hanya dua Layanan dalam service-weight atau service-match. Untuk informasi lebih lanjut, lihat Gunakan NGINX Ingress Controller untuk Menerapkan Rilis Canary dan Penyebaran Biru-Hijau.

Pemeriksaan Layanan Ingress

Periksa apakah Layanan yang ditentukan dalam parameter startup Ingress ada. Jika Layanan dihapus, Ingress mungkin gagal memulai.

Periksa nama Layanan yang dihapus dalam parameter startup Deployment dan perbaiki masalah tersebut. Untuk informasi lebih lanjut, lihat Operasi Berisiko Tinggi Terkait Jaringan dan Instance SLB.

Pemeriksaan Titik Akhir Layanan Ingress

Periksa apakah Layanan yang terkait dengan Ingress memiliki titik akhir. Jika Layanan tidak memiliki titik akhir, instance SLB tidak dapat merutekan lalu lintas ke controller Ingress.

Periksa apakah pemilih label Layanan berfungsi dengan normal.

Acara Layanan Ingress

Periksa apakah Layanan yang terkait dengan Ingress menghasilkan acara Warning atau Error. Masalah ini mungkin disebabkan oleh kesalahan konfigurasi SLB.

Periksa acara Layanan, lokasikan penyebab, dan kemudian perbaiki masalah tersebut. Untuk informasi lebih lanjut tentang pemecahan masalah Layanan, lihat Kesalahan Layanan dan Solusi.

Kebijakan Lalu Lintas Eksternal Layanan Ingress

Kebijakan lalu lintas eksternal menentukan bagaimana lalu lintas eksternal didistribusikan di kluster. Kebijakan lalu lintas eksternal default adalah Lokal. Anda juga dapat mengaturnya ke Kluster. Kami merekomendasikan Anda menggunakan mode Lokal. Dalam mode Kluster, alamat IP klien mungkin tidak dipertahankan. Akibatnya, hasil pemeriksaan kesehatan mungkin salah.

Peringatan sebelumnya tidak berlaku jika bisnis Anda memerlukan mode Kluster atau Anda ingin mengakses controller Ingress melalui alamat IP instance SLB dari dalam kluster.

Alamat IP Eksternal Layanan Ingress

Periksa apakah cloud controller manager menetapkan alamat IP ke Layanan yang terkait dengan Ingress. Jika tidak ada alamat IP yang ditetapkan, Ingress mungkin tidak dapat mengakses Internet.

Pastikan status Layanan, status cloud controller manager, dan kuota SLB normal. Sebagian besar masalah terungkap melalui acara.

Tipe Layanan Ingress (Server Load Balancer)

Periksa apakah tipe Layanan yang ditentukan dalam parameter startup Ingress adalah LoadBalancer. Jika tipe Layanan bukan LoadBalancer, controller Ingress mungkin tidak dapat diakses melalui Internet.

Peringatan sebelumnya tidak berlaku jika bisnis Anda tidak memerlukan Layanan tipe LoadBalancer. Jika diperlukan, ubah tipe Layanan menjadi LoadBalancer.

Pemeriksaan --force-namespace-isolation

Periksa apakah parameter startup --force-namespace-isolation digunakan. Parameter ini sudah tidak digunakan lagi di Ingress Controller 0.24.0.

Periksa versi controller Ingress dan hapus parameter startup.

Pemeriksaan --sort-backends

Periksa apakah parameter startup --sort-backends digunakan. Parameter ini sudah tidak digunakan lagi di Ingress Controller 0.22.0.

Periksa versi controller Ingress dan hapus parameter startup.

SLB

Item Diagnostik

Deskripsi

Cara Memperbaiki

Instance SLB

Periksa apakah instance SLB dari controller Ingress tersedia.

Periksa apakah Layanan yang ditentukan dalam Ingress Controller ada, apakah Layanan menghasilkan acara anomali, dan apakah instance SLB tersedia di konsol SLB. Jika instance SLB terhapus secara tidak sengaja, buat ulang Layanan untuk memperbaiki masalah. Untuk informasi lebih lanjut, lihat Apa yang harus saya lakukan jika saya secara tidak sengaja menghapus instance SLB?

Kesehatan Server Backend Instance SLB Controller Ingress

Periksa status kesehatan server backend instance SLB.

Jika server backend instance SLB tidak sehat, periksa apakah Layanan yang ditentukan dalam controller Ingress menghasilkan acara anomali dan apakah komponen kelebihan beban. Untuk informasi lebih lanjut tentang pemecahan masalah komponen, lihat Pemecahan Masalah NGINX Ingress Controller.

ID SLB

Tampilkan ID instance SLB.

Tidak ada.

Koneksi Instance SLB Controller Ingress

Periksa apakah jumlah koneksi pada instance SLB dalam tiga hari terakhir melebihi 80% dari batas atas. Jika jumlah koneksi mencapai batas atas, klien tidak dapat membuat koneksi ke instance SLB.

Jika jumlah koneksi pada instance SLB telah mencapai batas atas, tingkatkan instance SLB untuk menghindari gangguan bisnis. Untuk informasi lebih lanjut, lihat Gunakan Instance SLB yang Sudah Ada.

Laju Koneksi Baru Instance SLB Controller Ingress

Periksa apakah laju koneksi baru pada instance SLB dalam tiga hari terakhir melebihi 80% dari batas atas. Jika laju mencapai batas atas, klien tidak dapat membuat koneksi baru ke instance SLB dalam waktu singkat.

Jika laju koneksi baru pada instance SLB telah mencapai batas atas, tingkatkan instance SLB untuk menghindari gangguan bisnis. Untuk informasi lebih lanjut, lihat Gunakan Instance SLB yang Sudah Ada.

Nilai QPS Instance SLB Controller Ingress

Periksa apakah nilai QPS instance SLB dalam tiga hari terakhir melebihi 80% dari batas atas. Jika nilai QPS mencapai batas atas, klien tidak dapat terhubung ke instance SLB.

Jika nilai QPS instance SLB telah mencapai batas atas, tingkatkan instance SLB untuk menghindari gangguan bisnis. Untuk informasi lebih lanjut, lihat Gunakan Instance SLB yang Sudah Ada.

Host dan SecretName untuk TLS

Anda perlu menentukan parameter Host dan SecretName saat mengonfigurasi Ingress TLS.

Tentukan parameter Host dan SecretName dan pastikan bahwa host sama dengan yang ada di sertifikat.

Pemeriksaan Kesehatan SLB Controller Ingress

Periksa apakah instance SLB gagal melewati pemeriksaan kesehatan dalam tiga hari terakhir. Masalah ini terjadi ketika komponen kelebihan beban atau konfigurasi SLB mengandung kesalahan.

Jika instance SLB gagal melewati pemeriksaan kesehatan dalam tiga hari terakhir, untuk mencegah gangguan bisnis, periksa apakah Layanan yang ditentukan dalam controller Ingress menghasilkan acara anomali dan apakah komponen kelebihan beban. Untuk informasi lebih lanjut tentang pemecahan masalah komponen, lihat Pemecahan Masalah NGINX Ingress Controller.