第一章:Azure Administrator Associate(AZ-104)认证概览
Azure Administrator Associate(AZ-104)是微软Azure平台的核心认证之一,面向负责在云环境中实施、管理与监控Azure资源的IT专业人员。该认证验证了考生在身份与治理、存储、虚拟网络、虚拟机和备份等方面的实际操作能力,是迈向Azure高级角色的重要基石。
认证目标人群
- 具备至少6个月Azure管理经验的技术人员
- 负责日常运维、资源配置与安全策略实施的系统管理员
- 希望证明其在Azure平台管理能力的云工程师
核心技能领域
通过AZ-104考试需掌握以下关键技能模块:
- 管理Azure身份与访问(基于Azure AD与RBAC)
- 配置与管理存储账户与数据保护机制
- 部署与维护虚拟机及高可用性架构
- 实现虚拟网络连接与网络安全组规则
- 监控资源健康状态并使用Azure Monitor进行故障排查
典型命令示例
例如,使用Azure CLI创建资源组并部署虚拟机的基本流程如下:
# 创建资源组
az group create --name MyResourceGroup --location eastus
# 创建虚拟机(自动提示输入凭据)
az vm create \
--resource-group MyResourceGroup \
--name MyVM \
--image Ubuntu2204 \
--size Standard_B1s \
--public-ip-address "" \
--generate-ssh-keys
# 启动虚拟机
az vm start --resource-group MyResourceGroup --name MyVM
上述命令展示了通过CLI自动化部署基础设施的典型流程,适用于快速搭建测试环境或标准化部署场景。
考试与准备建议
| 项目 | 详情 |
|---|
| 考试代码 | AZ-104 |
| 题型 | 选择题、拖拽题、案例分析 |
| 时长 | 120分钟 |
| 通过分数 | 700/1000 |
| 推荐学习路径 | Microsoft Learn 模块 + 实战沙盒练习 |
第二章:核心管理任务实操解析
2.1 管理Azure订阅与资源组:理论精要与实战演练
在Azure平台中,订阅是资源管理的顶层边界,决定了计费、配额和访问控制范围。每个订阅可包含多个资源组,而资源组作为逻辑容器,用于聚合相关资源以便统一生命周期管理。
资源组的创建与管理
使用Azure CLI创建资源组时,需指定名称与地理位置:
az group create --name myResourceGroup --location eastus
该命令在“美国东部”区域创建名为 `myResourceGroup` 的资源组。参数 `--name` 定义唯一标识,`--location` 指定资源元数据存储位置,部分服务依赖此位置进行部署约束。
订阅层级的策略应用
通过资源管理器模板或策略,可在订阅层级强制实施合规性规则。例如,限制所有资源必须包含“环境”标签:
- 策略类别:标记管理
- 适用范围:整个订阅
- 效果:审计或拒绝不合规资源
2.2 配置和管理虚拟网络:从IP规划到路由实践
在构建虚拟化环境时,合理的IP地址规划是确保网络可扩展性和安全隔离的基础。通常采用私有IP地址段进行子网划分,例如使用CIDR表示法将192.168.0.0/16划分为多个/24子网,以支持不同业务区域的独立部署。
子网划分示例
- 开发环境:192.168.10.0/24
- 测试环境:192.168.20.0/24
- 生产环境:192.168.100.0/24
静态路由配置
ip route add 192.168.20.0/24 via 10.0.0.1 dev eth0
# 将目标子网192.168.20.0的流量通过网关10.0.0.1转发
# dev eth0指定出站网络接口
该命令用于在Linux系统中添加一条持久路由,确保跨子网通信可达。参数
via指定下一跳地址,
dev明确出口设备。
虚拟网络组件交互示意
[VM] → [vSwitch] → [Gateway] → [Physical Network]
2.3 实现存储账户高可用性:冗余策略与数据访问实战
在构建高可用的云存储系统时,选择合适的冗余策略是保障数据持久性和访问连续性的关键。Azure 和 AWS 等主流云平台提供多种冗余模式,可根据业务需求进行精细配置。
常见冗余策略对比
- LRS(本地冗余):数据在同一个数据中心内复制三份,成本低但容灾能力有限;
- GRS(异地冗余):主区域三副本 + 跨区域异步复制,支持故障转移;
- ZRS(区域冗余):跨多个可用区同步复制,适用于高可用应用。
通过API配置ZRS存储账户(Azure)
{
"sku": {
"name": "Standard_ZRS"
},
"kind": "StorageV2",
"location": "eastus",
"properties": {}
}
该JSON用于创建区域冗余存储账户,
Standard_ZRS确保数据在区域内多个可用区间同步复制,提升读写容错能力。
读取偏好设置优化访问延迟
可通过设置读取访问地理冗余存储(RA-GRS),允许从次级区域读取数据,提升全球用户访问效率。
2.4 部署和管理Azure虚拟机:自动化部署与运维技巧
使用ARM模板实现自动化部署
Azure资源管理器(ARM)模板通过声明式语法定义虚拟机及其依赖资源,实现可重复、一致的部署流程。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": { "type": "string", "defaultValue": "myVM" },
"vmSize": { "type": "string", "defaultValue": "Standard_B2s" }
},
"resources": [
{
"type": "Microsoft.Compute/virtualMachines",
"apiVersion": "2022-03-01",
"name": "[parameters('vmName')]",
"location": "[resourceGroup().location]",
"properties": {
"hardwareProfile": { "vmSize": "[parameters('vmSize')]" }
}
}
]
}
该模板定义了虚拟机名称和大小参数,便于跨环境复用。通过Azure CLI执行部署:
az deployment group create --resource-group myRG --template-file vm.json,实现基础设施即代码(IaC)。
运维最佳实践
- 启用自动缩放策略以应对负载变化
- 配置Azure Monitor警报监控CPU与内存使用率
- 定期更新自定义镜像并绑定更新管理组
2.5 配置基于角色的访问控制(RBAC):权限模型与安全实践
RBAC核心组件解析
基于角色的访问控制(RBAC)通过分离用户与权限,引入“角色”作为中间层,实现权限的集中管理。核心组件包括用户、角色、权限和资源。用户被赋予角色,角色绑定具体权限,从而访问受控资源。
典型Kubernetes RBAC配置示例
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
namespace: default
name: pod-reader
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list"]
上述定义了一个名为
pod-reader 的角色,允许在
default 命名空间中读取Pod资源。参数说明:
verbs 指定操作类型,
resources 指定资源对象,
apiGroups 确定API组。
最佳安全实践
- 遵循最小权限原则,仅授予必要权限
- 使用命名空间隔离不同团队的资源访问
- 定期审计角色绑定,清理过期权限
第三章:身份与安全管理深度剖析
3.1 使用Azure AD管理用户和组:同步与生命周期管理
数据同步机制
Azure AD通过Azure AD Connect工具实现本地Active Directory与云端目录的同步。该服务支持密码哈希同步、直通验证和联合身份验证等多种模式。
# 示例:启动增量同步
Start-ADSyncSyncCycle -PolicyType Delta
此命令触发增量同步周期,仅同步变更的用户或组对象,减少网络负载。参数
-PolicyType Delta表示增量模式,
Initial用于首次全量同步。
用户生命周期自动化
通过配置规则,可实现用户创建、禁用与删除的自动同步。例如,当本地AD中禁用某账户时,Azure AD将在下一个同步周期更新其状态。
- 新建用户:自动从本地同步至云端
- 账户禁用:同步后在Azure AD中标记为已封锁
- 删除操作:软删除保留30天,可恢复
3.2 实施多因素认证与条件访问策略:安全加固实战
启用多因素认证(MFA)配置
在Azure AD或类似身份平台中,强制启用MFA是提升账户安全的首要步骤。可通过策略为高权限用户或全体成员开启验证。
{
"displayName": "Require MFA for Admins",
"state": "enabled",
"conditions": {
"users": {
"includeRoles": ["GlobalAdministrator", "SecurityAdministrator"]
}
},
"grantControls": {
"operator": "AND",
"builtInControls": ["mfa"]
}
}
该JSON定义了一个条件访问策略,仅对管理员角色触发MFA。includeRoles指定适用角色,builtInControls确保请求必须通过多因素验证。
基于风险的条件访问策略
结合登录风险评估,可动态应用访问控制。例如,当检测到异常位置或设备时,系统自动要求额外验证。
- 低风险:允许访问
- 中等风险:触发MFA
- 高风险:阻止登录
3.3 监控与响应安全事件:使用Microsoft Defender for Cloud
Microsoft Defender for Cloud 是 Azure 环境中统一的安全管理平台,提供持续的资源评估、威胁检测和自动响应能力。它通过深度集成 Azure Monitor 和 Microsoft Sentinel 实现跨云工作负载的可见性。
启用高级威胁防护
在关键虚拟机上启用 Defender for Cloud 的服务器高级防护,可实现行为分析与勒索软件监控。以下 PowerShell 命令用于为订阅启用自动部署:
Set-AzSecurityAutoProvisioningSetting -Name "default" -AutoProvision On
该命令激活安全代理(AMA)的自动安装,确保新创建的虚拟机自动接入监控体系。参数
-AutoProvision On 启用代理自动部署,
"default" 为固定配置名称。
安全策略与合规视图
Defender for Cloud 使用内置策略评估资源合规状态。可通过策略门户查看不符合项,并导出为结构化报告。
| 控制项 | 默认状态 | 影响范围 |
|---|
| 磁盘加密 | 审核 | 所有Linux/Windows VM |
| 网络ACL配置 | 警报 | 存储账户 |
第四章:备份、恢复与监控实战
4.1 配置Azure Backup服务:保护虚拟机与文件级数据
Azure Backup 提供集中化的备份解决方案,支持 Azure 虚拟机及本地文件级数据的保护。通过恢复服务保管库(Recovery Services Vault),可统一管理备份策略与恢复点。
创建恢复服务保管库
在 Azure 门户中执行以下命令创建保管库:
az backup vault create \
--resource-group myResourceGroup \
--name myBackupVault \
--location eastus
该命令在指定资源组中创建保管库,
--location 参数需与目标虚拟机区域一致,确保备份数据合规性与低延迟访问。
配置备份策略
使用 Azure CLI 启用虚拟机备份:
- 定义每日备份计划(默认保留30天)
- 启用即时还原功能以提升恢复效率
- 设置软删除保护防止意外清除备份数据
备份策略应用后,Azure 会自动部署扩展至目标 VM,实现无代理、加密传输的持续保护。
4.2 实现站点恢复(Site Recovery):跨区域容灾演练
在构建高可用架构时,跨区域容灾是保障业务连续性的关键环节。通过自动化站点恢复机制,可在主区域故障时快速切换至备用区域。
数据同步机制
采用异步复制技术实现跨区域数据同步,确保RPO(恢复点目标)控制在分钟级。核心数据库通过变更数据捕获(CDC)持续向异地副本传输增量日志。
// 示例:基于事件触发的同步逻辑
func TriggerFailover(region string) error {
if !CheckReplicationLag(region) {
return errors.New("replication lag exceeds threshold")
}
return SwitchDNSToRegion(region)
}
该函数在确认复制延迟达标后,执行DNS切换,将流量导向目标区域,避免数据丢失。
演练流程设计
- 每月执行一次全链路切换演练
- 验证应用在目标区域的启动顺序与依赖关系
- 监控RTO(恢复时间目标)并记录关键节点耗时
4.3 使用Azure Monitor进行性能监控与告警配置
Azure Monitor 是 Azure 平台核心的监控服务,提供全面的性能指标收集、日志分析与实时告警能力。通过集成 Application Insights 和 Log Analytics,可实现对虚拟机、应用服务及容器化工作负载的深度观测。
关键监控指标配置
常用性能指标包括 CPU 使用率、内存消耗、磁盘 I/O 与网络吞吐量。可通过以下 ARM 模板片段启用自动监控:
{
"type": "microsoft.insights/metricAlerts",
"name": "HighCpuAlert",
"properties": {
"description": "CPU使用率超过80%",
"severity": 2,
"enabled": true,
"criteria": {
"odata.type": "Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria",
"allOf": [
{
"metricName": "Percentage CPU",
"operator": "GreaterThan",
"threshold": 80,
"timeAggregation": "Average"
}
]
}
}
}
该配置定义了一个基于虚拟机 CPU 使用率的告警规则,当过去5分钟内平均值超过80%时触发,适用于及时发现性能瓶颈。
告警通知机制
支持通过电子邮件、短信、Webhook 等方式发送通知,确保运维团队快速响应异常事件。
4.4 日志查询与故障排查:Kusto查询语言入门与应用
在分布式系统运维中,高效的日志查询能力是快速定位问题的关键。Kusto(即Azure Data Explorer)提供了一种简洁而强大的查询语言——Kusto Query Language(KQL),广泛应用于日志分析与监控场景。
基本语法结构
KQL采用管道式语法,数据按顺序经过多个操作符处理。常见操作包括过滤、投影、聚合等。
// 查询过去一小时内HTTP 500错误
Logs
| where Timestamp > ago(1h)
| where StatusCode == "500"
| project Time=Timestamp, Service, Message
| take 100
上述语句首先从
Logs表中筛选最近一小时的数据,再过滤出状态码为500的记录,最后仅展示时间、服务名和消息字段,限制返回100条结果。其中
ago(1h)表示相对时间计算,
project用于字段选择,提升查询效率。
常用聚合与分组
通过
summarize可实现统计分析,例如按服务维度统计错误次数:
Logs
| where StatusCode == "500"
| summarize ErrorCount = count() by Service
| order by ErrorCount desc
第五章:高效备考策略与考试冲刺建议
制定个性化学习计划
根据自身基础合理分配时间,建议采用“三阶段法”:基础巩固(40%)、专项突破(30%)、模拟冲刺(30%)。每日安排至少90分钟专注学习,并利用番茄工作法提升效率。
高频考点精练
针对常考知识点进行集中训练。例如,在准备系统架构师考试时,微服务容错机制是重点内容之一。以下为使用 Go 语言实现熔断器模式的简化示例:
package main
import (
"time"
"golang.org/x/sync/singleflight"
)
type CircuitBreaker struct {
failureCount int
lastFailure time.Time
}
func (cb *CircuitBreaker) Call(fn func() error) error {
if cb.isTripped() {
return ErrCircuitOpen
}
err := fn()
if err != nil {
cb.failureCount++
cb.lastFailure = time.Now()
}
return err
}
全真模拟测试安排
每周完成一次完整计时模拟,推荐使用近3年真题。记录各题型耗时与正确率,形成追踪表格:
| 日期 | 总分 | 选择题正确率 | 案例分析得分 | 耗时(分钟) |
|---|
| 6/1 | 78 | 82% | 65/100 | 115 |
| 6/8 | 85 | 90% | 78/100 | 120 |
错题复盘与知识闭环
建立电子错题本,分类归档易错点。使用如下结构记录:
- 题目来源:2023年上·第15题
- 错误原因:混淆CAP定理中P与A的优先级场景
- 修正方案:重读《Designing Data-Intensive Applications》第9章
- 关联考点:分布式一致性协议、ZooKeeper选举机制