Splunk Enterprise Admin 是 Splunk shop 平台运维岗位的硬通货,公司不用 Splunk 这张证就是死证。
先把考试形式、适合人群、备考时长和学习范围讲清楚,再决定要不要投入时间。
Splunk Enterprise Certified Admin(SPLK-1003)是 Splunk 认证体系里唯一真正面向"平台运维"的中级认证 — 它和 SPLK-1002 是同一层级的两个分支:1002 走 SPL/分析方向,1003 走部署/管理方向。官方硬性要求必须先通过 SPLK-1002 才能报考 SPLK-1003(不是建议,是 schedule 时系统会拦),这点是 2024 年改版后的新规则,之前可以直接考。
考试形式:63 道题,57 分钟,70% 通过,费用 130 美元(Pearson VUE,可线上监考)。考试有效期 3 年。这张证的题目密度相当高,平均不到 55 秒一题,但题目本身比 1002 短,多是配置文件场景题和组件角色判断题。
考点核心是 4 个领域:(1) 配置文件体系 — inputs.conf / outputs.conf / props.conf / transforms.conf / indexes.conf 的字段语法和优先级合并规则(system/local > apps/local > apps/default > system/default,这个顺序必须背死);(2) Forwarder 部署 — Universal Forwarder 和 Heavy Forwarder 的能力差异、Deployment Server 通过 serverclass.conf 推送 deployment app 的机制;(3) 索引生命周期 — Hot/Warm/Cold/Frozen/Thawed 各阶段的存储路径、转换条件、frozenTimePeriodInSecs 和 maxTotalDataSizeMB 优先级;(4) 用户认证与许可证 — LDAP/SAML 集成、role inheritance、License Master 违规处理。
2024 年 Cisco 完成 280 亿美元收购 Splunk 后,Splunk Enterprise 自管部署在大型金融、电信、政府客户里依然是 SIEM/日志平台的事实标准,企业不会短期内迁走 — 这意味着 SPLK-1003 在未来 3-5 年内对已经在 Splunk shop的运维人员仍然有实打实的薪资溢价。但 Cisco 在主推 Splunk Cloud + Cisco XDR 集成,新客户上 SaaS 比例越来越高,纯自管 Splunk 的运维岗位长期会被压缩。
一句话判断:你或你公司有 Splunk Enterprise 的自管或混合部署 — 这张证考;纯 Splunk Cloud 的公司或者非 Splunk 栈 — 别浪费时间。
Splunk SPLK-1003 持证人的薪资区间、对应岗位、以及真实的职业影响。
Splunk Admin 是 Splunk 生态里最贵的岗位之一
在美国市场,Splunk Administrator / Splunk Engineer 的中位薪资比通用 SIEM Engineer 高 15-25%,原因很简单:Splunk 自管部署的运维门槛比 Datadog/Elastic 高得多 — 配置文件层级、indexer cluster 的 replication factor / search factor、deployment server 的 serverclass 推送、SHC(Search Head Cluster)的 captain 选举 — 这些东西没有 1-2 年实战经验做不下来。市场上能熟练做 Splunk Enterprise 自管运维的人本来就少,所以薪资被顶得很高。澳洲四大行(CBA、NAB、Westpac、ANZ)和大型电信(Telstra、Optus)的 Splunk Admin 岗位 base 普遍在 130-160k AUD,加上 super 和 bonus 接近 175k。
谁最该考
谁不应该考
Cisco 收购后的薪资观察:2024-2025 年 Cisco 完成整合后,部分 Splunk Professional Services 团队被合并到 Cisco Customer Experience(CX),这部分人的薪资体系向 Cisco 靠拢(普遍涨 5-10%)。但企业客户侧的 Splunk Admin 岗位需求没有明显变化,继续保持中等偏上水平。一个可观察的趋势是:Cisco 在主推 "Splunk + Cisco XDR" 套件,未来 Splunk Admin 如果同时熟悉 Cisco 网络栈(CCNA 级别)会更值钱。
过来人总结的分阶段备考节奏,按周拆分,不是空话。
1002 是硬性前置,没过先去考。环境必须搭"分布式",不能只装单机 — 因为 1003 的核心就是分布式架构。最低配置:3 台 Linux VM(4G 内存即可),一台装 Splunk Enterprise 做 Indexer + License Master,一台装 Splunk Enterprise 做 Search Head + Deployment Server,一台装 Universal Forwarder。Splunk Enterprise 用 Free License(每天 500MB 永久免费)。如果机器不够也可以用 Docker compose 起 splunk/splunk 镜像 + splunk/universalforwarder 镜像,官方都有现成的。这一步如果跳过,后面所有的配置题都是死记硬背 — 必死。
Splunk Training 上这两门课直接对应 1003 考纲,每门约 12 小时,目前需要付费但很多公司账号有免费名额,可以先问 IT。System Administration 重点:Splunk 索引架构、用户和角色管理、authentication(LDAP/SAML/Native)、license 管理、监控 _internal 索引。Data Administration 重点:data inputs(monitor/tcp/udp/scripted)、forwarder 配置、props.conf 时间戳和行合并、transforms.conf 字段提取和路由、CIM data normalization。每看完一节立刻在自己的 3 节点环境里复现 — 比如学到 deployment server 就立刻配一个 serverclass.conf 把 app 推到 forwarder 上,看 splunkd.log 确认 phone home 成功。
这是 1003 备考的核心。具体任务:(1) 把 $SPLUNK_HOME/etc/system/default 下的 inputs.conf、outputs.conf、props.conf、transforms.conf、indexes.conf、server.conf、authorize.conf 这 7 个文件**通读一遍**,搞清楚每个 stanza 的 default 值;(2) 自己写一个 monitor input + 自定义 sourcetype + props.conf 时间戳提取(DATETIME_CONFIG/TIME_FORMAT/MAX_TIMESTAMP_LOOKAHEAD)+ transforms.conf REGEX 提取字段的完整流程;(3) 用 `splunk btool inputs list --debug` 看配置合并结果,理解每一行配置来自哪个文件 — **btool 是考试隐藏的核心工具**,会有 2-3 道题问 "用什么命令能看到当前生效的配置";(4) 创建一个自定义 index,配置 frozenTimePeriodInSecs=2592000、maxTotalDataSizeMB=10000、coldToFrozenDir=/data/frozen,然后手动测试数据从 hot → warm → cold → frozen 的转换;(5) 完整配一遍 Deployment Server:写 serverclass.conf 把不同 deployment app 推到不同 forwarder,看 phone home 周期。这些做完才算真的会 Admin。
分布式:搞清楚 Search Head 添加 Search Peer 的命令(splunk add search-server)和 Deployment Server 管理 Forwarder 的区别 — 这俩经常被新手混淆,一定要写一个对比表。Indexer Cluster 的 Replication Factor 和 Search Factor 是必考点(RF 决定数据副本数,SF 决定可搜索副本数,SF <= RF)。用户权限:admin / power / user 默认 capability 差异、role inheritance、srchIndexesAllowed 限制角色可搜索的索引。最后一周每天做一套模考,JR Academy 题库刷 2 遍 + Splunk 官方 sample test。错题本必做,重点关注:props vs transforms 的职责边界(props 配置 parsing 阶段要做什么,transforms 配置具体怎么做)、UF vs HF 选型(带 parsing 需求的场景必须 HF)、Deployment Server vs Indexer Cluster Master vs SHC Deployer(三个东西管的是不同对象)。模考稳定 80% 以上再约考试。
过来人的备考时长、分数、以及踩过的坑。
我是从 Linux SysAdmin 转 Splunk Engineer 的,公司有 12 个 indexer + 4 个 search head 的集群。备考最大的收获是终于把 deployment server、cluster master、SHC deployer 这三个东西彻底分清楚了 — 之前一直靠搜文档,考完之后才真正理解为什么要分三个角色。考试里直接有 3-4 道题考这三个角色的职责区分。btool 命令我之前从来没用过,备考的时候才发现这玩意是排查配置问题的神器,现在工作中天天用。
我们是 Splunk ES + Enterprise,我负责 indexer cluster 和 forwarder 的运维。考试里 props.conf 和 transforms.conf 的题真的非常多,至少 10 道以上,重点考时间戳提取(DATETIME_CONFIG=CURRENT 和 NONE 的区别经常被坑)、LINE_BREAKER 和 SHOULD_LINEMERGE 的关系(很多人不知道 SHOULD_LINEMERGE=false 时 LINE_BREAKER 才生效)。第二个坑是 indexes.conf 里的 homePath / coldPath / thawedPath 必须用 $SPLUNK_DB 这个变量,不能写绝对路径,考题会给你一个错误的 stanza 让你找问题。
我们公司是 Splunk 的 Premier Partner,我做交付实施 2 年了,1003 算是日常工作的总结考。Free License 那块考点比预想多 — 50 GB/天的 Free License 不能用 alerting、不能用 distributed search、不能加 forwarder management,这些限制必须背。许可证违规处理也是高频考点:30 天内 5 次 violation 会触发 license disable,需要联系 Splunk Support reset。考试题里 Universal Forwarder 和 Heavy Forwarder 的对比题至少 5 道,记住一个核心原则:UF 不能 parse 数据(除了少数例外比如 syslog),需要在 forwarder 端做字段提取或路由的场景必须用 HF。
| Splunk SPLK-1003 | Splunk SPLK-1001 | Splunk SPLK-1002 | |
|---|---|---|---|
| 机构 | 其他 | 其他 | 其他 |
| 级别 | 助理级 | 助理级 | 助理级 |
| 考试费 | $0 | $0 | $0 |
| 时长 | 90 min | 90 min | 90 min |
| 题量 | 65 | 65 | 65 |
| 有效期 | 3 年 | 3 年 | 3 年 |
**63 题 / 57 分钟,平均 54 秒一题** — 但题目本身比 1002 短得多,多是配置文件 stanza 题和组件角色判断题。看到长配置文件先扫 stanza 名和关键字段,不要逐行读。
**配置文件题先看 stanza 名** — `[default]` stanza 是 fallback,`[<sourcetype>]` 是针对特定 sourcetype。如果题目里同时给两个 stanza,针对性的 stanza 优先级更高。
**遇到 "配置不生效" 类问题首选 btool** — 任何 "为什么我的 props.conf 没生效" 类型的题,正确答案大概率是用 `splunk btool props list --debug <sourcetype>` 排查。
**Universal Forwarder 不能 parse** 是判断 UF/HF 选型题的核心原则 — 任何涉及 forwarder 端做 REGEX、字段提取、路由、masking 的场景,答案永远是 HF。
**Deployment Server 不管 indexer cluster** — 看到 "如何把配置推送到 indexer cluster peer" 的题,答案永远是 Cluster Master + `splunk apply cluster-bundle`,不是 Deployment Server。
**SF <= RF 是 indexer cluster 的硬约束** — Search Factor 必须小于等于 Replication Factor。题目里如果 SF=3, RF=2 这种是非法配置。
**费用和约考**:考试费 130 美元(Pearson VUE 在线监考或线下考点都行),需要先在 Splunk Training 网站登录 → My Splunk → Certification → Schedule Exam → 跳转 Pearson VUE。挂了后 7 天内不能重考(这点和 1002 的 14 天不同),重考全价。
**考完立即出结果** — 交卷后屏幕直接显示 Pass/Fail 和各 domain 的百分比,没过的话能看到自己哪个 domain 薄弱(一般是配置文件优先级或 cluster 概念),下次针对性补。
**搞混 props.conf 和 transforms.conf 的职责边界** — props.conf 定义 "对某个 sourcetype/host/source 要做什么处理"(声明意图),transforms.conf 定义 "具体怎么做"(提供 REGEX、FORMAT、DEST_KEY 等实现细节)。两者通过 TRANSFORMS-xxx = stanza_name 关联。最常见的考题:要做正则字段提取,**必须** props.conf 里写 `TRANSFORMS-extract = my_extract`,然后 transforms.conf 里定义 `[my_extract]` stanza 写 REGEX。新手常犯的错是把 REGEX 直接写在 props.conf 的 EXTRACT-xxx 字段里 — 这种简单提取可以,但只能用于 search-time 提取,不能做 index-time 提取或路由。
**Universal Forwarder 和 Heavy Forwarder 选型用错位置** — Universal Forwarder 是 lightweight agent(约 100MB 内存),**不做任何 parsing**(除了少数特殊情况如 syslog 的 light parsing),只负责把原始数据流转发到 indexer 或 HF。Heavy Forwarder 是完整 Splunk Enterprise(约 1GB 内存),可以 parse、index-time 字段提取、路由数据到不同 indexer 或第三方系统。考试场景题最常见的两种:(1) 需要按字段值把数据路由到不同 indexer — 必须用 HF(要在 forwarder 端做 parsing),(2) 需要在 forwarder 端做数据 masking / SEDCMD — 也必须用 HF。如果只是单纯把日志文件发到 indexer,永远优先用 UF。
**Deployment Server 和 Deployment App 的关系搞反** — Deployment Server 是**一台 Splunk 实例**(角色),通过 serverclass.conf 把不同 deployment app(每个 app 是 $SPLUNK_HOME/etc/deployment-apps/ 下的一个目录)推送到不同的 deployment client(被管理的 forwarder 或 indexer)。考题最容易踩的坑:(1) Deployment Server **不能管理自己** — 要管理 search head 必须由另一台 Deployment Server 管,(2) Deployment Server **不能管理 indexer cluster peer** — indexer cluster 的配置由 Cluster Master 通过 splunk apply cluster-bundle 推送,不要混用,(3) serverclass.conf 里 whitelist/blacklist 的匹配是基于 client name / IP / DNS / hostname,不是基于 OS。
**btool 命令不会用 + 不知道配置文件优先级** — `splunk btool <conf_file> list --debug` 是排查 "为什么我的配置不生效" 的核心命令,考试一定会考。优先级顺序必须背死:`$SPLUNK_HOME/etc/system/local` > `$SPLUNK_HOME/etc/apps/<app>/local` > `$SPLUNK_HOME/etc/apps/<app>/default` > `$SPLUNK_HOME/etc/system/default`。常见错觉:以为 system/default 优先级最高(因为是 "system")— 错,system/default 优先级**最低**,是兜底默认值。所有人写自己的配置应该放在 `etc/apps/<myapp>/local/` 下,**永远不要改 default 文件**(升级会被覆盖)。
**Search Peer 和 Indexer Cluster Peer 概念混淆** — Search Peer 是 search head 通过 `splunk add search-server` 添加的、用于 distributed search 的 indexer,每个 search head **独立**维护自己的 search peer 列表,是手动管理的。Indexer Cluster Peer(也叫 Peer Node)是加入了 indexer cluster 的 indexer,由 Cluster Master 统一管理 replication 和 search affinity,search head 不需要手动 add peer,会从 Cluster Master 自动获取 peer 列表(前提是 search head 配置了 `mode = searchhead` 加入 cluster)。考题最常出的场景:6 indexer + 3 search head 的集群里如何添加新 indexer — 答案是把新 indexer 配置 `mode = slave` 加入 cluster,**不需要**在每个 search head 上手动 add search-server。
**索引数据生命周期阶段路径搞错** — Hot 和 Warm bucket 都在 `homePath`(默认 $SPLUNK_DB/<index>/db),区别是 hot 正在写入、warm 已封闭只读;Cold bucket 在 `coldPath`(默认 $SPLUNK_DB/<index>/colddb);Frozen 数据默认**直接删除**(除非配置了 coldToFrozenDir 或 coldToFrozenScript);Thawed 数据放在 `thawedPath`(默认 $SPLUNK_DB/<index>/thaweddb),需要管理员手动从 frozen 解冻。考题陷阱:以为 frozen bucket 还在 splunk 里能搜索 — **错**,frozen 数据脱离了 splunk 索引,必须 thaw 才能搜索。
**License Master 违规处理规则不清楚** — Splunk Enterprise License 按 "每天 indexed volume" 计算,如果某天 indexed volume 超过 license 容量就算一次 violation。规则:**5 个 violation in 30 days** 触发 license disable(搜索功能被禁用,但数据继续 indexing)。Free License 的限制更狠:**3 个 violation in 30 days** 就触发。恢复方法:联系 Splunk Support 申请 reset license violation,或者升级 license。考题会问 "indexed volume 超了第一次会怎样" — 答案是收到 warning,**不影响搜索**,只有累计 5 次才会 disable。
**LDAP 和 SAML 认证集成顺序错误** — Splunk 的认证顺序是 Splunk Native → LDAP → SAML(按 authentication.conf 配置的 authSettings 顺序)。常见错误:以为可以同时启用 LDAP 和 SAML — 错,**Splunk 同一时间只能启用一种外部认证**(LDAP 或 SAML,二选一),但都可以叠加 Splunk Native。LDAP 配置的关键字段:bindDN(绑定用户)、groupBaseDN(组搜索路径)、userBaseDN(用户搜索路径)、groupMemberAttribute。SAML 配置需要导入 IdP metadata,关键字段是 entityId 和 SSO URL。考题里会给一个 LDAP 配错的场景让你找问题,最常见的错误是 groupBaseDN 写到了 OU=People 而不是 OU=Groups。