Proxy 无法使用AWS提供程序为Terraform配置代理

Proxy 无法使用AWS提供程序为Terraform配置代理,proxy,terraform-provider-aws,Proxy,Terraform Provider Aws,我们正在运行Terraform v12.20以在AWS中提供基础设施。我们已经在EC2实例上安装了Terraform,我们需要配置公司代理,以便与网络外的服务通信。我们在no_代理中配置了sts.amazonaws.com。Terraform不尊重在环境变量中配置的代理,因为它在尝试连接sts.amazonaws.com时超时。下面是在实例上配置的代理 http_proxy=XXX:YYY https_proxy=XXX:YYY HTTPS_PROXY=XXX:YYY no_proxy=sts.

我们正在运行Terraform v12.20以在AWS中提供基础设施。我们已经在EC2实例上安装了Terraform,我们需要配置公司代理,以便与网络外的服务通信。我们在no_代理中配置了sts.amazonaws.com。Terraform不尊重在环境变量中配置的代理,因为它在尝试连接sts.amazonaws.com时超时。下面是在实例上配置的代理

http_proxy=XXX:YYY
https_proxy=XXX:YYY
HTTPS_PROXY=XXX:YYY
no_proxy=sts.amazonaws.com
NO_PROXY=sts.amazonaws.com
HTTP_PROXY=XXX:YYY
这就是我在尝试运行terraform init时遇到的错误

error validating provider credentials: error calling sts:GetCallerIdentity: RequestError: send request failed. caused by: Post https://sts.amazonaws.com/: dial tcp 54.239.21.217:443: i/o timeout
有人能帮我用terraform配置代理吗


谢谢。

看起来它正按照你告诉它的那样做。您说您的环境需要HTTP代理才能访问internet,但您已将sts.amazonaws.com放入no_proxy,这是您明确不希望代理的站点的环境变量-因此terraform没有使用您的代理访问sts.amazonaws.com,并且它失败了。简单地说,将sts.amazonaws.com从您的no_代理变量中删除。

这可能很愚蠢,但是您需要在这些变量之前使用
set
命令吗?您是否验证了环境中是否存在环境(如果是bash,您可能只需使用源代码进行测试)这是linux而不是windowsquestion stands,您是否验证了环境是否确实存在?是的,我在实例上使用了env | grep proxy,它具有以下值。http_proxy=XXX:YYY https_proxy=XXX:YYY https_proxy=XXX:YYY no_proxy=sts.amazonaws.com no_proxy=sts.amazonaws.com http_proxy=XXX:YYY