所以,我们可以从这个有趣的问题中看到:https://github.com/aws/aws-cli/issues/4947
AWS CLI 2永远不会被推到pip。
在AWS MWAA(Managed AIrflow)中,我们 * 没有 * 指定apt-get级别安装的能力。我们只获得requirements.txt
,AWS V2无法通过该版本使用。这意味着,我们没有接口或介质来执行Amazon代表在该问题中所说的操作,即使用包管理器(来自Amazon的MWAA)。
最近,我们遇到了对kubernetes集群进行身份验证的问题,因为各种版本的AWS CLI * 硬编码 * auth版本:https://github.com/aws/aws-cli/blob/1.20.11/awscli/customizations/eks/get_token.py#L77
在其他版本中,它被硬编码为alpha
等。这意味着取决于工作人员提出的aws cli版本,它可能会或可能不会与MWAA的S3中的kubeconfig匹配。我们已经遇到了短暂的不匹配,如
{{refresh_config.py:71}} ERROR - exec: plugin api version client.authentication.k8s.io/v1alpha1 does not match client.authentication.k8s.io/v1beta1
如果我们“翻转”kubeconfig
{{refresh_config.py:71}} ERROR - exec: plugin api version client.authentication.k8s.io/v1beta1 does not match client.authentication.k8s.io/v1alpha1
由于我们使用Airflow中的kubernetes executor,我们需要get-token
:
user:
exec:
apiVersion: client.authentication.k8s.io/v1beta1
args:
- --region
- us-east-1
- eks
- get-token
- --cluster-name
- thor
command: aws
但是如所讨论的,该获取令牌有时返回不同版本的认证。
目前,我们已经将requirements.txt
中的awscli
硬固定到1.20.11
。然而,AWS说要 * 停止 * 使用V1:https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-mac.html
那么,说了这么多,我如何在我的AWS MWAA工作人员上安装特定版本的AWS CLI 2呢?我也会在那里提交AWS支持票证。
2条答案
按热度按时间vs91vp4v1#
MWAA目前不支持安装特定的AWS CLI版本。这是MWAA团队意识到的限制。
1sbrub3j2#
您可能需要查看Shell Launch(启动)脚本,以安装外部工具,例如使用bash和Yum。
见下面的链接