Halaman ini menunjukkan cara menyelesaikan masalah terkait Ingress di Google Kubernetes Engine (GKE).
Jika Anda memerlukan bantuan tambahan, hubungi Cloud Customer Care.
Anotasi untuk class Ingress salah
Gejala
Saat membuat Ingress, Anda mungkin melihat error berikut:
Missing one or more resources. If resource creation takes longer than expected, you might have an invalid configuration.
Kemungkinan penyebab
Saat membuat Ingress, Anda mungkin telah salah mengonfigurasi class Ingress dalam manifes.
Resolusi
Untuk menentukan class Ingress, Anda harus menggunakan anotasi kubernetes.io/ingress.class
. Anda tidak dapat menentukan Ingress GKE menggunakan spec.ingressClassName
.
- Untuk men-deploy Load Balancer Aplikasi internal, gunakan anotasi
kubernetes.io/ingress.class: gce-internal
. - Untuk men-deploy Load Balancer Aplikasi eksternal, gunakan anotasi
kubernetes.io/ingress.class: gce
.
Anotasi salah untuk alamat IP statis
Gejala
Saat mengonfigurasi Ingress eksternal untuk menggunakan alamat IP statis, Anda mungkin melihat error berikut:
Error syncing to GCP: error running load balancer syncing routine: loadbalancer <Name of load balancer> does not exist: the given static IP name <Static IP> doesn't translate to an existing static IP.
Kemungkinan penyebab
- Anda tidak membuat alamat IP eksternal statis sebelum men-deploy Ingress.
- Anda tidak menggunakan anotasi yang benar untuk jenis Load Balancer.
Resolusi
Jika Anda mengonfigurasi Ingress eksternal:
- Mencadangkan alamat IP eksternal statis sebelum men-deploy Ingress.
- Gunakan anotasi
kubernetes.io/ingress.global-static-ip-name
pada resource Ingress Anda.
Jika Anda mengonfigurasi Ingress internal:
- Reservasi alamat IP internal statis regional sebelum men-deploy Ingress.
- Gunakan anotasi
kubernetes.io/ingress.regional-static-ip-name
pada resource Ingress Anda.
Alamat IP statis sudah digunakan
Gejala
Anda mungkin melihat error berikut saat menentukan alamat IP statis untuk menyediakan resource Ingress internal atau eksternal:
Error syncing to GCP: error running load balancer syncing
routine: loadbalancer <LB name> does not exist:
googleapi: Error 409: IP_IN_USE_BY_ANOTHER_RESOURCE - IP ''<IP address>'' is already being used by another resource.
Kemungkinan penyebab
Alamat IP statis sudah digunakan oleh resource lain.
Error saat menonaktifkan HTTP dan menggunakan sertifikat yang dikelola Google
Gejala
Jika Anda mengonfigurasi sertifikat SSL yang dikelola Google dan menonaktifkan traffic HTTP di Ingress, Anda akan melihat error berikut:
Error syncing to GCP: error running load balancer syncing
routine: loadbalancer <Load Balancer name> does not exist:
googleapi: Error 404: The resource ''projects/<Project>/global/sslPolicies/<Policy name>' was not found, notFound
Kemungkinan penyebab
Anda tidak dapat menggunakan anotasi berikut secara bersamaan saat mengonfigurasi Ingress:
networking.gke.io/managed-certificates
(untuk mengaitkan sertifikat yang dikelola Google ke Ingress)kubernetes.io/ingress.allow-http: false
(untuk menonaktifkan traffic HTTP)
Resolusi
Nonaktifkan traffic HTTP hanya setelah Load Balancer Aplikasi eksternal diprogram sepenuhnya. Anda dapat memperbarui Ingress dan menambahkan anotasi kubernetes.io/ingress.allow-http: false
ke manifes.
Subnet khusus proxy tidak ada untuk Ingress internal
Gejala
Saat men-deploy Ingress untuk Load Balancer Aplikasi internal, Anda mungkin melihat error berikut:
Error syncing to GCP: error running load balancer syncing routine:
loadbalancer <LB name> does not exist: googleapi: Error 400: Invalid value for field 'resource.target': 'https://www.googleapis.com/compute/v1/projects/<Project ID>/regions/<Region>/targetHttpsProxies/<Target proxy>'.
An active proxy-only subnetwork is required in the same region and VPC as
the forwarding rule.
Kemungkinan penyebab
Anda tidak membuat subnet khusus proxy sebelum membuat resource Ingress. Subnet khusus proxy diperlukan untuk Load Balancer Aplikasi internal.
Resolusi
Buat subnet khusus proxy sebelum men-deploy Ingress internal.
Kunci sertifikat SSL terlalu besar
Gejala
Jika ukuran kunci sertifikat SSL load balancer Anda terlalu besar, Anda mungkin melihat error berikut:
Error syncing to GCP: error running load balancer syncing routine: loadbalancer gky76k70-load-test-trillian-api-ingress-fliismmb does not exist: Cert creation failures - k8s2-cr-gky76k70-znz6o1pfu3tfrguy-f9be3a4abbe573f7 Error:googleapi: Error 400: The SSL key is too large., sslCertificateKeyTooLarge
Kemungkinan penyebab
Google Cloud memiliki batas 2.048 bit untuk kunci sertifikat SSL.
Resolusi
Kurangi ukuran kunci sertifikat SSL menjadi 2.048 bit atau kurang.
Terjadi error saat membuat Ingress di Tingkat Standar
Gejala
Jika Anda men-deploy Ingress dalam project dengan tingkat jaringan default project ditetapkan ke Standard, pesan error berikut akan muncul:
Error syncing to GCP: error running load balancer syncing routine: load balancer <LB Name> does not exist: googleapi: Error 400: STANDARD network tier (the project''s default network tier) is not supported: STANDARD network tier is not supported for global forwarding rule., badRequest
Resolusi
Konfigurasikan tingkat jaringan default project ke Premium.