2016-10-26 99 views
0

我正在尋找一種方法來使用boto來傳遞json文件,該文件將具有DNS條目,並且該DNS條目可以在路由53中儘可能快地進行。使用boto在路由53中創建DNS條目

欣賞任何可能的幫助,方向或任何東西。

感謝提前:)

+0

使用aws cli,我們可以做一個批處理請求,如此處所述 - [link](http://docs.aws.amazon.com/cli/latest/reference/route53/change-resource-record-sets.html ) 試圖找出如何使用boto做到這一點? –

+0

如果你已經有了一個Json文件。你爲什麼不用CloudFormation來做呢? – Ali

+0

實際上我想每30秒運行一次腳本,看看是否有任何新的機器可以升級到100,然後對於所有這些擴展的機器,創建一個包含實例詳細信息的json文件,並使dns條目在批量請求,而不是順序... –

回答

0

如果你能負擔得起,以保持腳本運行每隔30秒是偉大的。

您可以編寫一個執行以下操作的python腳本。

  • 觸發每一個的SNS通知自動定標的實例使用的CloudWatch度量
  • 綁定SNS與SQS隊列。
  • 從SQS隊列中檢索信息。 (實例IP和主機名)
  • 根據您的要求使用信息生成所需的Route53記錄。
  • 如果實例被刪除,則刪除其關聯的記錄。
+0

這是我們已有的當前機制,但由於我們依賴隊列而失敗。要擴展100臺機器,需要很長時間。 :( –

0

如果你的目標是增加對新創建的實例DNS條目,那麼你可以有實例註冊自己

A user data script可以在實例第一次啓動時自動運行。該腳本可以調用AWS Command-Line Interface (CLI)在路線53.註冊一個新的DNS條目

該腳本將執行以下操作:

  • 與所需的DNS CREATE進入
  • 調用aws route53 change-resource-record-sets命令創建一個JSON文件

參見:AWS CLI documentation for change-resource-record-sets

但是,你必須找到一種在實例終止時刪除DNS條目的方法。