什麼是功能閘道?我們為何需要功能閘道?
部分 Google Distributed Cloud (GDC) 實體隔離方案客戶必須完成認證程序,才能滿足一組法規遵循要求。這些客戶可能需要先由第三方審查特定功能,通過認證後才能啟用這些功能,用於正式版工作負載。
某些功能可能需要多次發布才能完成,因此在穩定且準備就緒前,不應向所有客戶公開。不過,其他客戶可能想與 Google 合作,使用未發布的功能進行概念驗證測試。
GDC 導入了幾個概念,可在功能準備就緒前先保留:
部署功能層級門檻 (部署門檻):定義宇宙使用的最低層級。這是在啟動時間設定。
FeatureGate資源:定義頂層設定,追蹤各項功能的預設成熟度等級。資源也會追蹤運算子新增的任何功能覆寫。功能等級:追蹤特定功能設定的成熟度等級。如果功能大於或等於部署門檻,就會啟用。
可能的特徵層級值 (升序) 為:DEV、TEST、PREVIEW、PRODUCTION 和 ACCREDITED。
舉例來說,如果部署門檻設為 PRODUCTION,系統會啟用設有 ACCREDITED 或 PRODUCTION 功能層級的功能。如果部署門檻設為 ACCREDITED,則只會啟用等級為 ACCREDITED 的功能。
功能閘道或層級與您在消費性產品中看到的 A/B 測試不同。特徵門檻會針對整個 GDC 宇宙開啟或關閉。功能閘道設計為在認證審查完成後開啟,並保持開啟狀態。這不是自訂 GDC 可用區的設定。
如果部署作業有認證需求,則每個機構都必須有自己的設定,且設定必須與該機構或先前版本獲得認證的內容相符。FeatureGate
功能層級用量
設定功能閘道和層級時,需要用到下列三種自訂資源定義:
Stage:定義叢集的部署門檻。儲存部署的最低階段門檻,用來與特徵門檻比較,判斷是否啟用特徵。FeatureGate:儲存各項功能的預設階段,並追蹤所有覆寫項目。SubcomponentOverride:功能閘道系統會使用這個值,覆寫功能的預設階段,以便在區域中啟用功能。出現在其他情境中。
階段值是儲存在每個叢集中的部署最低門檻。這項設定只能在啟動程序期間設定,啟動後就無法變更。系統會啟用特徵階段值大於或等於指定值的特徵。電信業者可透過幾種主要方式啟用或停用功能。並非所有功能閘道都適用。
- 在啟動時間設定階段:詳情請參閱設定整體部署的特徵階段門檻步驟。
- 在根管理員叢集中使用基礎架構即程式碼 (IaC) 修改功能階段:
如需工作流程和目錄結構的詳細資料,請參閱 IAC-R0004。您在可操作元件的目錄中修改檔案。舉例來說,如要修改
dbs可操作元件的功能PGMigration,您必須更新infrastructure/zonal/zones/ZONE_NAME/root-admin/components/dbs/dbs-common-override.yaml檔案。 - 在機構叢集中使用 IaC 修改功能階段:
視機構類型而定,叢集可能是基礎架構叢集或機構管理員叢集。如要進一步瞭解工作流程和目錄結構,請參閱 IAC-R0004。您修改可操作元件目錄中的檔案。舉例來說,如要修改
dbs可操作元件的功能PGMigration,您必須更新infrastructure/zonal/zones/ZONE_NAME/ORG_NAME/components/dbs/dbs-sub-override.yaml檔案。 - GDC 升級:根據新的成熟度評估結果,每個功能在每個版本中的預設階段值可能會有所變更。請注意,預設值不會影響已在 IaC 中為特定功能設定的任何覆寫。
特徵門檻類似於升級。圖片或版本不會變更,但這是升級的最後一個步驟,可啟用先前升級新增的功能。視認證時間長度而定,這項功能可能在首次升級後幾週或幾個月才會啟用。在認證期間,請持續定期升級,以取得修正內容和修補程式。
如果功能遭到覆寫 (例如透過 IaC 程序),GDC 會觸發協調器,重新啟動所有依附於該功能的 Pod。這項作業必須在維護期間完成,因為部分變更可能需要停機。
部分功能附有服務手冊 Runbook,說明何時必須啟用功能,以及套用覆寫後應注意的事項。這可能是因為需要重新啟動 Pod 以外的項目,或是必須在啟用其他功能後執行。
您可以在相關可操作元件隨附的服務手冊中找到這些功能執行手冊。
如要查看有效功能閘道的清單,請參閱「功能階段」說明文件。