gcloud apply spec 字段
本页面介绍了您可以在 Anthos Config Management 的配置文件中设置的不同字段。使用 Google Cloud CLI 配置 Anthos Config Management 组件时,您会使用此文件。用于应用配置文件的 gcloud CLI 命令也有参考文档。
与 gcloud CLI 配合使用的文件格式类似于 ConfigManagement
对象的格式。但是,两者的格式并不相同,而且不能互换使用。
Config Sync 的配置
键 | 说明 |
---|---|
spec.configSync.enabled |
如果为 true ,则启用 Config Sync。如果为 false ,则停用 Config Sync。
对于 gcloud CLI 429.0.0 及更低版本是必需的。对于 gcloud CLI 430.0.0 及更高版本是可选的。默认值:true |
spec.configSync.sourceType |
Config Sync 应同步的来源类型。接受 git 或 oci 。默认值:git 。 |
spec.configSync.syncRepo |
用作可靠来源的 Git 代码库、OCI 映像或 Helm 图表的网址。 如果您没有准备好代码库,则可以省略此字段。 |
spec.configSync.syncBranch |
要用作同步来源的 Git 代码库分支。如果 .spec.configSync.sourceType 设置为 oci ,则此字段将被忽略。默认值:master 。 |
spec.configSync.policyDir |
Git 代码库或 OCI 映像中的路径,其中包含您要同步的配置。默认值:代码库的根目录。 |
spec.configSync.syncWait |
连续两次同步操作之间的间隔时长(以秒为单位)。默认值:15。 |
spec.configSync.syncRev |
要签出的 Git 修订版本(标记或哈希)。如果 .spec.configSync.sourceType 设置为 oci ,则此字段将被忽略。默认值:HEAD 。 |
spec.configSync.preventDrift |
如果为 true ,则允许 Config Sync 准入网络钩子通过拒绝有冲突的更改推送到活跃集群来防止偏移。默认值:false 。无论此字段的值如何,Config Sync 始终会修复偏移。 Anthos Config Management 1.10.0 版及更高版本支持此字段。 |
spec.configSync.secretType |
为访问 .spec.configSync.syncRepo 而配置的 Secret 类型。如果选择 git 作为来源类型,该值必须为 ssh 、cookiefile 、gcenode 、gcpserviceaccount 、token 或 none 。如果您选择了 oci 作为来源类型,则值必须为 gcenode 、gcpserviceaccount 或 none 。此字段的验证区分大小写。必填。 |
spec.configSync.gcpServiceAccountEmail |
用于为 RootSync 或 RepoSync 控制器的 Kubernetes 服务帐号添加注释的 Google Cloud 服务帐号。此字段仅在 spec.configSync.secretType 为 gcpserviceaccount 时使用。 |
spec.configSync.sourceFormat |
设置为 unstructured 时,配置 non-hierarchical repo。默认值:hierarchy 。 |
Git 代码库的代理配置
如果您的组织的安全政策要求您通过 HTTPS 代理路由流量,则可以使用该代理的 URI 将 Config Sync 配置为与 Git 主机进行通信。仅当使用 cookiefile
、none
或 token
授权类型时才支持代理。
键 | 说明 |
---|---|
spec.configSync.httpsProxy |
定义用于访问 Git 代码库的 HTTPS_PROXY 环境变量。例如 https://proxy.internal.business.co:443 。HTTPS 代理仅接受 https 或未修饰的网址。包含 http:// 的网址会被拒绝。如果使用未修饰的网址,请确保代理服务器和 Git 主机之间的通信安全。 |
政策控制器的配置
键 | 说明 |
---|---|
spec.policyController.enabled |
如果为 true ,则启用政策控制器。默认值为 false 。 |
spec.policyController.templateLibraryInstalled |
如果为 true ,则安装用于常用政策类型的限制条件模板库。默认值为 true 。 |
spec.policyController.referentialRulesEnabled |
如果为 true ,则启用对参照限制条件的支持。请务必了解关于最终一致性的注意事项。默认值为 false 。 |
spec.policyController.auditIntervalSeconds |
前后两次限制条件违规审核之间的间隔时长(以秒为单位)。将其设置为 0 可停用审核。默认值:60。 |
spec.policyController.logDeniesEnabled |
如果为 true ,则记录所有拒绝及试运行失败。默认值为 false 。 |
spec.policyController.mutationEnabled |
如果为 true ,则启用对变更的支持。默认值为 false 。 |
spec.policyController.exemptableNamespaces |
要从政策控制器准许网络钩子强制执行的命名空间列表。所有违规行为仍会在审核中报告。默认为空列表。 |
spec.policyController.monitoring.backends |
政策控制器要将指标导出到的受监控后端的列表。默认值:[cloudmonitoring, prometheus] 。 |
层次结构控制器的配置
键 | 说明 |
---|---|
spec.hierarchyController.enabled |
如果为 true ,则启用层次结构控制器。默认值为 false 。 |
spec.hierarchyController.enableHierarchicalResourceQuota |
如果为 true ,则启用分层资源配额。默认值为 false 。 |
spec.hierarchyController.enablePodTreeLabels |
如果为 true ,则启用工作负载的分层观察。默认值为 false 。 |
gcloud apply spec 的示例
applySpecVersion: 1
spec:
configSync:
enabled: true
sourceFormat: unstructured
syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
syncBranch: main
secretType: none
policyDir: config-sync-quickstart/multirepo/root
policyController:
enabled: false
hierarchyController:
enabled: false