&引用;“填充不正确”;尝试使用AKS在Azure上创建托管Kubernetes群集时

&引用;“填充不正确”;尝试使用AKS在Azure上创建托管Kubernetes群集时,azure,kubernetes,azure-cli,azure-container-service,Azure,Kubernetes,Azure Cli,Azure Container Service,我正在通过尝试在Azure容器服务(AKS)上建立Couchbase群集。该教程使用的是终端/Mac,我使用的是Powershell/Windows 我还没来得及弄到Couchbase的部分就出了差错。我从命令行成功创建了一个资源组(我称之为“cb_ask_spike”,是的,它确实出现在门户上),但随后我尝试创建一个AKS集群: az aks创建——资源组cb_aks_spike——名称cbakscluster 我还尝试: az-aks-create——资源组cb\u-aks\u-spike—

我正在通过尝试在Azure容器服务(AKS)上建立Couchbase群集。该教程使用的是终端/Mac,我使用的是Powershell/Windows

我还没来得及弄到Couchbase的部分就出了差错。我从命令行成功创建了一个资源组(我称之为“cb_ask_spike”,是的,它确实出现在门户上),但随后我尝试创建一个AKS集群:

az aks创建——资源组cb_aks_spike——名称cbakscluster

我还尝试:

az-aks-create——资源组cb\u-aks\u-spike——名称cbakscluster——生成ssh密钥

在这两种情况下,我都会得到一个错误:

az aks创建:错误:填充不正确

我不知道这个错误消息是什么意思,而且我似乎在文档或任何地方都找不到对它的任何引用。我做错了什么


我正在使用azure cli v2.0.31。

今天刚刚验证了在Powershell中使用az cli的版本2.0.31。您可能需要首先运行az组,然后创建az-aks命令。截图供您参考。

今天刚刚在Powershell 2.0.31版中使用az cli进行了验证。您可能需要首先运行az组,然后创建az-aks命令。截图供您参考。

我很有信心我已经解决了为什么会出现这个错误,而且我已经解决了。现在,我相信这是一个bug,它还没有被修复,但是有一个解决方法

首先需要注意的是,
--generate ssh
在~/.ssh中生成一个新的ssh密钥

我有一种预感,因为~对我来说是“C:\Users\Matthew Groves”,所以路径中的空间导致了问题。果然,我创建了一个名为“mgroves”的新帐户~现在是“C:\Users\mgroves”,瞧,我再也没有收到“不正确的填充”错误消息了


因此,解决方法是要么使用新帐户(巨大的痛苦),要么(这就是我所做的,也是一个巨大的痛苦,因为它,我仍然在我的整个系统中到处发现小问题。

我很有信心我解决了为什么会出现这个错误,我已经解决了。目前,我相信这是一个错误,它还没有修复,但有一个解决办法

首先需要注意的是,
--generate ssh
在~/.ssh中生成一个新的ssh密钥

我有一种预感,因为~对我来说是“C:\Users\Matthew Groves”,路径中的空格导致了问题。果然,我创建了一个名为“mgroves”的新帐户~现在是“C:\Users\mgroves”,瞧,我再也没有收到“不正确的填充”错误消息


因此,解决方法是要么使用新帐户(巨大的痛苦),要么(这就是我所做的,也是一个巨大的痛苦,因为它,我仍然在我的系统中到处发现小问题。

除了现在批准的答案之外,还有一个解决方案,它不需要你更改任何目录或帐户名,而且也很容易实现

正如其他答案中正确指出的那样,如果路径中有空间,Azure CLI无法处理生成的SSH密钥将存储的实际位置。即
C:\Users\Admin Account\.SSH\

使用
az aks create
命令时,您可以使用
--generate ssh key
让Azure CLI处理它,也可以使用
--ssh key value
指定一个已经存在的ssh key

我曾经在
C:\Users\Admin Account\.SSH\
目录中生成一个新的SSH密钥对:

ssh-keygen -f ~/.ssh/aks-ssh
现在创建Azure AKS群集,同时使用以下命令指向此新SSH密钥:

az aks create \
  --resource-group YourResourceGroup \
  --name YourClusterName \
  --node-count 3 \
  --kubernetes-version 1.16.8 \
  --ssh-key-value ~\.ssh\aks-ssh.pub

您可以开始了!

除了现在批准的答案之外,还有一个解决方案,它不需要您更改任何目录或帐户名,而且也很容易实现

正如其他答案中正确指出的那样,如果路径中有空间,Azure CLI无法处理生成的SSH密钥将存储的实际位置。即
C:\Users\Admin Account\.SSH\

使用
az aks create
命令时,您可以使用
--generate ssh key
让Azure CLI处理它,也可以使用
--ssh key value
指定一个已经存在的ssh key

我曾经在
C:\Users\Admin Account\.SSH\
目录中生成一个新的SSH密钥对:

ssh-keygen -f ~/.ssh/aks-ssh
现在创建Azure AKS群集,同时使用以下命令指向此新SSH密钥:

az aks create \
  --resource-group YourResourceGroup \
  --name YourClusterName \
  --node-count 3 \
  --kubernetes-version 1.16.8 \
  --ssh-key-value ~\.ssh\aks-ssh.pub

您可以开始了!

检查这些步骤是否有帮助。礼貌@ragss。这是一个类似的命令:
az aks create--resource group$UNIQUE\u NAME--NAME$UNIQUE\u NAME--node count 1--generate ssh key
,我得到了相同的错误:(解决方法-使用Powershell选项在Azure Portal中尝试Azure Cloud Shell。刚刚测试过它是否有效。检查这些步骤是否有帮助。礼貌@ragss。这是一个类似的命令:
az aks create--resource group$UNIQUE_NAME--NAME$UNIQUE_NAME--node count 1--生成ssh密钥,我得到相同的错误:(解决方法-使用Powershell选项在Azure Portal中尝试Azure Cloud Shell。刚刚测试过它是否有效。我遇到了相同的问题,并将此解决方案应用于我的案例,但仍然得到了“不正确的填充”“错误。@Anthony我最近发现了一些问题,并发布了我的答案,因此您可能想检查一下是否与您的答案相同。这个答案会分散您的注意力。问题是您当前的路径中有一个空格。请参阅Matthew Groves的答案。我遇到了同样的问题,并将此解决方案应用于我的案例,但仍然得到了“不正确的填充”错误。@Anthony我最近发现了一些问题并发布了我的答案,所以你可能想检查一下对你来说是否相同。这个答案会分散你的注意力。问题是你当前的路径有一个空间。请参阅Matthew Groves的答案。