[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-09-04 (世界標準時間)。"],[],[],null,["# Manage feature gates\n\nWhat is a feature gate and why do we have it?\n---------------------------------------------\n\nSome Google Distributed Cloud (GDC) air-gapped appliance customers must complete an accreditation\nprocess to satisfy a set of compliance requirements. These customers might have\nspecific features that must go through accreditation review by a third party\nbefore they can be enabled for production workloads.\n\nCertain features might require multiple releases to get finalized and shouldn't\nbe exposed to all customers until stable and ready. However, other customers\nmight want to work with Google to do *proof of concept* testing with the\nunreleased feature.\n\nGDC introduces several concepts to hold features before\nthey are ready:\n\n- **Deployment feature level threshold (deployment threshold)**: defines the\n minimum level to use for the device. This is set at bootstrap\n time.\n\n- **`FeatureGate` resource**: defines the top-level configuration tracking the\n default maturity level per feature. The resource also keeps track of any\n feature overrides the operator has added.\n\n- **Feature level**: tracks what level of maturity to which a given feature is\n set. A feature is enabled when it's greater than or equal to the deployment\n threshold.\n\nPossible feature level values in ascending order are: `DEV`, `TEST`, `PREVIEW`,\n`PRODUCTION`, and `ACCREDITED`.\n\nFor example, if the deployment threshold is set to `PRODUCTION`, features set\nwith feature level `ACCREDITED` or `PRODUCTION` are enabled. If the deployment\nthreshold is set to `ACCREDITED`, only features with level `ACCREDITED` are\nenabled.\n\nFeature gates or levels are not the same as A/B testing that you might see in\nconsumer products. Feature gates are either on or off for the entire\nGDC device. Feature gates are designed to\nbe turned on after accreditation review is completed and stay on.\n\nDeployments with accreditation requirements must have their own `FeatureGate`\nconfiguration,\nwhich must match what has been accredited for that or previous versions.\n\nFeature level usage\n-------------------\n\nThere are three custom resource definitions related to configuring feature gates\nand levels:\n\n- `Stage`: defines the deployment threshold for a cluster. Stores the deployment minimum stage threshold, which is what to compare against feature gates to determine feature enablement.\n- `FeatureGate`: stores the default stage of each feature and keeps track of any overrides.\n- `SubcomponentOverride`: used by the feature gate system to override the default stage of a feature to enable it. Appears elsewhere in other contexts.\n\nStage value is the deployment minimum threshold stored in each cluster. This\nmust only be set during bootstrapping and never changed after bootstrap. All\nfeatures with an equal or greater feature stage value are enabled.\nTo override the default stage of a feature gate, see\n[OOPS-P0072](/distributed-cloud/hosted/docs/latest/gdch/gdch-io/operations-manual/relops/processes/oops-p0072).\n\nFeature gates are similar to an upgrade. No images or versions change, but it is\neffectively the final step of an upgrade to enable the features that were added\nin a previous upgrade. This feature enablement might occur weeks or months after\nthe initial upgrade, depending on how long accreditation takes. Continue\nperforming upgrades regularly to pull in fixes and patches while accreditation\nis ongoing.\n\nWhen features are overridden,\nGDC triggers a reconciler to restart all pods that\ndepend on the feature. This must be done during a maintenance window, as some\nchanges might require downtime.\n\nSome features have an accompanying service manual runbook that describes when it\nmust be enabled, and what to look for after the override has been applied. This\nmight be for cases that requires more than a pod restart, or must be performed\nafter other features are enabled.\n\nYou can find these feature runbooks in the service manual attached to the\nrelevant operable component.\n\nThe list of active feature gates is available in the\n[Features stages](/distributed-cloud/hosted/docs/latest/appliance/resources/feature-stages) documentation."]]