Splunk 是机器数据的引擎。使用 Splunk 可收集、索引和利用所有应用程序、服务器和设备(物理、虚拟和云中)生成的快速移动型计算机数据 。从一个位置搜索并分析所有实时和历史数据。 使用 Splunking 处理计算机数据,可让您在几分钟内(而不是几个小时或几天)解决问题和调查安全事件。监视您的端对端基础结构,避免服务性能降低或中断。以较低成本满足合规性要求。关联并分析跨越多个系统的复杂事件。获取新层次的运营可见性以及 IT 和业务智能。
-
外文名
-
splunk
-
类 别
-
机器数据的引擎
-
性 质
-
快速移动型计算机数据
-
功 能
-
日志聚合功能、搜索功能等
目录
- 1功能
- ▪主机与源
- ▪搜索
- ▪抽取
- ▪Piping
- ▪可视化功能
- ▪邮件提醒
- 2特性
- 3产品导览
- 4版本比较
- 5独特优势
功能
编辑
Splunk是一个托管的日志文件管理工具,它的主要功能包括:
· 日志聚合功能
· 搜索功能
· 提取意义
· 对结果进行分组,联合,拆分和格式化
· 可视化功能
· 电子邮件提醒功能
主机与源
首先注意的是,日志文件分散在在主机和随机的源中。这表示你可以从一台机器或一组机器中快速搜索出所有的日志。
搜索
搜索功能设定的非常简单,只需输入你想要搜索的字符串,或者可以使用以下语句来进行高级搜索:
· sourcetype="hsl-prod-fe" "Chase Seibert"
· sourcetype="hsl-prod-fe" e186f85c914261eec9e54d3767fdd3cc BEGIN
· sourcetype="hsl-prod-crawl" |regex _raw="fanmgmt\.(analytics|metrics)"
· sourcetype="hsl-prod-crawl" facebook OR twitter NOT linkedin
· sourcetype="hsl-prod-crawl" facebook OR linkedin OR twitter earliest=-24h
抽取
你可以使用内置的GUI来定义一个正则表达式,从每一行中抽取变量,可以对其进行过滤,分组和聚合操作。
如果变更日志格式,你可以通过将键值对变成key=value格式,不用定义正则表达式。以下为示例:
def key_value(prefix, log_level='info', **kwargs):
log_message = '%s: %s' % (
prefix, ' '.join(['%s="%s"' % (k, v) for k, v in kwargs.items()]))
getattr(logging, log_level)(log_message.strip())
Piping
同 Unix类似,你可以将多个命令组合起来生成更复杂的查询。比如sourcetype="hsl-prod-crawl" succeeded |stats count perc95(task_seconds) by python_module |sort count desc |head 10.
其他命令包括:
· | uniq
· | script python myscript myarg1 myarg2
· | bucket _time span=5m
· | eval name=coalesce(firstName, lastName)
· | rare, | anomalous
· | spath output=commit_author path=commits.author.name # extract xml/json values
其他可以调用的函数包括:
· avg()
· | eval description=case(error == 404, "Not found", error == 200, "OK")
· floor(), ceiling()
· len()
· isbool(), isint(), etc
· upper(), lower()
· trim(), ltrim(), rtrim()
· md5()
· now()
· random()
· replace()
· split()
· substr()
可视化功能
通过GUI builder点击就可以创建可视化图表,还可以通过命令行和函数来创建。包括饼图,柱状图,行列图以及计量图等其他复杂的图表。
邮件提醒
可以对Splunk进行设定,根据不同的事件来触发邮件提醒。更多关于Splunk的使用方法,可以参考官方文档以及论坛。
[1]
特性
编辑
1、多平台支持
Splunk是一个可以在所有主流操作系统上运行的独立软件包 - 只需选择您的平台,然后下载并安装即可。您需要处理和运行的是用户使用的 Web 界面,以及用于索引计算机数据的引擎。
目前Splunk支持的平台有Windows XP, Vista, 7, and 8 (32-bit/64-bit)/Windows Server 2003, 2003 R2, 2008, and 2008 R2 (32-bit/64-bit)、2.6+ kernel Linux distributions(32-bit/64-bit)、Solaris(8,9,10,11)、OSX(10.5,10.6,10.7)、FreeBSD 7,8(32-bit/64-bit)、AIX (5.3,6.1,7.1) 、HP-UX(11i v2,11i v3).
Splunk 可以从任何源实时索引任何类型的计算机数据。可以在 Splunk 中指向您的服务器或网络设备的系统日志、设置 WMI 轮询、监视实时日志文件,并能够监视您的文件系统或 Windows 注册表中的更改,或安排脚本获取系统指标。Splunk 可以索引您的所有机器数据,而无需购买、编写或维护任何特定的分析器或适配器。原始数据和丰富索引均存储在高效、已压缩的、基于文件系统的数据存储中,并提供可选数据签名和数据的完整性审核。
在无法通过网络提供所需数据,或安装了 Splunk 的服务器上看不见所需数据的情况下,可以部署 Splunk Forwarder。Splunk forwarder 为成千上万的端点提供安全、分布式实时全局数据收集。它们可以监视本地应用程序日志文件、捕获有关时间表的状态命令输出、获取来自虚拟或非虚拟来源的性能指标,或监控配置、权限和属性变化的文件系统。它们都是属于可以快速部署的轻量级服务器,而且不会产生任何额外费用。
4、关联复杂事件
借助 Splunk,您可以跨许多数据来源关联整个工作环境中的复杂事件。Splunk 支持五种关联类型。基于时间的关联,用于根据时间、接近性或距离来确定关系。基于交易的关联,用于跟踪构成单次交易的一系列相关事件,进而评估时间长度、状态或进行其它分析。子搜索,用于获取其中一个搜索的结果并在其它搜索中使用这些结果。查找,用于关联 Splunk 以外的外部数据来源。连接,用于支持类似 SQL 的内部和外部连接。关联 Splunk 中的事件有助于从机器数据中获得更丰富的分析和洞察力,为 IT 和业务提供更好的可见性和智能。
使用 Splunk ,每天可收集和索引成千上万太字节的数据。其可扩展性体系结构基于 MapReduce,因此,随着日常数据量和数据来源不断增长,您只需添加更多商品服务器即可扩展效能。自动负载平衡可以优化工作负载和响应时间,并提供内置故障转移机制。开箱即用的报告和分析功能可避免部署第三方报告工具的需要。还可以配置 Splunk 使用 SAN 或其它存储设备,以满足长期存储需求。
Splunk 分布式体系结构可让您在一个数据中心跨多个部署进行搜索,或在您的所有数据中心进行全局搜索。借助基于角色的访问,您可以控制指定用户的搜索将要跨越的范围。区域用户可以查看区域系统的数据,而企业范围内用户则可以查看所有数据中心的数据。Splunk 愿景是让每一位已授权员工都能够看到他们需要的计算机数据;并将数据用于调查、报告和仪表板或分析,以便不断提高 IT 运营并获得有价值的业务洞察力。花几分钟时间安全连接您的 Splunk 安装,能让您设计一个可管理的企业数据结构。
7、提供角色型的安全性
从各个方面来说,Splunk 均可谓是一种强大的安全模型。各
项 Splunk 交易均会得到验证,其中包括通过 Web 用户界面和命令行接口执行的用户活动,以及通过 Splunk API 执行的系统活动。使用一整套按用户类型来限制功能的记录控制点,您可以自己为 Splunk 用户定义角色。这些精细的访问控制可以限制搜索、警报、报告、仪表板以及不同 Splunk 角色可以查看的视图。Splunk 还可以集成兼容 LDAP 的外部目录服务器和 Active Directory 服务器,以执行企业范围内的安全策略。此外,还提供单一登录集成,以启动对用户凭据的传递身份验证。由于进行故障排除、调查安全事件和证明合规所需的全部数据都保存在 Splunk 中,您可以严格限制访问生产服务器。
产品导览
编辑
Splunk 实时收集并索引所有机器数据(物理、虚拟和云中)。它允许您访问、使用数据,并发掘数据价值。它能够对各项事宜进行索引,以便深入了解、商讨和解决问题。它可以在您与您的小组共享有用的搜索时,进行智能辅助,并添加您的 IT 环境所特有的知识。它能创建临时报告,以确认趋势或证明合规控制;构建实时仪表板,以便监视安全事件和攻击、应用程序 SLA 和其他关键性能指标;实时分析用户交易、客户行为、机器行为、安全威胁、欺诈活动等。
1、索引任何数据
2、搜索和调查
3、与搜索结果互动
4、新增知识
5、关联复杂事件
6、监视和警报
7、报告和分析
8、自定义仪表板和视图
9、构建和部署 Splunk 应用程序
版本比较
编辑
功能比较表
Splunk Free 专供个人使用。
Splunk Enterprise 添加了支持多用户和分布式部署的功能,并包括警报、基于角色的安全、单一登录、预设的 PDF 交付以及对无限数据量的支持。
功能
|
说明
|
Splunk Free
|
Splunk Enterprise
|
索引量
|
每天的索引量
|
500MB/天
|
无限(基于许可证)
|
全局索引
|
索引整个 IT 领域的任何数据 - 任何来源、格式或位置
|
支持
|
支持
|
搜索
|
搜索实时流式处理数据和历史数据
|
支持
|
支持
|
报告
|
制定有关实时流式处理 IT 数据或历史 IT 数据的专项报告
|
支持
|
支持
|
知识图
|
新增有关事件、字段、交易、模式和统计资料的知识至您的 IT 数据
|
支持
|
支持
|
仪表板
|
创建集成多个图表、报告和表格的实时仪表板
|
支持
|
支持
|
监视和警报
|
预设针对不断监视和警报简单或复杂事件的搜索
|
|
支持
|
PDF 报表交付
|
预设任何 Splunk 仪表板、视图、搜索或报告的 PDF 报表交付
|
|
支持
|
分布式搜索
|
搜索整个分布式 Splunk 部署,支持负载平衡和故障转移
|
|
支持
|
数据接收
|
接收来自其它 Splunk 实例的数据
|
支持
|
支持
|
数据转发
|
将可靠数据实时转发至其它 Splunk 实例
|
支持
|
支持
|
访问控制
|
提供用户验证和基于角色的访问控制
|
|
支持
|
单一登录
|
集成到企业单一登录解决方案
|
|
支持
|
社区应用程序
|
运行社区网站 Splunkbase 提供的应用程序和插件
|
支持
|
支持
|
高级应用程序
|
支持由 Splunk 和合作伙伴分配的高级应用程序
|
|
支持
|
开发人员 API
|
记录的 API 可将 Splunk 集成到任何业务或开发工作流程
|
支持
|
支持
|
标准支持
|
访问完整的产品文档、论坛和 IRC,以便对基本技术问题作出回答
|
支持
|
支持
|
企业级支持服务
|
通过电话直接访问我们能够在线管理案例(也提供定制的支持水平)的客户支持团队
|
|
支持
|
独特优势
编辑
1、无风险快速回报
作为一种免费下载或低成本的企业许可证,Splunk 部署简单并可以从单一服务器部署扩展至全局大规模运营,以及提供快速的投资回报。在您的笔记本电脑或任何商品服务器上免费下载和安装 Splunk 只需五分钟,然后可以输入任何机器数据并启动 Splunking。Splunk 通常在紧急时刻首次部署。正在发生的重大服务中断或安全事件会使人伤透脑筋,但您可以使用 Splunk 便能在几分钟内完成调查,而不是几个小时或几天。
2、受到用户喜爱
大多数用户很快就会成为 Splunk 的忠实用户,因为我们的开发人员专注于开发他们自己想要使用的软件。所有相关人员 - 系统管理员、安全分析师、网络工程师、开发人员、服务台和支持人员 - 均可以即刻部署 Splunk 并能够更好、更快和更轻松地完成他们很难完成的部分工作。Splunk Web 界面非常直观且快速,并支持快速、临时深入分析搜索结果。
3、处理您所有的机器数据
与其它需要您花费几天或几周时间来开发或配置特定分析器和自定义连接器的系统管理、SIEM 和日志管理产品不同,Splunk 可以连接至任何数据来源。即时未提供连接器,您也无需依赖某个厂商来生产特定连接器。Splunk 能够实时持续索引您的所有机器数据 - 日志、配置数据、变化事件、诊断命令输出、API 和消息队列中的数据,甚至自定义应用程序中的日志。现在,您可以轻松处理对解决问题、调查安全事件、报告合法性和其它有价值的任务至关重要的企业数据。如果机器可以生成数据,则 Splunk 就可以对其进行索引、搜索,并用其生成警报和报告。
4、适应动态环境
在当今动态和可视化的数据中心,唯一不变的常量就是变化。传统的 IT 管理和安全技术假设您知道前方的所有可能失败和风险,且您的数据格式将不会发生变化,但这种做法已经不再有效。Splunk 能够实时持续索引您的所有计算机数据,不会依赖脆性架构来限制灵活性,当数据格式发生变化时也不会中断。您需要对数据进行的任何解释,例如提取共同的字段或标记主机的子集,都可以在搜索时轻松完成,无需格式转换。这就是您从全球 Splunk 用户了解到的重要事情之一,即 Splunk 拥有卓越的灵活性的原因。
5、适用于所有类型的用户
Splunk 可以轻松创建自定义仪表板和报告,使您能够清楚地处理大量数据。将预定义的搜索、图表和报告合并成一个强大的仪表板,或使用其它基于网络的应用程序创建聚合应用程序,例如 Tivoli、SAP、Oracle 和安全控制台等。Splunk 有助于网络工程师、系统管理员、安全和合法性分析师、开发人员、支持人员、服务台工作人员,甚至业务用户及时了解在 IT 基础结构中发生的任何事件。
6、满足整个 IT 行业的策略需求
Splunk 发明了一种用来管理机器数据和释放其巨大价值的新方法。将 Splunk 用作引擎来搜索和分析计算机数据,不但能改变用户完成其工作的方式,而且还能提升 IT 在组织中的作用。这样能使用户大大提高生产率,使企业增加更多正常运行时间并减少收入中断,从而使客户更加满意。许多客户开始使用 Splunk 来解决具体问题领域,使他们的初始使用案例快速成为内部成功案例,然后将 Splunk 部署到其它 IT 关键领域(如应用程序管理、安全与合规性、基础结构与运营管理),并获取新的商业智能。
7、从笔记本电脑扩展至数据中心
您必须以更低的成本、更快的速度,完成更多工作。Splunk 能让您在一台商业服务器上,在几秒内便可搜索数十亿个事件。它的并行架构意味着,其搜索和索引效能将跨整个 CPU 核心和商品服务器线性攀升。Splunk 使用它自己的高效数据存储,这样不会受到传统数据库的吞吐量限制或僵化架构的限制,从而使它成为搜索企业数据,进行警报和报告的最快和最灵活的方法。
-
参考资料
-