觀點 · 資訊分享
Google Cloud Parameter Manager 推出參數範本預覽:一份設定骨架,套用到所有環境
Google Cloud 的 Parameter Manager 在 7 月 12 日開放參數範本預覽:把設定檔的結構寫成範本,各環境只要換掉變數值,就能產生最終設定。少維護幾份相似的設定檔,出錯機會也跟著減少。
- 發布
- 2026-07-12
- 篇幅
- 約 4 分鐘 · 1,881 字
- 結構
- 8 節 + 3 題常見問題
- 標籤

一句話看懂:Google Cloud 的 Parameter Manager 推出參數範本預覽,讓你把設定檔寫成一份「骨架」,測試、正式等各環境只要換掉變數值,就能產生最終設定。

先用白話講:設定檔的「套印」
想像你每個月都要寄信給不同的客戶,信的格式一樣,只有姓名、地址、金額不同。聰明的做法不是每封都重打一遍,而是做一份「信件範本」,把姓名、地址、金額留空,要寄的時候再套進去。
軟體的設定檔也有同樣的問題。同一個應用程式在測試環境、正式環境的設定,大部分內容都一樣,只有網址、記錄等級、連線對象不同。如果每個環境各維護一份檔案,改一個地方就得改好幾份,漏改就會出事。
參數範本(Parameter template) 就是這份「信件範本」:先把設定的結構寫好,不同環境的值另外放,需要時再合併。
發生什麼事
Google Cloud 的版本資訊在 7 月 12 日記載:Secret Manager 旗下的 Parameter Manager,推出參數範本功能,目前是預覽版。官方的簡述是:讓你定義標準化的設定藍圖,並在部署時安全地代入各環境專用的變數。
它怎麼運作?
依官方文件,流程牽涉兩種資源與一個步驟:
| 名稱 | 做什麼 |
|---|---|
| 參數範本(template) | 存放範本的描述資料 |
| 範本版本(template version) | 放設定的結構,格式是 YAML 或 JSON,變數用「雙層大括號加點加變數名」的寫法當佔位符 |
| 算繪(render) | Parameter Manager 把範本版本裡的變數,換成「參數版本」裡的值,產出最終設定 |
用一個簡化的例子來看(這是我自己想的示意,不是官方範例):
- 範本版本只寫結構:應用程式名稱固定寫
my-shop,執行環境與記錄等級兩個欄位留成變數 - 正式環境的參數版本只放值:環境是
prod、記錄等級是INFO - 算繪之後,就得到一份「環境 prod、記錄等級 INFO」的完整設定
測試環境則準備另一份參數版本(例如環境 test、記錄等級 DEBUG),共用同一份範本。
有哪些限制?
官方文件列出幾項限制:
- 範本只支援直接的變數替換,不能寫複雜的運算
- 每個範本版本必須是合法的 JSON 或 YAML 物件,不支援純文字
- 不能在範本中直接引用 Secret Manager 的密碼;要在參數版本裡用
__REF__()語法,算繪時才會代入 - 最終算繪出來的輸出不能超過 1 MB
- 每個範本版本最多 64 個變數
要注意的是,文件頁面是目前的版本,Google 也註明預覽功能「依現況提供」,支援可能有限,細節日後也可能調整。
給開發者的技術細節
- 想試用的話,先看官方的「建立參數範本」「新增範本版本」「算繪範本版本」三篇操作文件
- 密碼不要寫在範本,也不要明文放在參數版本,改用
__REF__()引用 Secret Manager 的密碼,這樣機密仍由 Secret Manager 管控 - 因為變數上限是 64 個,設定項目很多時,要先想好哪些真的需要變、哪些固定寫在範本裡就好
我的看法
多環境設定管理,是中小型團隊最容易出包的地方:測試環境改好了,正式環境漏改;或是複製貼上時,把測試用的網址留在正式設定裡。這種「差一點點」的設定檔,用範本加參數的方式來管,概念上比較乾淨。
不過這個功能目前只是預覽版,而且是綁在 Google Cloud 上。如果你的專案不在 Google Cloud 上,其實也有不少替代做法(例如用環境變數、設定檔範本加部署腳本)。我的建議是先看懂它的概念,再決定要不要為了這個功能綁定平台。
名詞小辭典
- Parameter Manager:Google Cloud 上管理應用程式設定(非機密)的服務,隸屬 Secret Manager 這個產品線。
- 範本(Template):寫好結構、留下空白變數的設定骨架。
- 算繪(Render):把範本裡的空白變數換成實際的值,產出最終設定的過程。
- 預覽(Preview):功能還在測試階段,可能有限制或調整,不建議直接用在正式環境。