All Products
Search
Document Center

Container Compute Service:Ingress diagnostics

Last Updated:Aug 23, 2024

Alibaba Cloud Container Compute Service (ACS) provides the Ingress diagnostics feature to help you diagnose common Ingress issues. This topic describes the Ingress diagnostic items and provides suggestions on how to fix issues.

The diagnostic items of Ingress diagnostics include the Ingress, startup parameters, Ingress pod error log, and Ingress controller Server Load Balancer (SLB) instance.

Important

When you use the diagnostics feature, ACS runs a data collection program on each node in the cluster and collects diagnostic results. The program collects the following information, the system version, loads, status of container components, and key error messages in system logs. ACS does not collect business information or sensitive data.

Ingress diagnostic items

Note

The diagnostic items may vary based on the cluster configuration. The actual diagnostic items on the diagnostic page shall prevail.

Ingress

Diagnostic item

Description

How to fix the issue

Ingress check

Check whether the specified Ingress exists.

Check whether an Ingress rule is created for the specified URL. If the URL is valid, check the Ingress rules. For example, check whether a regular expression is specified as the path or whether the use-regex annotation is used.

Ingress name

Display the names of the matching Ingress rules.

None.

Ingress IP address check

Check whether the Ingress controller allocates an IP address to the Ingress.

If no IP address is allocated, check whether the Ingress controller exists in the IngressClass of the Ingress and whether the Ingress controller works as expected. Fix the issue based on the diagnostic result.

base-url-scheme check

Check whether the nginx.ingress.kubernetes.io/base-url-scheme annotation is used. This annotation is deprecated in Ingress controller 0.22.0.

Check the version of the Ingress controller, and then delete the annotation or use other annotations.

grpc-backend check

Check whether the nginx.ingress.kubernetes.io/grpc-backend annotation is used. This annotation is deprecated in Ingress controller 0.21.0.

Check the version of the Ingress controller, and then delete the annotation or use other annotations.

mirror-uri check

Check whether the nginx.ingress.kubernetes.io/mirror-uri annotation is used. This annotation is deprecated in Ingress controller 0.24.0.

Check the version of the Ingress controller, and then delete the annotation or use other annotations.

secure-backends check

Check whether the nginx.ingress.kubernetes.io/secure-backends annotation is used. This annotation is deprecated in Ingress controller 0.21.0.

Check the version of the Ingress controller, and then delete the annotation or use other annotations.

session-cookie-hash check

Check whether the nginx.ingress.kubernetes.io/session-cookie-hash annotation is used. This annotation is deprecated in Ingress controller 0.24.0.

Check the version of the Ingress controller, and then delete the annotation or use other annotations.

nginx.com/nginx.org check

Check whether the Ingress uses annotations that start with nginx.com/nginx.org. These annotations are used only for the commercial version of the NGINX Ingress controller and cannot be used by the open source version of the NGINX Ingress controller.

Use the annotations for the open source version of the NGINX Ingress controller. For more information about Ingresses, see NGINX Ingress management or NGINX Ingress Controller on the official site.

Status of Canary

To use the Canary feature, you must specify nginx.ingress.kubernetes.io/canary: "true". If you do not specify the setting, the Canary feature does not take effect.

To enable the Canary feature for an Ingress, add the nginx.ingress.kubernetes.io/canary: "true" annotation to the Ingress rules.