簡體   English   中英

如何自動獲取DNS ELB ELB AWS Cloud formation

[英]how to get DNS ELB automatically ELB AWS Cloud formation

對於我的堆棧,我需要在 AWS 上自動檢索我的負載均衡器的 dns,因為我刪除/創建更新我的堆棧和我的服務器,名稱一直在變化,或者我需要能夠從我的 ELB 中自動檢索 dns在亞馬遜

感謝

目前尚不清楚您是否在同一個堆棧中創建該負載均衡器,以及您在談論哪個負載均衡器。 如果它是同一堆棧中的 ELB,這非常容易,方法是使用!GetAtt function 和正確的 output。有關 ELB 在 cloudformation 中的輸出的信息可以在此處找到。

如果您正在談論一個已經存在的負載均衡器,那么有幾個選項。 如果它是在另一個堆棧中創建的,您始終可以通過使用cloudformation自帶的 ImportValue function 來交叉引用它。 第二種選擇是將其作為參數傳遞給堆棧。 如果該值隨后發生變化,您可以使用新值作為參數輕松更新您的模板。

最后一個選項是使用執行 lambda function 的自定義資源,它檢索所需的 DNS 值並將其作為 output 值返回給 CloudFormation 資源。 然后,您可以使用!GetAtt function 來引用返回值。 但是,您必須注意,當您更新堆棧時,此 function 不會始終執行,因此您可以添加一個虛擬參數作為自定義資源的輸入,您可以更改該參數以強制重新運行 lambda 以檢索最新值。 這個選項的實現需要做一些工作,並且只比簡單地使用堆棧參數傳遞值更容易使用。

在 Cloudformation 模板的 Output 部分,您可以獲得 DNS url

.
.
.
Resources:
      .
      .
      .
  MyLoadBalancer:
    Type: AWS::ElasticLoadBalancing::LoadBalancer
    Properties:
      .
      .
.
.
.
Outputs:
  LoadBalancerOutput:
    Value: !GetAtt MyLoadBalancer.DNSName  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM