尝试使用 eksctl 和 ssh-access 创建 eks 集群
Posted
技术标签:
【中文标题】尝试使用 eksctl 和 ssh-access 创建 eks 集群【英文标题】:Trying to create eks cluster using eksctl with ssh-access 【发布时间】:2019-11-21 13:35:50 【问题描述】:使用 EKSCTL 创建 eks 集群时,会抛出类似 error decoding SSH public key
的错误
pem文件的权限为400
我正在执行的命令
eksctl create cluster --name=thirdekscluster --ssh-access --ssh-public-key=mysshkey.pem --nodegroup-name=standard-workers --node-type=t3.medium --nodes=3 --nodes-min=1 --nodes-max=4 --node-ami=auto
错误:
[ℹ] using region ap-south-1
[ℹ] setting availability zones to [ap-south-1a ap-south-1c ap-south-1b]
[ℹ] subnets for ap-south-1a - public:xxxxx/19 private:xxxx/19
[ℹ] subnets for ap-south-1c - public:xxxxx/19 private:xxxx/19
[ℹ] subnets for ap-south-1b - public:xxxxx/19 private:xxxx/19
[ℹ] nodegroup "standard-workers" will use "ami-01b6a163133c31994" [AmazonLinux2/1.12]
[✖] computing fingerprint for key "mysshkey.pem":
error decoding SSH public key:
"-----BEGIN RSA PRIVATE KEY
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END RSA PRIVATE KEY-----"
err: illegal base64 data at input byte 0
【问题讨论】:
【参考方案1】:感谢您的回复,但我自己解决了。
created cluster using - eksctl create cluster --name=thirdekscluster --ssh-access=true --ssh-public-key=sreeeks --nodegroup-name=standard-workers --node-type=t3.medium --nodes=3 --nodes-min=1 --nodes-max=4 --node-ami=auto
命令中的SSH部分应该是--ssh-access=true
【讨论】:
【参考方案2】:我遇到了同样的问题,在我的情况下,我试图使用私钥而不是公钥。 (密钥直接在 aws ec2 控制台面板上创建)
解决方案: ssh-keygen -y -f .pem >> .pem(只是一个说明性名称)。
【讨论】:
【参考方案3】:我使用 Bitvise 客户端密钥管理以 OpenSSH 格式导出。之后,eksctl 起作用了!
【讨论】:
【参考方案4】:对我来说,它可以通过将公钥复制到不同的 txt 文件来删除 BOM。
【讨论】:
【参考方案5】:eksctl create cluster --ssh-access --ssh-public-key=~/.ssh/id_rsa.pub --nodegroup-name=standard-workers --node-type=t3.medium --nodes=2 --nodes-min=1 --nodes-max=2
这肯定行得通。
【讨论】:
你会评论你的命令行语法吗?特别是它与@Sreejith 所写的有何不同?以上是关于尝试使用 eksctl 和 ssh-access 创建 eks 集群的主要内容,如果未能解决你的问题,请参考以下文章
AWS System Manager GetParameters 权限被隐式拒绝
k8s在AWS EKS部署并通过ALB访问k8s Dashboard保姆级教程
连接失败 - 使用 php 7.3 和 8.0 失败 - 尝试 wamp 和 xampp - 尝试访问 sqlserver 数据库