如前所述,output variable使我们的基础设施信息可在命令行上获得,并可向其他Terraform配置公开信息
在我们的用例中,我们希望公开负载均衡器和CloudFront分发的URL,以便我们可以测试我们的应用程序是否已成功部署。
在terraform
文件夹中打开outputs.tf
, 添加以下内容并保存文件
output "alb_endpoint_uri" {
value = aws_lb.mission_app.dns_name
}
output "alb_endpoint_url" {
value = "https://${aws_lb.mission_app.dns_name}"
}
output "cloudfront_endpoint_url" {
value = "https://${aws_cloudfront_distribution.mission_app.domain_name}"
}
在outputs.tf
文件夹中,我们正在创建三个输出变量来导出应用程序负载均衡器URI、应用程序负载均衡器URL和CloudFront端点URL。
运行命令terraform apply
来应用部署
现在我们已经创建了Terraform输出变量
假设前一步骤中的所有内容都已成功部署,我们现在应该在终端窗口中看到一些输出,类似于下面显示的内容。
复制 cloudfront_endpoint_url 输出中的值,并在当前浏览器的新标签页中输入:
验证应用程序网页:
敏感值可能存储在状态文件中。例如,某些资源如 random_password 或 tls_private_key 可能包含敏感值。尽管控制台输出将显示占位符字符(*),但它在状态文件中是明文。
建议的迁移方式是在部署后使用外部内容来存储它,例如aws s3.
运行命令terraform destroy
来销毁部署