Google Cloud 指导报表
Site24x7 指导报表中的成本和安全建议将仅在 ManageEngine CloudSpend 中以建议报表的形式提供。如果您同时使用 Site24x7 和 CloudSpend,可以继续从 CloudSpend > 报表 > 建议报表获取这些建议。
CloudSpend 中的建议报表可帮助您优化云成本,并提升 AWS、Azure 和 GCP 账户中云基础架构的容错能力和性能。它提供量身定制的建议,帮助您实现显著节省并提高云环境的整体效率。
如果您尚未订阅 CloudSpend,并希望继续获取这些建议,可以立即开始使用 CloudSpend。
Site24x7 的 Google Cloud 指导报表提供关键洞察,帮助您优化云资源,识别瓶颈,优化配置,并通过实施指导报表中的建议确保 Google Cloud 环境的峰值性能。
在哪里查看指导报表
您可以登录 Site24x7,然后在左侧导航栏中依次导航到云 > GCP > 您的监视器名称 > 指导报表,查看 Google Cloud 的指导报表。
指导报表涵盖的 Google Cloud 服务列表
指导报表涵盖的受支持 Google 服务如下:
Cloud SQL
1. 启用自动备份(优先级:高)
类别:
可靠性
基线:
自动备份通过定期、定时备份 Cloud SQL 数据库来保护您的宝贵数据。在发生意外数据丢失、数据库损坏或其他不可预见问题时,您可以轻松将数据恢复到之前的状态。
建议:
在备份部分,检查是否已启用自动备份。
2. 启用高可用性(优先级:高)
基线:
检查已配置为 ZONAL 可用性的实例。
描述:
在 Google Cloud SQL 中启用高可用性 (HA) 配置或数据库集群,可在计划维护或中断期间维护数据冗余。由于高可用性 Cloud SQL 实例在指定 Google Cloud 区域内的主可用区和辅助可用区中运行,因此配置了高可用性的 Cloud SQL 实例被称为区域实例。
建议:
确保为所有生产和关键任务 Google Cloud SQL 数据库实例设置 HA 和自动故障转移支持。
3. 启用时间点恢复(优先级:中等)
基线:
检查未配置时间点恢复标志的实例。
描述:
时间点恢复 (PITR) 允许您将 Google Cloud MySQL 数据库实例恢复到精确的时间点—甚至精确到秒。此功能在因错误导致数据丢失或数据库损坏时尤为有价值,使您能够将数据库恢复到问题发生前的正常状态。
建议:
确保为 GCP 账户中的所有 MySQL 数据库实例启用时间点恢复 (PITR) 功能。这样可以在保持成本效益的同时,从特定时间点恢复数据。在启用 PITR 之前,请确保已为 MySQL 数据库实例激活自动备份和二进制日志记录。
4. Cloud SQL - 在 MySQL 中启用 slow_query_log 标志(优先级:中)
基线:
检查 MySQL 实例是否已启用 slow_query_log 标志。
描述:
slow_query_log 标志可启用对超过定义执行时间的查询的日志记录。这有助于识别数据库中的性能问题和潜在优化机会。
建议:
在 CloudSQL MySQL 实例中启用 slow_query_log 标志,以识别并优化执行缓慢的查询。
5. Cloud SQL - 在 PostgreSQL 中设置 log_error_verbosity 标志(优先级:中)
基线:
检查 PostgreSQL 实例的 log_error_verbosity 标志是否设置为 verbose。
描述:
log_error_verbosity 标志控制记录消息的详细程度。verbose 设置包含函数名称、行号和其他对有效调试和故障排除至关重要的详细信息。
建议:
在 CloudSQL PostgreSQL 实例中将 log_error_verbosity 标志设置为 verbose,以确保在日志中捕获完整的错误信息。
6. Cloud SQL - 在 PostgreSQL 中禁用 log_planner_stats 标志(优先级:中)
基线:
检查 PostgreSQL 实例是否已禁用 log_planner_stats 标志。
描述:
log_planner_stats 标志会记录查询计划器的性能统计信息,在生产环境中可能产生大量日志条目。此级别的详细信息通常仅在特定的调试或优化会话期间才需要。
建议:
在生产环境中禁用 CloudSQL PostgreSQL 实例的 log_planner_stats 标志,以防止过多日志记录和潜在的性能影响。
Compute Engine - VM
1. 未充分利用的 Compute 实例(优先级:中等)
基线:
检查 Google Compute Engine 实例的资源利用率,如果过去 48 小时内 CPU 使用率低于 2%,则将其标记为未充分利用。
建议:
对于 Google Compute Engine,您按实例类型和消耗的小时数计费。通过识别和停止未充分利用的实例,可以降低成本。此外,Site24x7 的指导报表还会显示当前机器类型,并推荐可降级的目标实例类型(建议的机器类型),以实现更好的成本削减。
2. 高度利用的 Compute 实例(优先级:高)
基线:
检查 GCP Compute 的性能计数器,识别高度利用的实例。
描述:
符合以下条件的 Compute 实例被视为过度利用:
- Compute 实例在过去七天内的每日平均 CPU 使用率超过 90%。
- Compute 实例在过去七天内的每日平均内存利用率超过 90%(仅适用于已在 Compute 实例上部署 Agent 的情况)。
建议:
考虑更改实例大小或将实例添加到自动扩展组。
3. Compute 维护配置(优先级:高)
基线:
检查实例的主机维护设置是否标记为 TERMINATE。
描述:
Google Cloud Compute Engine 支持在基础设施维护期间迁移 VM 实例而不造成停机。将可用性策略下的主机维护选项设置为迁移,以确保 VM 迁移到新硬件。
建议:
为 VM 实例配置实时迁移,确保其在维护期间迁移到新主机,防止停机。
4. 抢占式实例(优先级:高)
基线:
检查实例的抢占式标志是否已启用。
描述:
抢占式实例是经济实惠的短生命周期 VM,Google Cloud 可以随时停止它们。这类实例专为可中断的工作负载设计,能显著节省成本,但最长运行时间为 24 小时。
建议:
要确保实例不是抢占式的,请按以下步骤操作:
- 导航到 GCP 控制台 > Compute Engine 部分。
- 停止要修改的 VM 实例。
- 编辑 VM 实例设置,将抢占性从抢占式改为标准。
- 保存更改并重启实例。
5. 禁用自动重启的实例(优先级:中等)
基线:
检查实例的 automaticRestart 标志是否已启用。
描述:
Google Cloud Compute Engine 服务可能因非用户发起的原因停止,包括维护事件、硬件问题和软件故障。
建议:
启用自动重启,确保在 VM 主机故障时自动重启实例。
自动重启有助于在无需人工干预的情况下恢复实例,从而维持可用性。
6. 已停止的实例(优先级:中等)
基线:
检查已停止的实例是否存在超过允许天数。
描述:
当实例处于停止状态时,您仍可能被收取存储费用。但终止实例后,所有费用将被免除。此外,如果实例在指定时间内未运行,可能面临较高风险,因为该实例可能没有被积极维护。
建议:
确保在指定期限后不存在已停止的实例。
Compute Engine - 磁盘
1. 未挂载的磁盘(优先级:中等)
基线:
检查 Compute Engine 磁盘配置中关联的实例 ID。
描述:
Compute Engine 磁盘在实例终止或您明确从实例中卸载和分离卷后,仍可独立存在。如您所知,未挂载的卷仍会根据预配置的存储量和每秒输入/输出操作次数 (IOPS) 收费。
建议:
将配置的 Compute Engine 磁盘关联到活动实例,或删除该磁盘。
Kubernetes 集群
1. 启用集群节点自动修复(优先级:中等)
基线:
检查集群节点的自动修复属性是否已禁用。
描述:
自动修复有助于维护 GKE 集群节点的健康状态。启用后,GKE 会定期检查每个节点的健康状态,如果某个节点在设定时间内多次未通过健康检查,GKE 将自动启动修复程序。
建议:
为所有 GKE 集群节点启用自动修复功能,以维护其健康状态并确保平稳运行。
Filestore
1. 限制未经授权的访问(优先级:高)
基线:
检查 Filestore 的访问控制是否限制在某个 IP 地址或范围内。
描述:
默认情况下,Filestore 允许同一项目和 VPC 网络中的客户端不受限制地访问,这可能导致数据泄露。为增强安全性,请实施基于 IP 的访问控制,将访问权限限制在受信任的 IP 地址,并阻止所有其他访问。
建议:
确保建立受信任的 IP 地址或范围,以防止任何未经授权访问敏感数据。
Cloud Run 函数(前称 Cloud Functions)
1. 启用 CMEK(优先级:高)
基线:
检查函数是否已配置 CMEK。
描述:
Google Cloud 使用 Google 管理的密钥自动加密存储的数据。如需更多控制权,可以考虑通过 Cloud KMS 使用 CMEK,实现安全的密钥管理、轮换和吊销。
建议:
使用 CMEK 代替 Google 管理的加密密钥,以获得更强的控制力和合规性。
2. 最小实例配置(优先级:中等)
基线:
检查函数是否已配置最小实例设置。
描述:
Cloud Run 函数可能出现冷启动,增加延迟。为最大限度减少冷启动,请设置函数实例的最小数量。这可通过保持一定数量的实例处于热备状态,减少延迟,确保更快的响应速度和更高的可靠性。对于具有稳定流量或低延迟需求的生产工作负载,此设置尤为重要。
建议:
通过为 Cloud Run 函数设置足够数量的热备实例,减少冷启动时间并提高性能。
Cloud Run
1. 启用端到端 HTTP/2(优先级:中等)
基线:
检查 Cloud Run 服务是否禁用了端到端 HTTP/2。
描述:
启用端到端 HTTP/2 可通过允许请求多路复用和减少延迟来提升性能,从而改善在 Cloud Run 上运行的应用程序的用户体验。
建议:
为 Cloud Run 服务启用端到端 HTTP/2,以提高性能并降低延迟。
2. 最小实例数(优先级:中等)
基线:
检查 Cloud Run 服务是否配置了最小实例数。
描述:
配置最小实例数有助于确保您的 Cloud Run 服务始终可用,并能应对流量的突然激增。
建议:
为 Cloud Run 服务设置最小实例数,以确保可用性并有效应对流量峰值。
Cloud Storage
1. 启用版本控制(优先级:中等)
基线:
检查 GCP 存储桶是否已启用版本控制设置。
描述:
启用版本控制可通过保留对象的多个版本,防止意外删除和覆盖。
建议:
为存储桶启用版本控制,以防止数据丢失并维护对象历史记录。
Cloud Pub/Sub
1. Cloud Pub/Sub - 死信策略已禁用(优先级:低)
基线:
检查 Cloud Pub/Sub 订阅中未配置死信策略的订阅。
描述:
死信策略提供了一种处理经多次尝试后仍无法处理的消息的机制。如果没有死信策略,问题消息可能会阻塞处理流程,导致订阅中其他消息的传递延迟。
建议:
为 Pub/Sub 订阅配置死信策略,确保消息得到正确处理,防止不可处理的消息导致服务中断。
托管实例组
1. 托管实例组 - 自动修复已禁用的实例组(优先级:高)
基线:
检查实例组的自动修复配置是否已禁用。
描述:
自动修复通过自动修复不健康的 VM,帮助维护托管实例组的健康状态和可用性。启用后,Google Cloud 会定期检查每个实例的健康状态,并重建未通过健康检查的实例,确保您的应用程序保持可用和弹性。
建议:
为托管实例组启用自动修复,以提高应用程序可靠性,并在实例故障期间减少人工干预。
2. 托管实例组 - 单可用区实例组(优先级:低)
基线:
检查实例组是否部署在单个可用区中。
描述:
单可用区实例组容易受到特定可用区中断的影响,这可能影响应用程序可用性。区域(多可用区)托管实例组将 VM 实例分布在区域内的多个可用区,提供更高的可用性和对可用区故障的弹性。
建议:
将单可用区托管实例组转换为区域托管实例组,以提高应用程序可用性并防止可用区级别的故障。
负载均衡器
1. 未启用 Cloud CDN(优先级:中)
基线:
检查 Google Cloud 负载均衡器是否已启用 Cloud CDN。
描述:
Cloud CDN(内容分发网络)在 Google 的边缘节点缓存内容,以减少延迟、降低源服务器负载并减少服务成本。如果没有 Cloud CDN,您的应用程序可能会出现延迟增加、源服务器负载更高以及更高的数据传输成本,尤其是对于静态内容。
建议:
为 HTTP(S) 负载均衡器启用 Cloud CDN,以提高性能并降低成本。根据应用程序的内容特征配置适当的缓存设置。对于必须从源服务器提供的动态内容,请考虑使用缓存控制标头来优化缓存行为。
GCP Dataflow
1. 挂起的作业(优先级:中)
基线:
检查是否有 Dataflow 作业运行时间超过六小时。
描述:
长时间运行的 Dataflow 作业可能卡住或遇到问题,导致不必要的资源消耗和成本增加。
建议:
检查长时间运行的 Dataflow 作业,判断其是否正常运行或需要终止。考虑实施作业超时或监控机制,以自动检测并处理可能挂起的作业。
