在使Kubernetes集群自动缩放器在AWS EKS上运行时,我遇到了许多部署问题。总而言之,我可以正常工作。
注意:
请勿使用头盔图表。
请参阅其版本表here
基于您的kubernetes版本,您需要转到其代码的该分支。警告:它们的“版本”不一定与要部署的容器版本一致。
现在是RTFM,但这是其他陷阱。
AWS目录中的示例未假定您使用的是EKS,默认情况下,EKS部署在AMZN2 linux上。您必须按照here的说明更新清单,以使用适当的SSL目录
其AWS目录中的示例为您假设了us-east-1
区域。您可能没有使用它,它也不是变量。更新清单2。
这是我最大的难题,这是我自己创造的问题。如果您拆除/重新创建了EKS集群,请确保aws-auth配置中具有最新的IAM角色。否则,从字面意义上讲-什么都不能对K8s APIServer进行身份验证,包括您的节点。
我遇到的错误:
错误:
1 static_autoscaler.go:118] Failed to update node registry: RequestError: send request failed caused by: Post https://autoscaling.us-west-2a.amazonaws.com/: dial tcp: lookup autoscaling.us-west-2a.amazonaws.com on RE.DA.CT.ED:53: no such host
解决方案:默认清单中的错误区域
错误:
container_linux.go:262: starting container process caused "process_linux.go:339: container init caused \"rootfs_linux.go:57: mounting \\\"/etc/ssl/certs/ca-certificates.crt\\\" to rootfs \\\"/var/lib/docker/overlay2/60c34f52ad1e6f0e3368d95794c71036fc465707f8ef3247032b6291e71d9331/merged\\\" at \\\"/var/lib/docker/overlay2/60c34f52ad1e6f0e3368d95794c71036fc465707f8ef3247032b6291e71d9331/merged/etc/ssl/certs/ca-certificates.crt\\\" caused \\\"not a directory\\\"\""
解决方案:%s/ca\-certificates\.crt/ca\-bundle\.crt/g