初级 GCP 云工程师面试题

Milad Bonakdar
作者
通过 IAM、Compute Engine、Cloud Storage、VPC、Pub/Sub、Cloud Run functions 和 gcloud 排障等实用问题,准备初级 GCP 云工程师面试。
介绍
初级 GCP 云工程师面试通常不是只考产品名称,而是看你能否解释 Google Cloud 资源如何协同工作。你需要能选择合适的计算服务,用 IAM 控制访问,理解 VPC 网络,安全使用 Cloud Storage,并用 gcloud CLI 排查基础问题。
本指南帮助你练习 Compute Engine、Cloud Storage、VPC、IAM、Pub/Sub、Cloud Run functions 和常见命令行流程的清晰回答。回答时尽量连接实际场景:托管 Web 应用、保存备份、给服务账号授权,或排查流量为什么到不了 VM。
GCP Compute Engine
1. 什么是 Google Compute Engine,它的主要用例是什么?
回答: Compute Engine 提供在 Google 数据中心运行的可扩展虚拟机。
主要特性:
- 自定义或预定义的机器类型
- 持久磁盘和本地 SSD
- 用于可容忍中断工作负载的 Spot VMs
- 用于维护的实时迁移
- 全球负载均衡
用例:
- Web 托管
- 应用程序服务器
- 批量处理
- 高性能计算
常见程度: 非常常见 难度: 简单
2. 解释持久磁盘和本地 SSD 之间的区别。
回答:
示例:
常见程度: 常见 难度: 简单-中等
GCP Cloud Storage
3. Cloud Storage 中有哪些不同的存储类别?
回答: Cloud Storage 为不同的访问模式提供多种类别:
常见程度: 非常常见 难度: 简单-中等
GCP VPC (Virtual Private Cloud)
4. 什么是 VPC,它的关键组件是什么?
回答: VPC 是一个虚拟网络,为 GCP 资源提供连接。
关键组件:
组件:
- 子网: 区域 IP 范围
- 防火墙规则: 控制流量
- 路由: 定义流量路径
- VPC 对等互连: 连接 VPC
- Cloud VPN: 连接到本地
常见程度: 非常常见 难度: 中等
5. 防火墙规则在 GCP 中如何工作?
回答: 防火墙规则控制传入和传出流量。
特性:
- 有状态(自动允许返回流量)
- 应用于网络或特定实例
- 基于优先级(0-65535,越低 = 优先级越高)
- 默认:允许出站,拒绝入站
规则组件:
- 方向(入站/出站)
- 优先级
- 操作(允许/拒绝)
- 源/目标
- 协议和端口
常见程度: 非常常见 难度: 中等
GCP IAM
6. 解释 GCP 中的 IAM 角色和权限。
回答: IAM 控制谁可以对哪些资源执行哪些操作。
关键概念:
- 成员: 用户、服务账号或群组
- 角色: 权限集合
- 策略: 将成员绑定到角色
角色类型:
- 原始: 所有者、编辑者、查看者(广泛)
- 预定义: 服务特定(例如,Compute Admin)
- 自定义: 用户定义的权限
最佳实践:
- 尽可能使用预定义角色
- 遵循最小权限原则
- 为应用程序使用服务账号
- 定期审核权限
常见程度: 非常常见 难度: 中等
GCP 核心概念
7. 什么是 GCP 区域和可用区?
回答:
区域:
- 地理位置(例如,us-central1,europe-west1)
- 包含多个可用区
- 独立的故障域
- 根据延迟、合规性、成本选择
可用区:
- 区域内的隔离位置
- 单个故障域
- 跨可用区部署以实现高可用性
示例:
常见程度: 非常常见 难度: 简单
8. 什么是服务账号,何时使用它?
回答: 服务账号 是用于应用程序和 VM 的特殊账号。
特性:
- 不适用于人类
- 由应用程序使用
- 可以拥有 IAM 角色
- 可以创建用于身份验证的密钥
用例:
- VM 实例访问 Cloud Storage
- 应用程序调用 GCP API
- CI/CD 管道
- 跨项目访问
常见程度: 常见 难度: 简单-中等
Serverless & Messaging
9. 什么是 Cloud Pub/Sub,何时使用它?
回答: Cloud Pub/Sub 是一种完全托管的消息传递服务,用于异步通信。
关键概念:
- 主题: 消息发送到的命名资源
- 订阅: 表示消息流的命名资源
- 发布者: 将消息发送到主题
- 订阅者: 从订阅接收消息
架构:
基本操作:
发布者示例 (Python):
订阅者示例 (Python):
订阅类型:
1. 拉取订阅:
2. 推送订阅:
用例:
- 事件驱动架构
- 微服务通信
- 流处理管道
- IoT 数据摄取
- 异步任务处理
最佳实践:
- 使用消息属性进行过滤
- 实现幂等消息处理
- 设置适当的确认截止时间
- 为失败的消息使用死信主题
- 监控订阅积压
常见程度: 常见 难度: 中等
10. 什么是 Cloud Run functions,如何部署一个?
回答: Cloud Run functions 是 Google Cloud 当前用于无服务器、事件驱动代码的函数体验。面试中仍可能听到 “Cloud Functions” 这个名称;核心思路相同:部署响应 HTTP 请求或事件的小型函数,而不需要管理服务器。
触发器:
- HTTP 请求
- Cloud Pub/Sub 消息
- Cloud Storage 事件
- Firestore 事件
- Firebase 事件
HTTP 函数示例:
Pub/Sub 函数示例:
Storage 函数示例:
部署:
Requirements 文件:
本地测试:
监控:
最佳实践:
- 保持函数小而专注
- 使用环境变量进行配置
- 实施适当的错误处理
- 设置适当的超时值
- 使用 Cloud Logging 进行调试
- 尽量减少冷启动时间
常见程度: 非常常见 难度: 简单-中等
CLI & 工具
11. 解释常见的 gcloud CLI 命令和配置。
回答: gcloud CLI 是管理 GCP 资源的主要工具。
初始设置:
配置管理:
按服务划分的常见命令:
Compute Engine:
Cloud Storage:
IAM:
Kubernetes Engine:
有用的标志:
有用的命令:
最佳实践:
- 使用配置管理不同环境
- 设置默认项目和区域
- 使用
--format进行脚本编写 - 使用
--filter缩小结果范围 - 启用命令完成
- 保持 gcloud SDK 更新
常见程度: 非常常见 难度: 简单-中等
结论
准备初级 GCP 云工程师面试,重点是展示实用判断。好的回答会说明服务用途、权衡点,以及你会在控制台或 CLI 中执行的简单操作。
优先复习这些方面:
- Compute: 何时使用 Compute Engine、GKE、Cloud Run 或 Cloud Run functions
- Storage: bucket 存储类别、生命周期规则、保留策略和安全访问
- Networking: VPC、子网、路由、防火墙规则和负载均衡基础
- IAM: 预定义角色、服务账号、最小权限和避免长期密钥
- Operations: 日志、指标、配额、
gcloud配置和基础排障
面试前,创建一个小项目,部署一个 VM 或 function,向 Cloud Storage 上传文件,给服务账号授予有限角色,并练习把每个决定大声解释出来。


