這次的鐵人賽,我以一個 DevOps 新手的身分,挑戰在 30 天內從零開始學習並實作 Terraform。這將是一份我個人的學習日誌,記錄著我在這趟學習旅程中的點滴與收穫。我會把複雜的概念轉化為易懂的筆記,從環境建置、HCL 語法,到實際部署雲端資源,如虛擬機器、網路與儲存空間。
除了知識分享,我也會記錄踩過的坑、解決問題的過程,以及學習上的心得體會。這份筆記不只為了自己,更希望能為所有想入門 Terraform 的人提供一個真實、可依循的參考。
這是一場自我挑戰,也是一個與自己對話的過程👀✨
昨天聊到 Variables 的進階應用,知道如何讓配置更彈性。今天要來認識另一個讓 Terraform 更智慧的功能:Data Sources。如果說 Va...
昨天我們聊到 Data Sources,可以從既有的資源中擷取資訊。今天來看另一個常用工具 Outputs —— 它能把 Terraform 建立好的資訊「輸出...
在前面幾天,我們從概念著手了解了 Terraform 的運作方式、狀態檔、Remote State,再一步步練習實作,從建立 VM、設定 Provider、活用...
過去幾天,我們已經學過 Terraform 的基本元件:resource、variable、output、data source。 但這些就像是散落一地的零件,...
昨天我們完成了第一個 VM module,成功把散落的資源組裝起來,變成可重複使用的積木。 但光是能用是還不夠的,在實務專案裡,我們應該去思考 如何設計一個好維...
昨天我們探討了「模組設計原則與參數管理」,知道了好的 module 應該像乾淨的 API:易讀、可用、又有彈性。 但想像一下,如果每次要建立 VPC 網路,你都...
為什麼需要好的專案架構? 在前面幾天的學習裡,我們慢慢累積了越來越多的 Terraform 配置。其實就跟開發應用程式一樣,如果一開始沒有好好設計架構,隨著功能...
在前幾天的專案架構練習中,我們已經學會了模組化與檔案拆分的重要性,知道如何把資源按功能分類、建立可重用模組。今天,我們要把同樣的思維延伸到 多環境管理,讓同一套...
昨天我們聊到 Workspace 多環境管理,學會如何讓同一份 Terraform 程式碼安全地部署在 Dev、Test、Prod,並且讓不同環境互不干擾。這對...
昨天我們聊到Resource Lifecycle,了解如何透過 create_before_destroy、prevent_destroy 等設定來保護資源不被...