|
| 1 | +--- |
| 2 | +title: Control plane configuration validation errors |
| 3 | +description: Learn details about each control plane configuration validation error. |
| 4 | +author: sethmanheim |
| 5 | +ms.author: sethm |
| 6 | +ms.topic: concept-article |
| 7 | +ms.date: 02/26/2025 |
| 8 | + |
| 9 | +--- |
| 10 | + |
| 11 | +# Control plane configuration validation errors |
| 12 | + |
| 13 | +This article describes how to identify and resolve [ControlPlaneConfigurationValidation](configure-ssh-keys.md) error codes that can occur when you create and deploy an AKS cluster on Azure Local. |
| 14 | + |
| 15 | +## Symptoms |
| 16 | + |
| 17 | +When you try to create an AKS Arc cluster, you receive an error message that appears as follows: |
| 18 | + |
| 19 | +```json |
| 20 | +admission webhook "vhybridakscluster.kb.io" denied the request: { |
| 21 | + "result": "Failed", |
| 22 | + "validationChecks": [ |
| 23 | + { |
| 24 | + "name": "ControlPlaneConfigurationValidation", |
| 25 | + "message": "ControlPlane: Global LinuxProfile SSH public keys should be valid and non-empty. ssh: no key found", |
| 26 | + "recommendation": "Please check https://aka.ms/AKSArcValidationErrors/ControlPlaneConfigurationValidation for recommendations" |
| 27 | + } |
| 28 | + ] |
| 29 | +} |
| 30 | +``` |
| 31 | + |
| 32 | +The following section describes the error messages that you might see when you encounter the **ControlPlaneConfigurationValidation** error code. |
| 33 | + |
| 34 | +## Global LinuxProfile SSH public keys must be valid and non-empty |
| 35 | + |
| 36 | +If you don't provide valid SSH key information during Kubernetes cluster creation and no SSH key exists, you receive error messages similar to the following: |
| 37 | + |
| 38 | +- An RSA key file or key value must be supplied to SSH Key Value. |
| 39 | +- Control Plane: Missing Security Keys in Cluster Configuration. |
| 40 | +- LinuxProfile SSH public keys should be valid and non-empty. |
| 41 | +- Global LinuxProfile SSH public keys should be valid and non-empty. |
| 42 | + |
| 43 | +To mitigate the issue, see [Generate and store SSH keys with the Azure CLI](/azure/virtual-machines/ssh-keys-azure-cli#generate-new-keys) to create the SSH keys. Then, see [Create Kubernetes clusters](aks-create-clusters-cli.md) for the interface you're using. If you're using the REST API, see [provisioned cluster instances](/rest/api/hybridcontainer/provisioned-cluster-instances) to create the provisioned cluster instance. |
| 44 | + |
| 45 | +## Control plane count and VM size |
| 46 | + |
| 47 | +In Kubernetes, control plane nodes manage and orchestrate the cluster. They run key components such as API Server, etcd, scheduler, etc. Control plane nodes maintain cluster state, schedule workloads, and ensure high availability, often using multiple nodes for redundancy. |
| 48 | + |
| 49 | +To successfully create an AKS Arc cluster, you must specify at least one control plane node count. Also, to maintain etcd quorum, the control plane node count should be an odd number. For more information about supported count and VM SKU options, see [Scale requirements for AKS on Azure Local](scale-requirements.md#support-count-for-aks-on-azure-local). |
| 50 | + |
| 51 | +## Next steps |
| 52 | + |
| 53 | +[Troubleshoot issues in AKS enabled by Azure Arc](aks-troubleshoot.md) |
0 commit comments