Infrastructure as Code
基礎設施即程式碼
基礎設施即程式碼會用機器能讀的檔案管理基礎設施,不只靠人手點選。團隊可以版控、審查、測試和套用這些檔案。
reviewed configuration -> optional plan -> apply -> reconcile observed statemain · commit c82a+1 ~1 -0✓reviewer: Mayareviewed configuration -> optional plan -> apply -> reconcile observed stateOPS另一個例子
一項變更要新增測試資料庫。Terraform 會比對設定、已記錄狀態和真實資源,再於 apply 前顯示 plan。
主要部分
- 01設定檔
- 02輸入值與可重用模組
- 03選用的變更 plan
- 04審查與套用關卡
- 05state 或資源查詢
- 06秘密與存取控制
什麼時候用
需要重複建立或改動基礎設施時,可以使用 IaC。要檢查預計變更、保護 state 與敏感資料,並且不要提交明文密碼或金鑰。
什麼時候不要用
不要假設每個 IaC 工具都有相同的 plan 或 state 模型。不要把明文密碼、金鑰、Terraform state 或 plan 檔提交到 Git。
程式裡的名稱
reviewed configuration -> optional plan -> apply -> reconcile observed state 上線前要檢查
發布前核對正確的程式碼儲存庫、分支、目標與程式差異。保留尚未發布的工作,並通過審查與自動檢查(CI)。記錄衝突、資料遺失風險、發布順序、版本追查、復原與回復上一版的方法。
預期成果:用 基礎設施即程式碼 (Infrastructure as Code) 安全交付或復原變更,並留下可查核記錄。 使用者情境:一項變更要新增測試資料庫。Terraform 會比對設定、已記錄狀態和真實資源,再於 apply 前顯示 plan。 交付概念或操作:基礎設施即程式碼 (Infrastructure as Code)。 適用理由:需要重複建立或改動基礎設施時,可以使用 IaC。要檢查預計變更、保護 state 與敏感資料,並且不要提交明文密碼或金鑰。 不應使用的情況:不要假設每個 IaC 工具都有相同的 plan 或 state 模型。不要把明文密碼、金鑰、Terraform state 或 plan 檔提交到 Git。 交付要求:指出程式碼儲存庫與目標。列出前置條件、變更內容、審查與自動檢查(CI)、衝突和資料遺失風險、發布順序,以及復原或回復上一版的指令。 儲存庫防護:保留尚未發布的工作與可查核歷史。沒有明確備份時,不可執行破壞性操作。發布前核對精確的程式差異與遠端儲存庫目標。 驗收條件:預期的程式差異已審查,必要檢查已通過。目標版本可追查,失敗復原已演練,發布歷史也可查核。 證據與限制(證據邊界):沒有一份官方標準能管到全部內容。不同團隊、平台或框架的用法可能不同。 待確認:程式碼儲存庫與分支、協作狀態、發布環境、核准負責人、受保護的檢查,以及要回復的版本。
檢查這份需求
請 AI 程式助手檢查目前如何使用 基礎設施即程式碼 (Infrastructure as Code)。 定義:基礎設施即程式碼會用機器能讀的檔案管理基礎設施,不只靠人手點選。團隊可以版控、審查、測試和套用這些檔案。 正式環境檢查:發布前核對正確的程式碼儲存庫、分支、目標與程式差異。保留尚未發布的工作,並通過審查與自動檢查(CI)。記錄衝突、資料遺失風險、發布順序、版本追查、復原與回復上一版的方法。 修改程式前,先列出看到的證據、缺口、嚴重程度,以及最小且安全的修正。