Azure Kubernetes Service(AKS) Troubleshooting FAQs

Azure Kubernetes Service(AKS) Troubleshooting FAQs

Azure Kubernetes Service(AKS) monitor can be configured only if you have already added a Microsoft Azure monitor in Applications Manager.
Ensure that you have met all the prerequisites for the Microsoft Azure monitor before monitoring Azure Kubernetes Service in Applications Manager.

How to verify if all the prerequisites have been met?

  1. To check if azure-cli is installed, execute the command: az --version
    Sample Output (For windows 10): azure-cli/2.31.0 Python/3.8.9 Windows/10 exe/AMD64 prompt/off
  2. To check if kubectl is installed, execute the command: kubectl version --short --client
    Sample Output: Client Version: v1.23.2

When will be the populated for an AKS monitor?

  1. We initiate data collection only when the AKS cluster is in RUNNING state.

    1. Possible states : RUNNING, STOPPED.

If data isn't being populated (No data/No UI message) in your AKS Monitor, it could be due to any of the following reasons:

  1. You haven't met the prerequisites required to monitor Azure Kubernetes Service in Applications Manager.
  2. Check if the Applications Manager installed user has root permission to access installed kubectl/azure-cli by verifying prerequisites mentioned above.
  3. The AKS Cluster is not in the RUNNING state.
Applications Manager initiates data collection only when the AKS cluster is in the RUNNING state. If the cluster is in the STOPPED state, data will be updated in the Cluster Information group in the Overview tab alone.

If Container Insights data is not being populated:

  1. Ensure that you have met the prerequisites particularly steps to enable container insights.
  2. Verify if Container Insights metrics are populated in Azure console only then Applications Manager can collect container insights metrics. 
  3. Steps to verify if the Container Insights metrics are populated in Azure console:
    Go to Azure portal -> Kubernetes Service -> Select the Cluster for which you have enabled container insights -> Monitoring tab in the left pane ->  Metrics -> check if Namespaces available under Custom category -> click on the required Namespace(insights.container/nodes) -> choose the metric(cpuUsagePercentage) to see the data

If you want to bypass proxy for AKS Cluster FQDN:

  1. In Applications manager, navigate to Settings > Product settings > Connectivity > Proxy server.
  2. First verify if Proxy server has been configured in Applications Manager.
  3. If yes, to exclude kubectl from using proxy, navigate to Azure Kubernetes Service monitor page > Overview tab > Cluster information and get Cluster FQDN information. Give the endpoint information in the Do not use proxy for addresses beginning with field without protocol(http/https) 
Proxy is only supported from kubectl version 1.19 and above.

If you want to disable automatic alerts for a specific node condition

Disable the specific condition by navigating to Settings > Performance Polling > Optimize Data Collection > Azure Kubernetes Service.



If a node is not in the ready state, its health will be automatically affected.

Possible Errors in AKS Monitor and their troubleshooting

Data collection is not performed as kubectl/azure-cli util is not installed.

  1. Ensure that you have followed and implemented all the prerequisites.

Data collection has stopped. Unable to connect to AKS cluster endpoint via kubectl.

  1. If you are using a private AKS endpoint and you encounter this error, refer here to run kubectl commands using private endpoint access.

Timeout exceeded when executing kubectl command.

  1. Increase the timeout value. (The default and minimum value for timeout is 30 seconds). To increase the value, go to Azure Kubernetes Service monitor page, monitor actions -> Edit monitor -> give the appropriate value and update.

  2. Ensure your system has a stable network connectivity.

  3. Run the following kubectl commands to get to know the approximate amount of time it takes to receive a response.

    1. kubectl get nodes

    2. kubectl get pods --all-namespaces

Unable to perform data collection as the Cluster is in Stopped state.

  1. Cluster is in stopped state. In this state, Data collection will not happen.
  2. To start data collection, go to Azure Portal -> Kubernetes Services -> Select the Cluster for which you want to start data collection -> click Start.

Unable to collect kubectl performance metrics. Reason: Command '{0}' not found

  1. Run the command which is causing the issue in the machine where kubectl and Application Manager installed. Refer this troubleshooting document to connect the cluster to run the problematic command and send us the output.