Container Service for Kubernetes (ACK) provides Service diagnostics to help you troubleshoot issues with Kubernetes Services backed by Classic Load Balancer (CLB) instances. Diagnostic checks cover billing methods, certificates, CLB instance reuse, CLB quotas, and anomaly events.
When you run Service diagnostics, ACK runs a data collection program on each node in the cluster to collect diagnostic results. The program collects the system version, the status of workloads, Docker, and kubelet, and key error entries from system logs. ACK does not collect business information or sensitive data.
Diagnostic items
| Category | What it checks |
|---|---|
| Service | Consistency between Service configurations and CLB instance configurations |
| ResourceQuotas | Diagnoses issues related to CLB quotas |
Service
| Diagnostic item | What it checks | How to fix |
|---|---|---|
| LBInstanceChargeType | Whether the billing method of the CLB instance matches the billing method specified in the Service | If they differ, update the Service annotation to match the CLB instance billing method. See Add annotations to the YAML file of a Service to configure CLB instances. |
| LBCertId | Whether the CLB instance certificate matches the certificate specified in the Service | If they differ, update the certificate ID annotation of the Service to match the certificate used by the HTTPS listeners on the CLB instance. See Add annotations to the YAML file of a Service to configure CLB instances. |
| LBReusable | Whether the CLB instance can be reused | See Considerations for CLB reuse requirements. |
| ServiceWarningEvents | Whether the Service has generated error events | Service error events contain [%s] content. See Service errors and solutions. |
| LBExisted | Whether the CLB instance associated with the Service exists | If the CLB instance no longer exists, see Service errors and solutions. |
| ReadyPodNum | Whether the backend pods of the Service are in the Ready state | This diagnostic item checks whether the backend pods of a Service are in the Ready state. |
ResourceQuotas
When a CLB quota limit is reached, pod updates and Service changes can no longer be synchronized to the CLB instance. The following diagnostic items check whether any CLB quota has reached the default limit. You can view CLB quotas on the Quota Management page in the Server Load Balancer (SLB) console.
| Diagnostic item | What it checks | Default limit |
|---|---|---|
| SlbQuotaBackendserverAttachedNum | Number of CLB instances associated with an Elastic Compute Service (ECS) instance | 50 backend server groups per ECS instance |
| SlbQuotaBackendserversNum | Number of backend servers in a CLB instance | 200 backend servers per CLB instance |
| SlbQuotaInstancesNum | Number of CLB instances under an Alibaba Cloud account | 60 CLB instances per account |
| SlbQuotaListenersNum | Number of listeners configured for a CLB instance | 50 listeners per CLB instance |
After the number of CLB instances in your account reaches the upper limit, you cannot create new CLB instances.