Not able to install AppServices Extension into Arc onprem cluster, MicroK8s

oleksii-parfeniuk 5 Reputation points
2024-06-23T09:52:53.57+00:00

I am failing to install AppService extension into my Arc K8s cluster, running by MicroK8s.

Have a VM in datacenter, Ubuntu 22, installed lates Azure CLI and all the required extensions according to https://azurearcjumpstart.com/azure_arc_jumpstart/azure_arc_k8s/microk8s/local_microk8s article.

Installed MicroK8s with the following extensions

User's image

Tried to use "default" and "microk8s-hostpath" storage classes.

Tried to add extension from UI and from this command:

az k8s-extension create \

--resource-group rg-clusters\

--name appservice-ext \

--cluster-type connectedClusters \

--cluster-name my-cluster \

--extension-type 'Microsoft.Web.Appservice' \

--auto-upgrade-minor-version true \

--scope cluster \

--release-namespace appservice-ns \

--configuration-settings "appsNamespace=appservice-ns" \

--configuration-settings "clusterName=my-cluster" \

--configuration-settings "keda.enabled=true" \

--configuration-settings "buildService.storageClassName=microk8s-hostpath" \

--configuration-settings "buildService.storageAccessMode= ReadWriteMany" \

--configuration-settings "customConfigMap=appservice-ns/kube-environment-config" \

--configuration-settings "logProcessor.appLogs.destination=log-analytics" \

--config-protected-settings "logProcessor.appLogs.logAnalyticsConfig.customerId=${LOG_ANALYTICS_WORKSPACE_ID_ENC}" \

--config-protected-settings "logProcessor.appLogs.logAnalyticsConfig.sharedKey=${LOG_ANALYTICS_KEY_ENC}"
```It takes ages, more than 20 minutes, then fails - shows "Provisioning state - Failed".

Cannot get any logs off it - not sure what fails and because of what reason. Please advise?

Perhaps, this combination: Ubuntu 22 x64 + MicroK8s + Arc AppService Extension - does not work?

Many thanks!

Azure Arc
Azure Arc
A Microsoft cloud service that enables deployment of Azure services across hybrid and multicloud environments.
435 questions
Azure Kubernetes Service (AKS)
Azure Kubernetes Service (AKS)
An Azure service that provides serverless Kubernetes, an integrated continuous integration and continuous delivery experience, and enterprise-grade security and governance.
2,141 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Sina Salam 11,916 Reputation points
    2024-06-23T15:56:10.3633333+00:00

    Hello alex-radiant,

    Welcome to the Microsoft Q&A and thank you for posting your questions here.

    Problem

    I understand that you are having failed installation of AppService extension into your Arc K8s cluster, running by MicroK8s.

    Solution

    When attempting to install the Azure Arc AppService extension on a MicroK8s Kubernetes cluster, there are several potential points of failure that could cause the provisioning state to fail.

    Among many things to look into are the followings and links for more detail instructions:

    1. Ensure all required MicroK8s addons are enabled -MicroK8s Addons: https://microk8s.io/docs/addons
    2. Verify Kubernetes version compatibility: https://docs.microsoft.com/en-us/azure/azure-arc/kubernetes/
    3. Check Azure CLI and extensions: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli
    4. Check Network Connectivity and ensure your VM has internet connectivity and can access Azure services: https://docs.microsoft.com/en-us/azure/virtual-network/network-security-groups-overview
    5. Ensure the service principal or managed identity has the necessary permissions: https://docs.microsoft.com/en-us/azure/azure-arc/kubernetes/manage-aks-rbac
    6. Check MicroK8s status: microk8s status --wait-ready microk8s inspect
    7. Verify storage class: kubectl get storageclass
    8. Collect events and logs: kubectl get events -n appservice-ns and kubectl logs -n appservice-ns <pod-name>

    References

    Available extensions for Azure Arc-enabled Kubernetes clusters - Azure Arc

    Accept Answer

    I hope this is helpful! Do not hesitate to let me know if you have any other questions.

    ** Please don't forget to close up the thread here by upvoting and accept it as an answer if it is helpful ** so that others in the community facing similar issues can easily find the solution.

    Best Regards,

    Sina Salam


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.