I am using Terraform for cluster provisioning
This my script
resource "azurerm_resource_group" "rg" {
name = var.resource_group_name
location = var.location
}
# Private DNS
resource "azurerm_private_dns_zone" "ahasa-private" {
name = "abhi.io"
resource_group_name = azurerm_resource_group.rg.name
}
# AKS Cluster
resource "azurerm_kubernetes_cluster" "cluster" {
name = var.cluster_name
location = azurerm_resource_group.rg.location
resource_group_name = azurerm_resource_group.rg.name
dns_prefix = "learnk8scluster"
default_node_pool {
name = var.default_pool_name
node_count = var.node_count
vm_size = var.vm_size
os_disk_size_gb = var.os_disk_size_gb
enable_auto_scaling = true
min_count = var.min_count
max_count = var.
type = "VirtualMachineScaleSets"
}
identity {
type = "SystemAssigned"
}
}
if i type kubectl cluster-info i can see 
And if i try to access CoreDNS url in browser it comes like this

what is the reason for it. How can i access AKS cluster FQDN
Kubernetes uses client certificates, bearer tokens, an authenticating proxy, or HTTP basic auth to authenticate API requests through authentication plugins. For more on authentication to the API server please check here. AKS does not allow Anonymous access to the API server which is why you are getting the following:
Directly accessing the REST API
kubectl handles locating and authenticating to the API server. If you want to directly access the REST API with an http client like
curlorwget, or a browser, there are multiple ways you can locate and authenticate against the API server:Here is a bunch of steps that should get you started:
Note: his script relies on jq. You can alternatively use jsonpath as well.