基礎設施即程式碼(Infrastructure as Code, IaC)是一種利用程式碼來管理、配置和自動化IT基礎建設(如伺服器、網路、儲存設備等)的技術。傳統上,系統管理員需手動操作設定環境,而IaC則能用撰寫的指令碼或配置檔,快速、一致地佈建與維護各種基礎設施。
主要原理與特點
- 用程式碼描述資源:IaC把基礎設施的需求和設定寫成可重複使用的程式檔案,透過自動化工具執行,快速完成部署。
- 宣告式與指令式:宣告式描述理想狀態(如Terraform),指令式則提供明確步驟(如Ansible)。
- 自動化、一致化部署:同樣程式碼能快速複製多個相同環境,降低人為錯誤、提高擴展性與敏捷度。
- 版本控管:配置檔與原始程式碼一起用Git、SVN等版本管理軟體管控,所有環境變化都可追蹤回溯。
常見用途
- 佈建雲端主機、網路、負載平衡、資料庫
- 快速建立多個測試環境與正式環境
- 支援DevOps持續交付、快速異地複製
優勢
- 節省人力與時間,降低成本與失誤
- 易於水平擴充、自動化測試與維護
- 可套用安全規範與合規需求,管理政策統一
IaC是現代雲端、微服務、大型部署與維運不可或缺的技術基礎,代表管理IT基礎設施的新自動化思維。