iT邦幫忙

2025 iThome 鐵人賽

DAY 13
0
DevOps

PM 的 30 日 DevOps 養成計畫 系列 第 13

基礎建設的自動建造師 - IaC

  • 分享至 

  • xImage
  •  

當團隊還小時,基礎環境設置像是開機器、設定儲存空間、配置資料庫等,可以透過最簡單的流程進行。

但隨著產品的演化,開發、測是跟正式環境有可能會不同步的改動,而這樣的改動有可能沒有記錄下來,或是文件寫得不夠詳細,這時候就會造成版本不一致而出現很多問題。

IaC 的特點

這時團隊如果有做基礎架構即程式(IaC),就會是解決以上問題的答案,因為 IaC 做的事情就是將上述的設定,用程式碼記錄下來,只要一鍵就可以完成建置,不只解省掉人工出錯的機率,更可以有版本的清楚記錄,不用怕文件遺失或寫不齊全。

同樣也紀錄在 Github 裡的 IaC 程式碼可以重複使用,所以當需要複製環境或管理環境時,就不會有繁雜的程序出現。

清楚的版本控制也可以看到程式在甚麼時候有甚麼樣的改動,要回溯到之前的版本也可以很容易達到。

最常聽到執行 IaC 工具的就是 Terraform, 只要告訴它需要的資源(如虛擬機、資料庫),它就會根據「計劃書」像雲端服務商將程式的地基生出來。

接著,Ansible 這個機器等到地基蓋好後,就執行安裝軟體、設定應用程式(如防火牆)等工作。如果以蓋房子來譬喻,就很像裝潢的階段。

如果 IaC 的好處這麼多,為甚麼不是每個團隊都在使用呢?

就像前面說到的,如果今天團隊還小,趕快把現在的問題解決掉,節省掉那些學習 IaC 工具的時間,或是基礎環境的設定沒有很常在變動,那這樣的自動化好像不太有很大的助益。

但如果是在成長快速、須因應變化,且環境要求高度一致的團隊,IaC 的導入就會對團隊產生很大的幫助。


上一篇
容器的最棒管家 - Kubernetes (K8s)
下一篇
速度跑得更快的 Devops - MLOps
系列文
PM 的 30 日 DevOps 養成計畫 26
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言