面向初学者和有经验者的 34 大 Splunk 面试问题和答案 [2022]
已发表: 2021-01-07Splunk 是 IT 运营领域的顶级负载管理和分析解决方案之一。 该工具是市场上需求量最大的顶级开发工具之一,Splunk 专家也是如此。 Splunk 的知识是成为 DevOps 工程师的重要要求之一。 自然,当谈到 IT 领域的 Splunk 工作时,竞争非常激烈且具有挑战性。 因此,如果您想在 Splunk 中找到一份利基工作,您必须准备好通过Splunk 面试。
不用担心,因为我们已经创建了一篇详细的帖子,其中包含Splunk 的热门面试问题,这不仅有助于提高您的 Splunk 知识,而且还可以收集您一直在寻找的工作!
学习者平均获得 58% 的加薪,最高可达 400%。
事不宜迟,让我们来破解前 33 个 Splunk 面试问题!
顶级 Splunk 面试问题和答案
1. 定义 Splunk
Splunk 是一个软件平台,允许用户分析机器生成的数据(来自硬件设备、网络、服务器、物联网设备等)。 Splunk 广泛用于搜索、可视化、监控和报告企业数据。 它通过准确的可视化提供对数据的实时洞察,处理和分析机器数据并将其转换为强大的运营智能。

Splunk 用于分析机器数据,因为:
- 它提供业务洞察力——Splunk 了解隐藏在数据中的模式,并将其转化为可用于做出明智业务决策的实时业务洞察力。
- 它提供了运营可见性——Splunk 利用机器数据获得对公司运营的端到端可见性,然后将其分解到整个基础架构中。
- 它有助于主动监控——Splunk 使用机器数据实时监控系统,以识别系统问题和漏洞(外部/内部违规和攻击)。
2. 命名 Splunk 使用的常用端口号。
Splunk 的常用端口号有:
- Splunk 网络端口:8000
- Splunk 管理端口:8089
- Splunk 网络端口:514
- Splunk 索引复制端口:8080
- Splunk 索引端口:9997
- KV商店:8191
3. 命名 Splunk 架构的组件。
Splunk 架构由以下组件组成:
- 搜索头 - 它提供用于搜索的 GUI
- 索引器——它索引机器数据
- 转发器——它将日志转发到索引器
部署服务器——它管理分布式环境中的 Splunk 组件并分发配置应用程序。
4. Splunk 仪表板有哪些不同类型?
共有三种不同类型的 Splunk 仪表板:
- 实时仪表板
- 基于动态表单的仪表板
- 计划报告的仪表板
5. 命名 Splunk 支持的搜索模式类型。
Splunk 支持三种类型的仪表板,即:
- 快速模式
- 智能模式
- 详细模式
6. 命名不同类型的 Splunk 转发器。
Splunk 转发器有两种类型:
- 通用转发器 (UF) – 它是安装在非 Splunk 系统上的轻量级 Splunk 代理,用于在本地收集数据。 UF 无法解析或索引数据。
- 重量级转发器 (HWF) – 它是具有高级功能的重量级 Splunk 代理,包括解析和索引功能。 它用于过滤数据。
7. 通过 Splunk Forwarders 将数据输入 Splunk 实例有什么好处?
如果您通过 Splunk 转发器将数据馈送到 Splunk 实例,您可以获得三个显着优势 - TCP 连接、带宽限制和加密 SSL 连接以将数据从转发器传输到索引器。 Splunk 的架构使得转发到索引器的数据在默认情况下是负载平衡的。
因此,即使一个 Indexer 由于某种原因出现故障,数据也可以通过另一个 Indexer 实例快速重新路由。 此外,Splunk 转发器在转发之前在本地缓存事件,从而创建数据的临时备份。
8. Splunk 中的“汇总索引”是什么?
在 Splunk 中,摘要索引是指默认的 Splunk 索引,用于存储计划搜索随时间推移产生的数据。 从本质上讲,如果用户未指定或指示另一个索引,Splunk Enterprise 将使用该索引。
汇总索引最显着的优势是它允许您保留分析和报告,即使您的数据已经老化。
9. Splunk DB Connect 的目的是什么?
Splunk DB Connect 是为 Splunk 设计的通用 SQL 数据库插件。 它使用户能够将数据库信息与 Splunk 查询和报告无缝集成。
10、Splunk Indexer的作用是什么?
顾名思义,Splunk Indexer 创建和管理索引。 它有两个核心功能——将原始数据索引到索引中,以及搜索和管理索引数据。
11. 列举几个重要的 Splunk 搜索命令。
Splunk 中一些重要的搜索命令包括:
- 抽象的
- 埃雷克斯
- 总计
- 累积
- 填充
- 打字机
- 改名
- 异常情况
另请阅读: Splunk v Elk:您应该选择哪一个?
12. Splunk 中有哪些最重要的配置文件?
Splunk 中最关键的配置文件是:
- 道具.conf
- 索引.conf
- 输入.conf
- 转换.conf
- 服务器配置文件
13. 在 Splunk 中 License Master 的重要性是什么? 如果无法访问 License Master,会发生什么?
在 Splunk 中,License Master 确保正确数量的数据被编入索引。 由于 Splunk 许可证基于在 24 小时窗口内到达平台的数据量,因此许可证管理员可确保您的 Splunk 环境保持在购买量的限制范围内。
如果无法访问 License Master,用户将无法搜索数据。 但是,这不会影响流入 Indexer 的数据——数据将继续流入 Splunk 部署,Indexer 将对数据进行索引。 但是搜索头的顶部会显示一条警告信息,提示用户已超出索引量。 在这种情况下,他们必须要么减少流入的数据量,要么必须购买 Splunk 许可证的额外容量。
14. 从 Splunk 角度解释“违反许可”。
每当您超出数据限制时,仪表板上都会显示“违反许可”错误。 此警告将保留 14 天。 对于商业 Splunk 许可证,用户可以在 30 天的窗口内收到五次警告,在此之前 Indexer 的搜索结果和报告将不会触发。 但是,对于免费版本,用户只能获得三个警告计数。

15、从日志中提取IP地址的一般表达式是什么?
虽然您可以通过多种方式从日志中提取 IP 地址,但它的常规表达方式是:
rex 字段=_raw “(?<ip_address>\d+\.\d+\.\d+\.\d+)”
要么
rex field=_raw “(?<ip_address>([0-9]{1,3}[\.]){3}[0-9]{1,3})”
16. 如何解决 Splunk 性能问题?
要对 Splunk 性能问题进行故障排除,请执行以下步骤:
- 检查 splunkd.log 以查找任何错误
- 检查服务器性能问题(CPU/内存使用情况、磁盘 i/o 等)
- 检查当前正在运行的已保存搜索的数量以及它们的系统资源消耗。
- 安装 SOS (Splunk on Splunk) 应用程序并查看仪表板是否显示任何警告或错误。
- 安装 Firebug(Firefox 扩展)并在您的系统中启用它。 之后,您必须使用 Firefox 登录 Splunk,打开 Firebug 的面板,然后转到“Net”面板以启用它)。 Net 面板显示 HTTP 请求和响应,以及每个请求和响应所花费的时间。 这将允许您查看哪些请求正在减慢 Splunk 并影响整体性能。
17. 什么是桶? 解释 Splunk 存储桶生命周期。
存储桶是在 Splunk 中存储索引数据的目录。 因此,它是一个记录特定时期事件的物理目录。 随着时间的推移,存储桶会经历几个转换阶段。 他们是:
- 热 - 热桶包含新索引的数据,因此它对写入和新增内容开放。 一个索引可以有一个或多个热桶。
- 暖 – 暖桶包含从热桶推出的数据。
- 冷 – 冷存储桶包含从热存储桶推出的数据。
- Frozen – 冻结的存储桶包含从冷存储桶推出的数据。 Splunk Indexer 默认删除冻结的数据。 但是,可以选择将其存档。 这里要记住的重要一点是,冻结的数据是不可搜索的。
18. 时区属性在 Splunk 中的用途是什么?
在 Splunk 中,时区对于从安全或欺诈的角度搜索事件至关重要。 Splunk 从您的浏览器设置中为您设置默认时区。 浏览器进一步从您正在使用的机器中获取当前时区。 因此,如果您使用错误的时区搜索任何事件,您将找不到与该搜索相关的任何内容。
当您搜索和关联来自不同和多个来源的数据时,时区变得非常重要。
19. 在 Splunk 中定义 Sourcetype。
在 Splunk 中,Sourcetype 是指用于标识传入事件的数据结构的默认字段。 Sourcetype 应在转发器级别设置以进行索引器提取,以帮助识别不同的数据格式。 它确定 Splunk Enterprise 在索引过程中如何格式化数据。 在这种情况下,您必须确保为您的数据分配正确的 Sourcetype。 为了使数据搜索更加容易,您应该为索引数据(事件数据)提供准确的时间戳和事件中断。
20. 解释 Stats 和 Eventstats 命令的区别。
在 Splunk 中,Stats 命令用于生成搜索结果中所有现有字段的汇总统计信息,并将其保存为新创建的字段中的值。 尽管 Eventstats 命令与 Stats 命令非常相似,但它将聚合结果内联添加到每个事件(如果只有聚合与该特定事件相关)。 因此,虽然这两个命令都计算请求的统计信息,但 Eventstats 命令将统计信息聚合到原始原始数据中。
21. 区分 Splunk App 和 Add-on。
Splunk 应用程序是指报告、仪表板、警报、字段提取和查找的完整集合。 但是,Splunk 附加组件仅包含内置配置——它们没有仪表板或报告。
22. 停止和启动Splunk服务的命令是什么?
启动 Splunk 服务的命令是:./splunk start
停止 Splunk 服务的命令是:./splunk stop
23. 如何清除 Splunk 搜索历史?
要清除 Splunk 搜索历史记录,您需要从 Splunk 服务器中删除以下文件:
$splunk_home/var/log/splunk/searches.log
24. Splunk 中的 Btool 是什么?
Splunk 中的 Btool 是一个命令行工具,用于解决配置文件问题。 它还有助于检查现有环境中用户的 Splunk Enterprise 安装正在使用哪些值。
25. Splunk Alert 需要什么? 指定您在设置 Splunk 警报时获得的选项类型。
Splunk 警报有助于通知用户系统中的任何错误情况。 例如,如果在 24 小时内登录尝试失败次数超过 3 次,用户可以设置向管理员发送电子邮件通知的警报。
您在设置警报时获得的不同选项包括:
- 您可以创建一个 webhook。 这将允许您向 HipChat 或 GitHub 写信——您可以向一组机器写一封电子邮件,其中包含您的主题、优先级和电子邮件正文。
- 您可以添加 CSV 或 pdf 格式的结果或内嵌在邮件正文中,以帮助收件人了解已触发警报的位置和条件以及已采取的措施。
- 您可以根据机器名称或 IP 地址等特定条件创建票证和限制警报。 可以从警报窗口控制这些警报。
26. 什么是 Fishbucket,它的索引是什么?
Fishbucket 是一个位于默认位置的索引目录,即:
/opt/splunk/var/lib/splunk
Fishbucket 包括索引文件的查找指针和 CRC。 要访问 Fishbucket,您可以使用 GUI 进行搜索:
索引=_thefishbucket
27. 如何知道 Splunk 何时完成对日志文件的索引?
您可以通过两种方式确定 Splunk 是否已完成对日志文件的索引:
- 通过实时监控 Splunk 指标日志中的数据:
index=”_internal” source=”*metrics.log” group=”per_sourcetype_thruput” series=”<your_sourcetype_here>” |
评估 MB=kb/1024 | 图表总和(MB)
- 通过监控按源类型划分的所有指标:
index=”_internal” source=”*metrics.log” group=”per_sourcetype_thruput” | 评估 MB=kb/1024 | 图表 sum(MB) avg(eps) over series
28. 什么是调度目录?
Dispatch Directory 包括一个目录,用于存储正在运行或已完成的各个搜索。 Dispatch Directory 的配置如下:
$SPLUNK_HOME/var/run/splunk/dispatch
假设,有一个名为 1434308943.358 的目录。 此目录将包含所有搜索结果的 CSV 文件、包含有关搜索执行的详细信息的 search.log 以及其他相关信息。 通过使用默认配置,您可以在搜索完成后 10 分钟内删除该目录。 如果您保存搜索结果,它们将在 7 天后被删除。
29. 如何将 Windows 机器的文件夹访问日志添加到 Splunk?
要将 Windows 计算机中的文件夹访问日志添加到 Splunk,您必须按照下列步骤操作:
- 转到组策略并在文件夹所在的 Windows 计算机上启用对象访问审核。
- 现在,您必须在要监控访问日志的特定文件夹上启用审核。
- 在 Windows 机器上安装 Splunk Universal Forwarder。
- 配置通用转发器以将安全日志发送到 Splunk 索引器。
30、Splunk如何避免日志的重复索引?
Splunk 索引器跟踪目录中的所有索引事件 - Fishbuckets 目录包含当前索引的所有文件的查找指针和 CRC。 因此,如果有任何已读取的查找指针或 CRC,splunkd 会指出它。
31、Splunk中的配置文件优先级是什么?
Splunk中配置文件的优先级如下:
- 系统本地目录(最高优先级)
- 应用本地目录
- 应用默认目录
- 系统默认目录(最低优先级)
32. 定义“搜索因子”和“复制因子”。
搜索因子 (SF) 和复制因子 (RF) 都是 Splunk 中的聚类术语。 SF(默认值为 2)决定了 Indexer 集群维护的可搜索数据副本的数量,而 RF 表示 Indexer 集群维护的数据副本的数量。 要记住的重要一点是,SF 必须始终小于或等于复制因子。 此外,Search Head 集群只有一个 Search Factor,而 Indexer 集群同时具有 SF 和 RF。
33、为什么要用区分在 Splunk 中,当您想要从外部文件(例如,基于 Python 的脚本或 CSV 文件)接收特定字段以获取事件值时,会使用查找命令。 它通过引用与事件数据中的字段匹配的外部 CSV 文件中的字段来帮助缩小搜索结果。
当您想要输入时使用 inputlookup 命令。 例如,该命令可以将产品价格或产品名称作为输入,然后将其与产品 ID 等内部字段匹配。 相反, outputlookup 命令用于从现有字段列表中生成输出。

34. 区分 Splunk SDK 和 Splunk Framework。
Splunk SDK 主要旨在帮助用户从头开始开发应用程序。 它们不需要 Splunk Web 或 Splunk 应用程序框架中的任何其他组件即可运行。 Splunk SDK 单独从 Splunk 获得许可。 与此相反,Splunk 应用程序框架位于 Splunk Web 服务器中。 它允许用户自定义产品随附的 Splunk Web UI。 虽然它允许您开发 Splunk 应用程序,但您必须使用 Splunk Web 服务器来完成。
从世界顶级大学在线学习软件开发课程。 获得行政 PG 课程、高级证书课程或硕士课程,以加快您的职业生涯。
结论
我们希望这些Splunk 面试问题能帮助您进入流程并为您的 Splunk 面试做准备!
如果您想了解更多关于 splunk 和其他 DevOps 工具的信息,请查看 IIIT-B 和 upGrad 的全栈软件开发计划中的执行 PG 计划。
