Workload Manager 会根据最新的最佳实践检查资源的状态,并帮助您提高在 Google Cloud上运行的工作负载的质量、可靠性和性能。
本文档列出了 Workload Manager 支持用于评估在 Google Cloud上运行的工作负载的最佳实践。如需了解 Workload Manager,请参阅产品概览。
严重级别
运行评估时,Workload Manager 会将资源的当前状态与最佳实践进行比较,从而评估资源。如果资源不符合所选的最佳实践,Workload Manager 会为其分配一个严重程度,以指示资源不合规的程度。 Google Cloud 控制台会使用图标标记每个不合规的资源。下表说明了这些图标、对应的严重程度、当前资源设置可能对工作负载产生的影响,以及有关如何修改资源以遵循最佳实践的建议。| 图标 | 严重级别 | 影响 | 建议 |
|---|---|---|---|
| 严重 | 系统可靠性、意外中断、不受支持的配置 |
尽快解决,以免因意外中断风险较高而影响系统可用性和数据完整性。 |
|
| 高 | 性能衰减、系统稳定性 | 在下一个计划维护窗口期间解决。 | |
| 中 | 性能和支持能力欠佳 | 请尽快解决。 | |
| 低 | 信息性非必要行为 | 虽然无需解决问题,但查看此最佳实践可提供有用的数据洞见。 |
支持的最佳实践
Workload Manager 支持评估以下类型的工作负载,以帮助确保它们遵循 Google Cloud 最佳实践:
- Google Cloud (常规):核心 Google Cloud 服务的最佳实践。
- API 密钥
- Access Transparency
- AlloyDB for PostgreSQL
- Apigee X
- 工件
- BigQuery
- Cloud Bigtable
- Cloud Build
- Cloud DNS
- Cloud Functions
- Cloud Interconnect
- Cloud Key Management Service
- Cloud Load Balancing
- Cloud Pub/Sub
- Cloud Router
- Cloud Run
- Cloud SQL
- Cloud Spanner
- Cloud Storage
- Cloud VPN
- Composer
- Compute Engine
- Dataproc
- Filestore
- Firestore
- Google Kubernetes Engine
- IAM
- Memorystore for Memcache
- Memorystore for Redis
- Memorystore for Redis Cluster
- 操作
- Organization Policy Service
- Resource Manager
- Secret Manager
- Security Command Center
- Sensitive Data Protection
- Gemini Enterprise Agent Platform
- Gemini Enterprise Agent Platform Workbench
- MySQL:MySQL 数据库部署的最佳实践。
- Redis:Redis 部署的最佳实践。
- SAP:SAP 系统的最佳实践。
- SQL Server:SQL Server 数据库部署的最佳实践。
- OpenShift:Red Hat OpenShift 集群的最佳实践。
以下各部分列出了在 Google Cloud上运行的工作负载支持的最佳实践。
共有 627 条最佳实践规则。
按最佳实践划分的规则数量
| 类别 | 规则计数 |
|---|---|
| API 密钥 | 4 |
| Access Transparency | 1 |
| AlloyDB for PostgreSQL | 4 |
| Apigee X | 1 |
| Artifact Registry | 1 |
| BigQuery | 10 |
| Cloud Bigtable | 3 |
| Cloud Build | 1 |
| Cloud DNS | 3 |
| Cloud Functions | 3 |
| Cloud Key Management Service | 14 |
| Cloud Load Balancing | 4 |
| Cloud Logging | 3 |
| Cloud Pub/Sub | 7 |
| Cloud Router | 6 |
| Cloud Run | 3 |
| Cloud SQL | 35 |
| Cloud Spanner | 6 |
| Cloud Storage | 20 |
| Cloud VPN | 4 |
| Composer | 1 |
| Compute Engine | 95 |
| Dataproc | 2 |
| Filestore | 5 |
| Firestore | 1 |
| Gemini Enterprise Agent Platform | 18 |
| Gemini Enterprise Agent Platform Workbench | 11 |
| Google Kubernetes Engine | 55 |
| IAM | 75 |
| Memorystore for Memcache | 2 |
| Memorystore for Redis | 8 |
| Memorystore for Redis Cluster | 3 |
| NetApp Volumes | 1 |
| 网络 | 5 |
| Organization Policy Service | 58 |
| Resource Manager | 3 |
| SecOps | 1 |
| Secret Manager | 2 |
| Security Command Center | 1 |
| 敏感数据保护 | 1 |
| MySQL:常规 | 7 |
| OpenShift:费用优化 | 1 |
| OpenShift:运营效率 | 6 |
| OpenShift:可靠性 | 5 |
| OpenShift:安全性 | 6 |
| Redis:常规 | 7 |
| SAP:常规 | 14 |
| SAP:HANA | 10 |
| SAP:HANA Insights | 18 |
| SAP:HANA 安全最佳实践 | 19 |
| SAP:高可用性 | 33 |
| SAP:NetWeaver | 3 |
| SQL Server:费用优化 | 2 |
| SQL Server:故障切换集群 | 2 |
| SQL Server:性能 | 10 |
| SQL Server:稳定性 | 3 |
| 总计 | 627 |
最佳实践会添加标记,以帮助您确定其重点领域:
- 可靠性、安全性和 FinOps 规则会映射到 Google Cloud Well-Architected Framework 的支柱。
- CSPR:云安全状况审核。
- MVSP:Minimal Viable Security Posture(最低可行安全态势)。
选择一个或多个规则类别,以过滤以下列表。
Google Cloud 最佳实践 - API 密钥(4 项结果)
-
API 密钥无限制
严重程度:媒介
标签:IAM、API 密钥、安全性、CSPR、CoNa资源:apikeys.googleapis.com/Key详情 验证是否已对所有 API 密钥应用限制,以防止滥用行为,避免导致安全漏洞、未经授权的数据访问权限和意外费用。 -
API 密钥无服务限制
严重程度:媒介
标签:IAM、API 密钥、安全性、CSPR、CoNa资源:apikeys.googleapis.com/Key详情 确保 API 密钥仅限于特定服务,防止潜在的滥用行为,以免导致未经授权的 API 激活、安全漏洞和意外费用。 -
API 密钥已超过 90 天
严重程度:低
标签:IAM、API 密钥、安全性、CSPR资源:apikeys.googleapis.com/Key详情 强制执行 90 天的 API 密钥轮替政策,以最大限度地降低因凭据丢失、泄露或遭破解而造成的安全风险。 -
API 密钥
严重程度:媒介
标签:IAM、API 密钥、安全性、CSPR资源:apikeys.googleapis.com/Key详情 标记任何 API 密钥的存在,以鼓励使用更安全的身份验证方法(例如服务账号),从而降低与静态长期有效凭据相关的风险。
Google Cloud 最佳实践 - Access Transparency(1 条结果)
-
组织访问透明度已启用
严重程度:媒介
标记:Access Transparency、serviceusage、安全性、合规性资源:serviceusage.googleapis.com/Service详情 检查 Access Transparency 服务是否已启用。Access Transparency 可为您提供有关 Google 员工在访问您的内容时所执行操作的日志。
Google Cloud 最佳实践 - AlloyDB for PostgreSQL(4 项结果)
-
Alloy 集群未启用自动备份
严重程度:媒介
标签:AlloyDB、备份、可靠性、费用、BCDR、数据保护、CSPR资源:alloydb.googleapis.com/Cluster详情 验证 AlloyDB 集群是否已启用自动备份政策,确保关键数据受到保护,不会丢失,并且可以快速恢复,从而保持业务连续性和服务可靠性。 -
Alloy 集群未启用持续备份
严重程度:媒介
标签:AlloyDB、备份、BCDR、数据保护、可靠性、费用、CSPR资源:alloydb.googleapis.com/Cluster详情 验证 AlloyDB 集群是否已启用持续备份,从而提供关键的时间点恢复 (PITR) 功能,以防数据丢失并确保业务连续性。 -
Alloy 集群维护政策
严重程度:高
标签:可靠性、运营、BCDR、CSPR资源:alloydb.googleapis.com/Cluster详情 验证 AlloyDB 集群是否已定义维护更新政策。通过定义维护政策,组织可以在非高峰时段安排更新,以最大限度地减少中断。如果未设置此政策,则表示采用默认时间,这可能会与关键运营期重合。 -
Alloy 实例公共 IP
严重程度:高
标签:AlloyDB、安全性、网络、CSPR资源:alloydb.googleapis.com/Instance详情 检查 AlloyDB 实例是否已启用公共 IP。公共 IP 地址会将实例暴露在互联网上,从而扩大受攻击面。建议改用专用 IP。
Google Cloud 最佳实践 - Apigee X(1 项结果)
-
Apigee 多区域实例
严重程度:高
标签:可靠性、API、Apigee、高可用性、BCDR、CoNa资源:apigee_Organization_RESOURCE_INSTANCE详情 验证 Apigee X 组织是否在至少 2 个不同的区域中部署了 Apigee 实例。多区域 Apigee 部署可确保 API 网关冗余、低延迟,并防范区域性服务中断。
Google Cloud 最佳实践 - Artifact Registry(1 项结果)
-
Artifact Registry 多区域
严重程度:高
标签:可靠性、可用性、BCDR资源:artifactregistry.googleapis.com/Repository详情 验证 Artifact Registry 代码库是否已配置为使用多区域位置(例如 us、europe、asia)。使用多区域位置可确保制品在多个地理区域之间复制,从而显著提高可用性并增强针对区域性服务中断的恢复能力。
Google Cloud 最佳实践 - BigQuery(10 条结果)
-
BigQuery 数据集 CMEK 已停用
严重程度:媒介
标签:BigQuery、数据集、加密、CMEK、安全性、CSPR资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否使用 Cloud KMS 中的客户管理的加密密钥 (CMEK) 进行加密。虽然 BigQuery 默认使用 Google 管理的密钥对静态数据进行加密,但 CMEK 可提供对密钥管理(包括轮换、访问权限控制和审核日志记录)的更精细控制。此规则会检查数据集配置中的 defaultEncryptionConfiguration 字段。如果缺少此字段,或者此字段存在但缺少 kmsKeyName 属性,则会触发违规。缺少 defaultEncryptionConfiguration 或 kmsKeyName 表示数据集未采用 CMEK 进行加密,这可能会影响合规性和安全性。 -
BigQuery 数据集缺少标签
严重程度:低
标签:BigQuery、数据集、标签、组织、FinOps、管理、CSPR资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否已应用标签。标签是用户定义的键值对,可帮助整理和管理 Google Cloud 中的资源。它们可用于过滤、分组和生成费用报告。此规则会检查数据集中是否存在标签字段。如果缺少或为空,则会触发违规。 -
BigQuery 数据集缺少资源标记
严重程度:低
标记:BigQuery、数据集、标记、组织、管理、访问控制、FinOps、CSPR、CoNa、MVSP资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否已应用资源标记。资源标记是通过 Resource Manager 管理的键值对。它们可用于更广泛的组织用途,包括与其他 Google Cloud 服务和外部系统集成(例如,通过标记绑定进行访问权限控制)。此规则会检查是否存在 resourceTags 字段。如果缺少或为空,则会生成违规情况。 -
BigQuery 数据集多区域
严重程度:高
标签:可靠性、BigQuery、多区域、高可用性、BCDR资源:bigquery.googleapis.com/Dataset详情 验证 BigQuery 数据集是否配置为使用多区域位置(例如“美国”或“欧盟”),以确保跨区域实现高弹性和数据冗余。区域数据集(带有连字符的配置)不符合此标准。 -
BigQuery 数据集公开
严重程度:高
标签:BigQuery、数据集、安全性、隐私权、费用、可靠性、CSPR资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否未公开。公开暴露的数据集可能会导致意外的数据泄露和潜在的隐私权侵犯。BigQuery 通过 IAM 角色提供精细的访问权限控制,数据集应仅限授权用户和服务账号访问。此规则会检查数据集的访问权限控制列表中是否存在 allUsers 或 allAuthenticatedUsers,如果存在,则表示授予了公开访问权限。如果缺少这些条目,则表示相应数据集无法公开访问。 -
BigQuery 表 CMEK
严重程度:媒介
标签:BigQuery、表、加密、CMEK、KMS、安全性、合规性、CSPR资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否使用 Cloud KMS 中的客户管理的加密密钥 (CMEK) 进行加密。默认情况下,BigQuery 会使用 Google 管理的密钥对静态数据进行加密。CMEK 可让组织更精细地控制加密密钥,从而管理密钥轮替、访问和审核。此规则会检查表配置中的 encryptionConfiguration 字段。如果此字段缺失,或者存在但不包含 kmsKeyName,则表示相应表未使用 CMEK 进行加密。 -
BigQuery 表过期
严重程度:低
标签:BigQuery、表、过期、DataLifecycle、费用优化、数据治理、CSPR资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否已设置失效时间。为表设置过期时间是管理数据生命周期和控制存储费用的最佳实践,对于临时表或过渡表尤其如此。此规则会检查表格配置中的 expirationTime 字段。如果 expirationTime 为 null(或缺失,在 Rego 中以相同方式处理),则表示未设置表的过期时间,系统会生成违规情况。明确的过期时间是数据治理的一项良好实践。 -
BigQuery 表缺少标签
严重程度:低
标签:BigQuery、表、标签、组织、FinOps、管理、CSPR资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否已应用标签。标签是用户定义的键值对,可帮助整理和管理 Google Cloud 中的资源。它们可用于过滤、分组和生成费用报告。此规则会检查表中是否存在 labels 字段。如果缺少或为空,则会触发违规。 -
BigQuery 表缺少资源标记
严重程度:低
标签:BigQuery、表、标签、组织、管理、访问控制、FinOps、CSPR、CoNa、MVSP资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否已应用资源标记。资源标记是通过 Resource Manager 管理的键值对。它们可用于更广泛的组织用途,包括与其他 Google Cloud 服务和外部系统集成(例如,通过标记绑定进行访问权限控制)。此规则会检查是否存在 resourceTags 字段。如果缺少 resourceTags 字段或该字段为空,系统会生成违规提示。 -
BigQuery 表分区
严重程度:低
标签:BigQuery、表、分区、过期、DataLifecycle、成本优化、时间分区、CSPR资源:bigquery.googleapis.com/Table详情 检查时间分区 BigQuery 表是否已设置分区过期时间。分区过期功能会自动删除早于指定时长的分区。这对于管理存储费用和数据生命周期至关重要,尤其对于大型时序数据集。此规则会检查 timePartitioning 字段,特别是 timePartitioning 中的 expirationMs 字段。如果缺少 timePartitioning 或 expirationMs,或者 expirationMs 不是正整数,则表示分区过期时间配置不正确,系统会生成违规情况。
Google Cloud 最佳实践 - Cloud Bigtable(3 项结果)
-
Bigtable 集群冗余
严重程度:高
标签:可靠性、数据库、Bigtable、高可用性、BCDR资源:bigtableadmin_Instance_RESOURCE_CLUSTER详情 验证 Bigtable 实例是否在 3 个或更多不同区域中部署了集群。多区域集群冗余可确保 99.999% 的可用性、强大的灾难恢复能力,并为全球分布式应用提供低延迟访问。 -
已启用 Bigtable 实例复制
严重程度:高
标签:可靠性、数据库、Bigtable、复制、高可用性资源:bigtableadmin_Instance_RESOURCE_CLUSTER详情 通过确保 Bigtable 实例在至少 2 个不同的可用区或区域中部署了集群,来验证这些实例是否已启用复制功能。复制对于实现高可用性、故障切换和灾难恢复至关重要。 -
Bigtable 配置文件多集群路由
严重程度:高
标签:可靠性、高可用性、BCDR、Bigtable资源:bigtableadmin.googleapis.com/AppProfile详情 验证 Bigtable 应用配置文件是否使用 multi_cluster_routing_use_any 来启用自动故障切换并确保高可用性。使用单集群路由会造成单点故障,如果特定集群变得不可用,可能会导致服务中断。
Google Cloud 最佳实践 - Cloud Build(1 项结果)
-
Cloudbuild 池冗余
严重程度:媒介
标签:可靠性、安全性、CloudBuild、高可用性、BCDR资源:cloudresourcemanager_Project_RESOURCE_WORKERPOOL详情 验证 Cloud Build 专用工作器池是否部署在至少 2 个不同的区域中。在多个区域中部署专用工作器池可确保在区域级 build 服务发生中断时,CI/CD 工作流能够进行故障切换。
Google Cloud 最佳实践 - Cloud DNS(3 项结果)
-
DNS 政策日志记录
严重程度:媒介
标签:DNS、政策、日志记录、安全性、审核、VPC、CSPR、CoNa、MVSP资源:dns.googleapis.com/Policy详情 检查是否已为 Cloud DNS 政策启用日志记录。DNS 政策用于定义 DNS 解析行为的规则,通常用于出站转发或专用 DNS 查找。启用日志记录功能后,系统会记录政策处理的查询,这对于安全审核和排查 VPC 网络中的 DNS 解析问题至关重要。此规则会检查 DNS 政策配置中的 enableLogging 字段。如果缺少 enableLogging 或其值为 false,则会生成违规。 -
DNS 区域公共 DNSSEC
严重程度:高
标签:DNS、DNSSEC、安全性、ManagedZone、Public、CSPR、CoNa资源:dns.googleapis.com/ManagedZone详情 检查 Cloud DNS 中是否为公开的代管式可用区启用了 DNSSEC(域名系统安全扩展)。DNSSEC 通过对 DNS 记录进行数字签名来增加一层安全性,从而防止 DNS 欺骗和缓存中毒攻击。此规则会检查受管区域配置中的 dnssecConfig 字段。如果缺少 dnssecConfig,或者其状态为“关闭”或缺失,则表示 DNSSEC 未启用。如果未为公共可用区启用 DNSSEC,系统会生成违规情况。此规则会进行过滤,仅影响公开的受管地区。 -
DNS 区域公共日志记录
严重程度:媒介
标签:DNS、ManagedZone、日志记录、安全性、审核、公开、CSPR、CoNa、MVSP资源:dns.googleapis.com/ManagedZone详情 检查是否为公开 Cloud DNS 代管式可用区启用了日志记录。启用 DNS 日志记录功能后,系统会记录地区域名服务器收到的查询,这对于安全审核、问题排查和合规性至关重要。此规则会检查受管区域配置中的 loggingConfig 字段。如果区域的公开范围为“公开”,并且缺少 loggingConfig 或 loggingConfig.enableLogging,或者 loggingConfig.enableLogging 为 false,则会生成违规情况。
Google Cloud 最佳实践 - Cloud Functions(3 项结果)
-
Cloud Functions 入口 GCLB
严重程度:高
标记:可靠性、安全性、网络、高可用性资源:cloudfunctions.googleapis.com/Function详情 验证 Cloud Functions 是否已配置为 ALLOW_INTERNAL_AND_GCLB 的入站流量设置。此设置会限制对内部流量和 Google Cloud 负载均衡的访问,这是使用全球外部负载平衡器实现多区域高可用性并防止直接公开访问的必要条件。 -
函数实例数下限
严重程度:媒介
代码:可靠性、性能、无服务器资源:cloudfunctions.googleapis.com/Function详情 确保 Cloud Functions 的 minInstances 设置配置为大于 0 的值。此配置可防止冷启动,确保实例始终处于预热状态并随时可以运行,从而在流量高峰期间保持性能稳定并缩短延迟时间。 -
项目多区域函数
严重程度:高
标签:可靠性、无服务器、Cloud Functions、高可用性、BCDR资源:cloudresourcemanager_Project_RESOURCE_FUNCTION详情 验证项目是否已在至少 2 个不同区域中部署 Cloud Functions。多区域 Cloud Function 部署可确保无服务器应用的冗余,并在发生区域性服务中断时确保无缝故障切换。
Google Cloud 最佳实践 - Cloud Key Management Service(14 条结果)
-
Cloud KMS 加密密钥保护级别 hsm
严重程度:媒介
标签:KMS、CryptoKey、安全性、HSM、ProtectionLevel、加密、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Cloud KMS CryptoKeys 保护级别是否设置为 HSM。protectionLevel 决定了加密操作的执行位置。HSM 表示这些操作是在硬件安全模块中进行的。HSM 可提供更高级别的安全性。此规则会检查 versionTemplate.protectionLevel 字段。如果 protectionLevel 为 HSM,则生成违规情况。虽然在某些使用场景中,SOFTWARE 保护级别可以接受,但对于安全性要求较高的场景,我们通常建议使用 HSM。 -
Cloud KMS 加密密钥保护级别软件
严重程度:媒介
标签:KMS、CryptoKey、安全性、HSM、ProtectionLevel、加密、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Cloud KMS CryptoKeys 保护级别是否设置为 SOFTWARE。protectionLevel 决定了加密操作的执行位置。SOFTWARE 表示操作在软件中进行,而 HSM 表示操作在硬件安全模块中进行。HSM 可提供更高级别的安全性。此规则会检查 versionTemplate.protectionLevel 字段。如果 protectionLevel 为 SOFTWARE,则会生成违规情况。虽然在某些使用场景中,SOFTWARE 保护级别可以接受,但对于安全性要求较高的场景,我们通常建议使用 HSM。 -
Cloud KMS 加密密钥对称轮替
严重程度:高
标签:KMS、CryptoKey、轮替、安全性、加密、对称、KeyRotation、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查是否已为具有 GOOGLE_SYMMETRIC_ENCRYPTION 算法且处于 ENABLED 状态的 Cloud KMS CryptoKey 配置密钥轮替。定期轮替密钥是一项关键的安全最佳实践。此规则会验证以下内容:1. 密钥状态为 ENABLED。2. 用途:密钥的用途为 ENCRYPT_DECRYPT。3. versionTemplate.algorithm 算法为 GOOGLE_SYMMETRIC_ENCRYPTION。4. rotationPeriod 或 nextRotationTime 如果缺少这两个字段中的任何一个,则表示未配置轮替,系统会生成违规情况。如果密钥遭到入侵,不轮换密钥会显著增加风险。 -
Cloud KMS EKM 连接冗余解析器
严重程度:高
标签:可靠性、安全性、KMS、ExternalKey、高可用性资源:cloudkms.googleapis.com/EkmConnection