【Terraform學習】管理顯式依賴關系-depends_on(Terraform配置語言學習)

背景:

關于如何在機器上拉terraform代碼,初始化就不重復了,需要的可以查看前面的文章:

【Terraform學習】Terraform-AWS部署快速入門(快速入門)_向往風的男子的博客-CSDN博客

管理顯式依賴關系

  • 隱式依賴關系是 Terraform 了解資源之間關系的主要方式

  • 但是,有時資源之間存在對Terraform不可見的依賴關系

  • depends_on該參數可以為資源創建顯式依賴關系

  • 為了說明這一點,假設您在 EC2 實例上運行一個應用程序,該應用程序預期使用特定的 Amazon S3 存儲桶

  • 依賴項是在應用程序內部配置的,因此對 Terraform 不可見

  • 您可以使用顯式聲明依賴項。您還可以在參數中指定多個資源,Terraform 將等到所有資源都已創建完畢后再創建目標資源

    • 提示:由于 Terraform 將等到創建指定資源后再創建依賴資源,因此添加顯式依賴項可能會增加 Terraform 創建基礎結構所需的時間

  • 將以下內容添加到main.tf

resource "aws_s3_bucket" "example" {acl    = "private"
}resource "aws_instance" "example_c" {ami           = data.aws_ami.amazon_linux.idinstance_type = "t2.micro"depends_on = [aws_s3_bucket.example]
}module "example_sqs_queue" {source  = "terraform-aws-modules/sqs/aws"version = "2.1.0"depends_on = [aws_s3_bucket.example, aws_instance.example_c]
}
  • 此配置包括對新模塊的引用。必須先安裝模塊,然后 Terraform 才能使用它們

    • terraform get

  • 現在應用更改

    • terraform apply

  • 您將看到類似于以下內容的輸出

aws_s3_bucket.example: Creating...
aws_s3_bucket.example: Still creating... [10s elapsed]
## ...
aws_s3_bucket.example: Creation complete after 1m0s [id=terraform-20200813175124184300000001]
aws_instance.example_c: Creating...
aws_instance.example_c: Still creating... [10s elapsed]
aws_instance.example_c: Still creating... [20s elapsed]
aws_instance.example_c: Still creating... [30s elapsed]
aws_instance.example_c: Still creating... [40s elapsed]
aws_instance.example_c: Creation complete after 44s [id=i-08a44071a2517179f]
module.example_sqs_queue.aws_sqs_queue.this[0]: Creating...
module.example_sqs_queue.aws_sqs_queue.this[0]: Creation complete after 6s [id=https://sqs.us-west-1.amazonaws.com/561656980159/terraform-20200813175223563000000002]
module.example_sqs_queue.data.aws_arn.this[0]: Reading...
module.example_sqs_queue.data.aws_arn.this[0]: Read complete after 0s [id=arn:aws:sqs:us-west-1:561656980159:terraform-20200813175223563000000002]Apply complete! Resources: 3 added, 0 changed, 0 destroyed.
  • 由于實例和 SQS 隊列依賴于 S3 存儲桶,因此 Terraform 會等到創建存儲桶后開始創建其他兩個資源

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/37324.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/37324.shtml
英文地址,請注明出處:http://en.pswp.cn/news/37324.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【刪除vlan的方法】

提示錯誤 [SW1]undo vlan 10 Error: The VLAN has a L3 interface. Please delete it first. 解決辦法 undo interface Vlanif10 #刪除vlan 10下的接口 [SW1-GigabitEthernet0/0/1]dis this #刪除下列的IP

接口自動化必備技能——jmeter提取token方式以及設置成全局變量(跨線程組傳token值)方式

前言 今天Darren洋教大家如何使用jmeter中的插件來進行token值的提取與調用,今天Darren洋介紹兩種jmeter提取token值的方式,一種是在當前線程組中直接提取token值,一種是跨線程組的方式進行token值的提取并調用給不同線程組里的HTTP接口使用。…

如何讀取文件夾內的諸多文件,并選擇性的保留部分文件

目錄 問題描述: 問題解決: 問題描述: 當前有一個二級文件夾,第一層是文件夾名稱是“Papers(LNAI14302-14304)",第二級文件夾目錄名稱如下圖藍色部分所示。第三層為存放的文件,如下下圖所示,每一個文件中,均存放三個文件,分別為copyright.pdf, submission.pdf, s…

【PYTHON】WebSocket服務端與客戶端通信實現

目錄 1 簡介 2 WebSocket優點 3 前后端交互的方式 4 心跳機制和重連機制 5 后端代碼 6 測試

重磅發布!曙光存儲“3+N”,綠色存力新選擇

8月9-10日,2023年數據中心市場年會在京舉辦。會上,中科曙光存儲產品事業部總監石靜發表《綠色存力 打通綠色數據中心最后一站》主題演講。“在今天,數據中心正在成為‘高能耗’產業,綠色節能從可選項走向必選項。曙光存儲跨越綠色…

管理 IBM Spectrum LSF

管理 IBM Spectrum LSF 了解如何管理 IBM Spectrum LSF 集群,控制守護程序,更改集群配置以及使用主機和隊列。 管理 LSF 作業和作業調度策略。 查看作業信息和控制作業。 了解如何配置資源并將其分配給 LSF 作業。 了解如何在 LSF 集群中提交&#xff0…

開發測試框架一 - 創建springboot工程及基礎操作

一、創建及運行方式 1. 從官網導入: 注意:由于我的java版本是1.8;所以選中了spring2.7.14;如果你的java版本是9及以上,選中spring3相關的同時Java 版本也要對應起來 2. 創建第一個get請求 創建Controller package及…

mysql滑動窗口案例

獲取學科最高分 SELECT DISTINCT name,subject,MAX(score) OVER (PARTITION by subject) as 此學科最高分數 from scores;獲取學科的報名人數 select DISTINCT subject,count(name) over (partition by subject) as 報名此學科的人數 from scores; 求學科總分 SELECT DISTI…

JavaScript高級:常見設計模式

設計模式是在軟件開發中重復出現的問題的解決方案,它們是經過驗證的、被廣泛接受的最佳實踐。設計模式可以讓我們避免重復造輪子,提高代碼質量和可維護性。在本文中,我們將介紹幾種常見的設計模式,以及它們的實現和應用。 1. 單例…

Conda(Python管理工具)

1.簡介 Conda是一個開源的包管理器和環境管理器,主要用于管理Python,但也可以用于其他語言。它主要用于安裝、管理和更新軟件包及其依賴項,以及創建、保存、加載和切換不同的開發環境。Conda可以在Windows、MacOS和Linux系統上使用&#xff…

Spring Boot + Vue3前后端分離實戰wiki知識庫系統十二--用戶管理單點登錄開發一...

目標: 在上一次https://www.cnblogs.com/webor2006/p/17533745.html我們已經完成了文檔管理的功能模塊開發,接下來則開啟新模塊的學習---用戶登錄,這塊還是有不少知識點值得學習的,先來看一下整體的效果,關于效果官網有…

2023全國大學生數學建模競賽C提思路模型代碼

目錄 1.C題思路模型:比賽開始后,第一時間更新,獲取見文末名片 2.比賽時間:2023年9月7日18點到2023年9月10日20點 3 全國大學生數學建模競賽常見數模問題 3.1 分類問題 3.2 優化問題 詳細思路見此名片,開賽第一時間…

YOLOv8目標檢測算法

YOLOv8目標檢測算法相較于前幾代YOLO系列算法具有如下的幾點優勢: 更友好的安裝/運行方式速度更快、準確率更高新的backbone,將YOLOv5中的C3更換為C2FYOLO系列第一次嘗試使用anchor-free新的損失函數 YOLOv8簡介 YOLOv8 是 Ultralytics 公司繼 YOLOv5…

FiboSearch Pro – Ajax Search for WooCommerce 商城AJAX實時搜索插件

FiboSearch Pro是最受歡迎的WooCommerce 產品搜索插件。它為您的用戶提供精心設計的高級 AJAX 搜索欄,并提供實時搜索建議。默認情況下,WooCommerce 提供非常簡單的搜索解決方案,沒有實時產品搜索,甚至沒有 SKU 搜索。FiboSearch&…

網絡基礎(一)橋接網絡

網絡基礎知識 橋接網絡 橋接網絡是一種網絡設計技術,其目的是將兩個或多個網絡段連接在一起,使它們在邏輯上表現為單個網絡。這通過使用網絡橋來實現,網絡橋工作在數據鏈路層(第2層),只關心MAC地址&#…

uniapp開發微信小程序底部地區選擇彈框

個人項目地址: SubTopH前端開發個人站 (自己開發的前端功能和UI組件,一些有趣的小功能,感興趣的伙伴可以訪問,歡迎提出更好的想法,私信溝通,網站屬于靜態頁面) SubTopH前端開發個人站…

React Native 圖片組件基礎知識

在 React Native 中使用圖片其實跟 HTML 中使用圖片一樣簡單,在 React Native 中我們使用Image組件來呈現圖片的內容,其中主要的屬性有:source。這個屬性主要是設置圖片的內容,它可以是網絡圖像地址、靜態資源、臨時本地圖像以及本…

Android側滑欄(一)可縮放可一起移動的側滑欄

在實際的各類App開發中,經常會需要做一個左側的側滑欄,類似于QQ這種。 今天這篇文章總結下自己在開發中遇到的這類可以跟隨移動且可以縮放的側滑欄。 一、實現原理 使用 HorizontalScrollView 實現一個水平方向的可滑動的View,左布局為側滑…

MySQL-MGR報錯MY-011526

問題背景: 單主MGR集群,主節點在服務器意外重啟之后,無法重新加入現有MGR集群,報錯誤[MY-011526] [Repl] Plugin group_replication reported: This member has more executed transactions than those present in the group. Local transact…

2023年度漏洞預警

1 漏洞 漏洞是硬件,軟件,協議的具體實現或系統安全策略上存在的缺陷。從而可以使用攻擊者能夠在破壞系統。 2 漏洞匯總數據 以下數據針對 23 年截至8月期間爆發的高危嚴重漏洞進行了數據統計和分析, 具體的數據如下所示: 漏洞…