aws-lambda-layer-kubectl配置错误

时间:2019-10-21 23:38:46

标签: amazon-web-services aws-lambda kubectl aws-lambda-layers

我需要在Lambda函数中针对EKS集群运行一些kubectl命令。此功能最终将需要查询ECR来获取图像。使用aws-lambda-layer-kubectl

时遇到以下错误

我相信我已经正确部署了lambda层,因为我可以看到其ARN arn:aws:lambda:us-east-1:xxxxxxxx:layer:kubelambda:1

screenshot of lambda function using aws-lambda-layer-kubectl

lambda函数代码如下

lambda function code

但是,当我运行lambda函数时,出现以下错误

/var/task/bootstrap: line 7: aws: command not found
/var/task/bootstrap: line 12: kubectl: command not found

问题

  1. 这是怎么了?
  2. 是否有从ECR检索图像的特定政策?

谢谢。

1 个答案:

答案 0 :(得分:0)

可能您已经知道了这一点,但是该层按照自述文件https://github.com/aws-samples/aws-lambda-layer-kubectl中所述将可执行文件保存在/ opt路径下。对于aws,它是/ opt / awscli / aws;对于kubectl,它是/ opt / kubectl / kubectl。