初级云工程师GCP面试题:完整指南

Milad Bonakdar
作者
通过全面的面试题掌握GCP基本原理,涵盖Compute Engine、Cloud Storage、VPC、IAM和核心Google Cloud概念,为初级云工程师职位做好准备。
介绍
Google Cloud Platform (GCP) 是一套全面的云计算服务,提供计算、存储、网络、大数据和机器学习能力。作为一名初级云工程师,你需要掌握核心 GCP 服务的基础知识,才能构建和管理云基础设施。
本指南涵盖了针对初级 GCP 云工程师的常见面试问题,重点关注 Compute Engine、Cloud Storage、VPC 和 IAM。
GCP Compute Engine
1. 什么是 Google Compute Engine,它的主要用例是什么?
回答: Compute Engine 提供在 Google 数据中心运行的可扩展虚拟机。
主要特性:
- 自定义或预定义的机器类型
- 持久磁盘和本地 SSD
- 用于节省成本的可抢占式虚拟机
- 用于维护的实时迁移
- 全球负载均衡
用例:
- 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 Functions,如何部署一个?
回答: Cloud Functions 是一个无服务器执行环境,用于构建事件驱动的应用程序。
触发器:
- 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 云工程师面试需要了解核心服务和云概念。重点关注:
- Compute Engine: VM 实例、机器类型、磁盘
- Cloud Storage: 存储类别、存储桶、生命周期
- VPC: 网络、子网、防火墙规则
- IAM: 角色、权限、服务账号
- 核心概念: 区域、可用区、项目
练习使用 GCP Console 和 gcloud CLI 以获得实践经验。祝你好运!



