Service diagnostics helps you identify and fix configuration mismatches between Kubernetes Services and Classic Load Balancer (CLB) instances. Diagnostic checks cover billing methods, certificates, CLB reuse, CLB quotas, and warning events.
When you run Service diagnostics, ACK executes a data collection program on each node in the cluster. The program collects the system version, the status of workloads, Docker, and kubelet, and key error information from system logs. No business information or sensitive data is collected.
Diagnostic items
| Category | Description |
|---|---|
| Service | Checks consistency between Service configurations and CLB instance configurations |
| CLB quotas | 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 set in the Service annotation. | Update the Service annotation to match the billing method of the CLB instance. See Add annotations to the YAML file of a Service to configure CLB instances. |
LBCertId | Whether the certificate ID in the Service annotation matches the certificate used by the HTTPS listeners of the CLB instance. | Update the certificate ID annotation on the Service to match the certificate ID used by the HTTPS listeners of the CLB instance. See Add annotations to the YAML file of a Service to configure CLB instances. |
LBReusable | Whether the CLB instance is eligible for reuse across multiple Services. | Review the reuse constraints before sharing a CLB instance. See Considerations. |
ServiceWarningEvents | Whether the Service has generated warning events. Warning events contain [%s] in the event message. | Review the warning events and apply the corresponding fix. See Service errors and solutions. |
LBExisted | Whether the CLB instance associated with the Service exists. | If the CLB instance associated with the Service does not exist, diagnose the Service. See Service errors and solutions. |
ReadyPodNum | The number of backend pods in the Ready state for the Service. | Check whether the backend pods of the Service are in the Ready state. |
CLB quotas
Exceeding a CLB quota blocks pod or Service updates from being synchronized to the CLB instance. Check your current quota usage on the Quota Management page in the Server Load Balancer (SLB) console and submit a quota increase request if needed.
| Diagnostic item | What it checks | Default limit | Impact when exceeded |
|---|---|---|---|
SlbQuotaBackendserverAttachedNum | The number of CLB instances associated with an Elastic Compute Service (ECS) instance | 50 backend server groups per ECS instance | Pod updates cannot be synchronized to the backend servers of the CLB instances |
SlbQuotaBackendserversNum | The number of backend servers added to a CLB instance | 200 backend servers per CLB instance | Pod updates cannot be synchronized to the backend servers of the CLB instance |
SlbQuotaInstancesNum | The number of CLB instances under an Alibaba Cloud account | 60 CLB instances per account | New CLB instances cannot be created |
SlbQuotaListenersNum | The number of listeners configured on a CLB instance | 50 listeners per CLB instance | Service updates cannot be synchronized to the CLB instance |