首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure DevOps管道错误-参数linuxProfile.ssh.publicKeys.keyData的值无效

Azure DevOps管道错误-参数linuxProfile.ssh.publicKeys.keyData的值无效
EN

Stack Overflow用户
提问于 2019-06-07 18:04:28
回答 2查看 1.6K关注 0票数 3

我创建了一个ARM模板,用于自动创建和/或更新AKS。我使用Azure bash命令行生成了RSA公钥,并将其输入到ARM模板中。我在Azure DevOps管道中使用该模板。部署失败。并显示错误消息:

代码语言:javascript
复制
[error]InvalidParameter: Provisioning of resource(s) for container service aks-openfaas-test-0619 in resource group rg-openfaas--test-0619 failed. Message: {
  "code": "InvalidParameter",
  "message": "The value of parameter linuxProfile.ssh.publicKeys.keyData is invalid. Please see https://aka.ms/aks-naming-rules for more details.",
  "target": "linuxProfile.ssh.publicKeys.keyData"
 }. Details:  undefined

我在https://docs.microsoft.com/en-us/azure/virtual-machines/linux/mac-create-ssh-keys上遵循了微软的指导。

我做错了什么?

EN

回答 2

Stack Overflow用户

发布于 2020-08-06 15:24:25

当我尝试在AKS节点池中使用时,出现了此错误。

在末尾添加\n。pub文件的内容如下所示,将json中的windowsuser@computername替换为\n

代码语言:javascript
复制
ssh-rsa ***Key*** windowsuser@computername
"linuxProfile": {
                    "adminUsername": "azureuser",
                    "ssh": {
                      "publicKeys": [
                        {
                            "keyData": "ssh-rsa *****Key*****\n"
                        }
                      ]
                    }
                  }
票数 0
EN

Stack Overflow用户

发布于 2020-08-07 23:40:25

尝试使用Azure模板创建新虚拟机时,我遇到了相同的错误

在我的例子中,我不得不再添加几个\n,而不仅仅是在键的末尾。

如果您有如下格式的公共SSH密钥:

代码语言:javascript
复制
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20200611"
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF==
---- END SSH2 PUBLIC KEY ----

将以下代码复制并粘贴到模板字段中后:Admin Public Key * :

如果你用\n替换至少四行新行,并删除随机生成的密钥中的任何额外空格,我终于让它工作了。

代码语言:javascript
复制
---- BEGIN SSH2 PUBLIC KEY ----\nComment: \"rsa-key-20200611\"\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF==\n---- END SSH2 PUBLIC KEY ----\n

另一种选择是,如果您想让它完全遵循相同的格式,那么您也可以为'\n'替换键中的任何空格字符' '

一旦这样做,密钥的格式将是正确的,并且您将使用模板正确地创建VM。这是一个常见的复制粘贴问题,仅将换行符替换为常规空格字符。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56492224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档