如何关闭 AI 调优并回退到手动配置?
解读
面试官真正想考察的是:
- 你是否清楚 Cloud SQL 的“AI 调优”到底指哪一类功能(Cloud SQL 智能调优器 / Cloud SQL Insights 自动建议 / Cloud SQL 自动存储扩容 等)。
- 你是否能在零停机、可灰度、可审计的前提下,把自动行为关掉并还原为显式手动参数,同时保证变更可回滚、可追踪、符合国内合规要求。
- 你是否理解国内云环境下“手动配置”往往还要对接审批流、变更工单、DBA 审计表,而不仅是改个 flag。
知识点
- Cloud SQL 旗舰级自动调优能力:
- 自动存储扩容(automatic storage increase)
- 自动增加 IOPS(automatic storage increase 附带)
- Insights 自动索引建议(auto-index recommendations)
- 查询计划自动演化(自动统计信息更新)
- 关闭入口:
- 控制台、gcloud、Terraform、REST API 四选一;国内面试必须答出 gcloud 和 Terraform 双方案。
- 国内合规要点:
- 变更必须落工单系统(如 Jira、蓝凌),gcloud 命令需加 –-format=json 输出留痕;
- Terraform 代码必须走 GitLab MR + Atlantis 计划,MR 标题带“回退手动配置”关键字,方便审计。
- 灰度策略:
- 先关非生产实例,观察 24 h 存储水位;
- 生产实例采用维护窗口(maintenance window)内滚动重启,避免触发国内金融客户的“交易时段”红线。
- 回滚预案:
- 手动配置后,需保留最近一次自动调优前的全量备份(recovery point objective ≤ 5 min),并验证Point-in-Time Recovery 可用。
答案
- 识别实例当前已启用的自动调优项:
gcloud sql instances describe <INSTANCE_ID> \ --project=<PROJECT_ID> \ --format="value(settings.storageAutoResize,settings.insightsConfig.queryInsightsEnabled)" - 关闭自动存储扩容(国内最常见诉求):
注意:必须显式给出 –-storage-size,否则国内审计会被视为“配置漂移”。gcloud sql instances patch <INSTANCE_ID> \ --storage-auto-resize=false \ --storage-size=<MANUAL_SIZE_GB> \ --project=<PROJECT_ID> - 关闭Insights 自动索引建议:
gcloud sql instances patch <INSTANCE_ID> \ --insights-config-query-insights-enabled=false \ --project=<PROJECT_ID> - Terraform 侧回退模板(国内金融客户必问):
MR 通过 Atlantis plan 后,Terraform apply 由 DBA 双人审批方可执行。resource "google_sql_database_instance" "manual" { settings { tier = "db-custom-4-15360" disk_autoresize = false disk_size = 500 # 固定 500 GB insights_config { query_insights_enabled = false } } } - 验证关闭成功:
- 控制台**“存储”页签**显示“自动扩容:已停用”;
- Cloud Logging 过滤
protoPayload.methodName="cloudsql.instances.update"确认 user 字段为本次工单账号,authorizationInfo.permission 含 cloudsql.instances.update,满足国内等保操作可审计要求。
拓展思考
- 如果面试官追问“AI 调优关闭后性能下降怎么办”,可答:
- 先打开 Cloud SQL Insights 只读模式(query_insights_enabled=true, recordApplicationTags=false),不启用自动索引,仅采集负载;
- 用 pg_stat_statements 或 sys.statement_analysis 手动定位 TOP SQL,再通过工单系统提交索引变更,走传统 DBA 审批流,既保留人工决策,又不违背“关闭自动”初衷。
- 国内双录要求(录音录像)场景:
- 在 gcloud 命令前加 script -q -c 生成 typescript 文件,上传到 OSS 桶并打标签 “change-id=xxx”,实现录屏留痕。
- 若未来需要重新开启 AI 调优,务必先通过混沌工程平台做 24 h 压测,验证自动扩容阈值是否触发国内央行报备阈值(单实例存储 > 2 TB 需报备),避免合规风险。