OpenTofu 1.7對於DevSecOps的意義
好的,請舉手,誰在使用Kubernetes部署容器,並利用基礎架構即代碼(IaC)自動化其佈建、安全性和維護?對,你們當中有許多人這樣做。直到最近,這意味著你們當中許多人也使用HashiCorp的Terraform。在HashiCorp更改其開源許可證後,許多Terraform開發人員將代碼分支為OpenTofu,而你們當中相當一部分人轉而使用OpenTofu。
如果您是轉移到OpenTofu的DevOps人員之一,那麼您已經獲得了OpenTofu 1.7.0版本的回報。此版本的主要亮點是引入端到端的狀態加密功能。這項功能可確保狀態檔案在任何儲存後端都受到保護,不會遭到未經授權的存取。
雖然這項功能對從事DevOps的任何人都很重要,但它特別與DevSecOps緊密配合。使用Terraform時,強烈建議您使用HashiCorp Vault作為集中式密碼管理系統。在這個OpenTofu版本中,您可以透過環境變數來保護加密密碼短語,或選擇強大的金鑰管理系統,例如AWS金鑰管理服務(KMS)、GCP KMS或開源Vault分支OpenBao。
OpenTofu缺乏像HashiCorp Sentinel為Terraform提供的原則即代碼執行框架。對於OpenTofu,最好使用第三方開源程式,例如Open Policy Agent(OPA),它可以將安全原則直接嵌入OpenTofu配置中。您可以將OpenTofu和OPA配置存儲在像Git這樣的版本控制系統中。這樣可以確保基礎架構變更被跟踪和可審計,並且在必要時可以輕鬆回滾。
OpenTofu缺乏像HashiCorp Sentinel為Terraform提供的政策編碼強制執行框架。對於OpenTofu而言,最好使用第三方開放源碼程式如Open Policy Agent(OPA),可直接將安全政策嵌入OpenTofu設定中。您可將OpenTofu與OPA的設定檔儲存於版本控制系統如Git,確保基礎架構變更均有追蹤及可審核,必要時亦可輕易回復。
OpenTofu 1.7.0另一創新加入為動態提供者定義函數。這允許提供者提供資源,並提供可直接於OpenTofu程式碼中使用的原生函數。OpenTofu獨家功能可讓這些提供者根據使用者設定動態建立自訂函數,促進其他程式語言的無縫整合。OpenTofu團隊鼓勵使用者探索實驗性的Lua和Go提供者。
其他新增功能包括能標記特定資源自狀態檔案中移除,同時保留底層基礎架構。新版OpenTofu亦引入可循環匯入區塊,簡化大量資源匯入,大幅協助大規模遷移。
作為Terraform 1.5的無縫替代品,OpenTofu 1.7.0承諾提供簡易遷移路徑,詳盡的遷移指南,以及完整的文件範例。如您正使用Terraform進行DevSecOps,這意味著輕鬆升級。
自問世以來,OpenTofu社群經歷了驕人成長。儘管不追蹤使用者,登錄使用量已激增至每日超過百萬次請求,僅上個月就成長一倍。此版本吸引65位獨立貢獻者,在GitHub上獲得2萬顆星,凸顯活躍的社群參與,自今年1月以來已有200多個新議題及眾多拉取請求。
簡而言之,無論HashiCorp、IBM與Terraform將走向何方,OpenTofu似乎都是基礎架構即程式碼及DevSecOps部署的絕佳選擇。