Splunk智能运维实战(txt+pdf+epub+mobi电子书下载)


发布时间:2020-05-27 18:15:00

点击下载

作者:(美)戴昆(Diakun,J.),(美)约翰逊(Johnson,P. R.),(美)默克(Mock,D.)

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Splunk智能运维实战

Splunk智能运维实战试读:

前言

在这个以科技为中心的世界里,各式各样的机器产生了大量的数据。Splunk因此推出了业内领先的大数据智能运维平台——Splunk Enterprise。这个强大的平台能让用户将机器数据转化为可操作的、非常重要的运维智能。

本书融合了各种实用方法,旨在提供指导和实用知识,以便使读者掌握Splunk Enterprise 6的各种功能,从数据中提取出强大而重要的运维智能。

本书通过简单易学、循序渐进的操作技巧,教授读者如何有效地收集、分析并创建所在环境的运营数据报表。这些技巧将展示如何加快智能报表的交付,并教授读者通过仪表盘和应用Splunk Enterprise中的各种可视化手段来恰当地展示数据。读完本书,读者将能建立一个强大的智能运维应用程序,并学会使用Splunk Enterprise平台的多项关键特性。

当读者向他人介绍Splunk Enterprise平台和自己新掌握的获取智能运维的能力时,可将书中简单易学的诀窍用作教学工具。本书的主要内容

第1章介绍将数据导入Splunk的多种方法,包括从本地文件和目录收集数据,通过TCP/UDP端口输入,直接从通用转发器导入或使用脚本化和模块化输入。该章还会介绍一个数据集,在之后的章节都会用到它。我们还将学习如何生成样本数据,以便与本书的每项技巧配套使用。

第2章介绍了本书的第一组技巧。该章所介绍的信息和技巧将利用第1章获取的数据,教授使用Splunk的SPL(搜索处理语言)来搜索事件数据;应用字段抽取;按字段值将同类事件分组;使用table、top、chart和stats命令来构建基本的报表。

第3章指导读者在前一章创建的报表基础上进行可视化构建。该章将教授如何通过Splunk提供的强大的可视化手段将数据和报表生动地呈现出来。该章将要介绍的可视化手段包括单值、图表(条形图、饼图、折线图和面积图)、散点图和计量器。

第4章在前一章的可视化图表的基础上,讲授仪表盘的概念。该章提供的信息和技巧将简要介绍仪表盘的用途,并教授读者如何恰当地使用仪表盘,如何使用仪表板编辑器来建立仪表盘,如何建立表单来搜索事件数据等。

第5章让读者更深入地研究数据,介绍事务、次级搜索、并发、关联和更高级的搜索命令。通过该章提供的信息和技巧,读者将学会从不同的来源聚合信息,并了解如何在不同的事件数据之间建立关联。

第6章将介绍查找和工作流程操作的概念,为的是增加分析数据。该章介绍的技巧可帮助读者应用这个核心功能来进一步加深对所分析数据的理解。

第7章解释为什么预定警报或实时警报是完整的智能运维和运营认知的关键。该章将介绍主动警报的概念和益处,并说明何时应用这些警报最好。该章提供的技巧将指导读者在前面章节所学知识的基础上创建警报。

第8章介绍汇总索引的概念,为的是加快报表速度并节约获取商业情报的时间。该章会简单介绍一些将汇总索引用于加快报表速度或长时间保存聚集统计数据的常见情况。

第9章介绍Splunk Enterprise 6推出的两个最新、最强大的特性:数据模型和透视工具。该章提供的技巧将指导读者学习建造数据模型并使用透视工具迅速设计基于已构建模型的智能报表。

第10章是本书的最后一章,介绍Splunk的4个非常强大的特性。这些特性允许读者使用Splunk来创造丰富和强大的交互体验。该章给出的技巧让读者能超越Splunk Enterprise的核心功能并制作自己的带有强大D3可视化的智能运维应用程序。此外,它也将讲述查询Splunk的REST API的技巧,并给出一个基础的Python应用来使用Splunk的SDK执行搜索。阅读前的准备工作

要学习本书提供的技巧,读者需要安装Splunk Enterprise 6并拥有本书附带的样本数据。这些技巧适用于所有Splunk Enterprise环境,但为了得到最佳结果,我们建议大家使用本书提供的样本。

Splunk Enterprise 6可以免费下载并在主流平台上运行,下载地址是http://www.splunk.com/download。

本书提供的样本会附带Splunk事件生成器工具,这样当你学习这些技巧时,事件数据就能刷新,事件会重放。本书的读者对象

本书面向所有用户。不管是初学者还是高级人员,任何想将Splunk Enterprise平台用作智能运维工具的人都可以阅读本书。书中包括的技巧对IT、安全、产品、营销或任何其他领域的人都有帮助。

尽管本书和书中的技巧任何人都可以学习,但它介绍的概念和特性会越来越复杂,对初学者来说可能较难理解。如果你需要更多地了解某个特性,Splunk制作了大量文档来介绍Splunk Enterprise的所有特性,可以访问http://docs.splunk.com/Documentation/Splunk来查找。

书中有些部分会用到正则表达式并介绍一些利用Python和XML语言的技巧。读者若具有这些方面的经验会更有益处,但这些知识不是必需的。下载示例代码

你可以登录http://www.hzbook.com下载本书示例代码。第1章游戏时间——导入数据1.1 简介

加快运维智能的机器数据有很多不同的形式,来源也各不相同。Splunk可从多种来源收集并索引数据,其中包括Web服务器或商业应用程序创建的日志文件,网络设备生成的系统日志数据,及自定义开发脚本输出的数据。即便数据一开始看上去很复杂,我们也可以借助Splunk轻松地实时收集、索引、转化和呈现数据。

本章将学习一些基本的技巧,掌握如何将所需的数据导入Splunk,介绍如何使用样本数据集来构建自己的Splunk智能运维应用程序。该数据集是由一个虚拟的三层式电子商务Web应用程序生成的,包含Web服务器日志、应用程序日志和数据库日志。

Splunk Enterprise可以索引任何类型的数据,不过,它最适合于索引时间序列数据(带时间戳的数据)。Splunk Enterprise索引数据是按时间戳和/或事件大小将数据分解为事件并编制索引。索引是Splunk制作的数据存储区,存取速度很快,可以检索并根据分布式服务器环境进行扩展,常被称为索引器。这也是把导入数据到Splunk的过程称为索引的原因。

所有经Splunk索引的数据都会被分配一个源类型。数据源类型有助于标识事件的数据格式类型以及事件的来源。Splunk有多种预置的源类型,但也可以自己指定。示例的源类型包括:access_combined、cisco_syslog和linux_secure。当索引器将数据索引至Splunk时,源类型就会添加到数据上。用户执行字段提取或在各种搜索中过滤搜索数据时,数据源类型是一项关键字段。

Splunk社区能帮助用户更轻松地在Splunk中导入数据。Splunk的扩展性让我们有机会开发输入、命令和应用程序,这些都可以轻松与他人分享。如果我们想索引来自特定系统或应用程序的数据,可能有人已经开发并发布了相关的配置和工具,我们可以轻松地将其用于自己的Splunk Enterprise部署上。

Splunk Enterprise致力于让数据收集更轻松,不久我们就能为自己或他人向Splunk中导入大量数据——至少会用完Splunk License许可的索引量。1.2 索引文件和目录

从文件和目录输入数据是向Splunk导入数据最常用的方法。这种类型的输入主要是为了索引日志文件。几乎每个应用程序或系统都会产生日志文件,当中包括了我们想搜索和制作报表的很多数据。

Splunk能够持续监控写入现有文件的新数据或添加到目录中的新文件,并且能够实时索引这些数据。根据生成日志文件的应用类型不同,可以将Splunk设定为监控单一文件(基于其位置)或扫描整个目录并监控其中的所有文件。当生成的日志文件包含唯一的文件名(比如名字中含有时间戳)时,后一种配置更常使用。

本节将学习如何配置Splunk来持续监控并索引Splunk服务器上的一个日志文件,这个日志文件的内容会不断增加。本节将专门展示如何监控并索引Linux系统上的messages日志文件(/var/log/messages)。然而,同样的方法也适用于Windows系统上的日志文件,本书也提供了一个示例文件。但请不要用这种方法索引Windows事件日志,因为Splunk有专门的Windows事件输入法。做好准备

要进行本节的操作,需运行Splunk Enterprise服务器并且有权限访问读取Linux上的/var/log/messages文件。没有其他先决条件。如果使用的不是Linux系统,并且/或者没有权限访问Splunk服务器上的/var/log/messages,要使用本书提供的cp01_messages.log文件并将其加载到Splunk服务器上一个可访问的目录中。如何操作

按下列步骤监控并索引文件内容。

1.登录Splunk服务器。

2.从右上角的主启动器,单击“添加数据”按钮。

3.在“选择数据类型”列表中,单击“文件或文件目录”。

4.在“索引此Splunk服务器上的所有文件”选项中单击“下一步”按钮。

5.选择“索引前预览数据”并输入日志文件路径(/var/log/messages或cp01_messages.log文件的位置)并单击“继续”按钮。

6.选择“开始一个新的源类型”并单击“继续”按钮。

7.假如你使用本书提供的文件或本地的/var/log/messages文件,数据预览将展示正确分行后的事件及时间戳标志。单击“继续”按钮。

8.会弹出“预览设置”框。在源类型输入linux_messages,单击“保存源类型”按钮。

9.会出现“源类型已保存”的提示框,选择“创建输入”按钮。

10.在“源”部分,选择“从Splunk本次访问的文件或目录中持续索引数据”,并填写数据路径。如果只是想一次性加载某个文件,可选择“上传并索引文件”。这个选项适合于索引一组数据到Splunk,既可用来回填一些缺失或不完整的数据,也可仅仅为了利用其搜索和报表工具。

11.暂且忽略其他设定,直接单击“保存”。然后,在下一个界面中,点击“开始搜索”。在搜索栏,输入下列搜索,时间范围设定为“全部时间”:在本节中,可直接使用常见的系统日志源类型,不过,创建新的源类型往往是更好的选择。根据数据源不同,系统日志格式可能差异很大。因为像提取字段这样的知识对象是建立在源类型之上的,为所有对象使用单一的系统日志源类型可能会较难搜索到所需的数据。工作原理

当添加一个新的文件或目录来导入数据时,也就是在后台向inputs.conf文件添加新的配置节。Splunk服务器可包含一个或多个inputs.conf文件,它们位于$SPLUNK_HOME/etc/system/local或Splunk应用程序的local目录。

Splunk使用的输入类型是监控器,并被设定为指向某个文件或目录。如果设置对一个目录进行监控,目录中的所有文件都会被监控。当Splunk监控文件时,它会首先从头索引所有能读取的数据。完成后,Splunk将保留上次读取数据的位置记录,如有任何新的数据写入文件,它将读取这个数据并继续记录。这个过程几乎和在UNIX操作系统下使用tail命令相同。如需要监控一个目录,Splunk也会提供很多附加的配置选项,比如将不需要Splunk索引的文件列入黑名单。若想获取Splunk配置文件的更多信息,请访问http://docs.splunk.com/Documentation/Splunk/latest/Admin/Aboutconfigurationfiles。更多内容

除了可按照本节的方法通过Splunk的Web界面添加输入信息来监控文件和目录,还有其他方法来快速地添加多种输入信息。这些方法允许我们自定义Splunk提供的多种配置选项。

通过CLI(命令行界面)添加文件或目录数据输入

除了通过GUI(图形用户界面)之外,还可通过Splunk CLI(command-line interface)来添加文件或目录输入。进入$SPLUNK_HOME/bin目录并执行下列命令(将需要监控的文件或目录替换成你自己的)。

UNIX系统:

Windows系统:

许多参数可以随文件位置一起被传送到监控器。参考Splunk技术文档来了解更多CLI数据输入的用法(http://docs.splunk.com/Documentation/Splunk/latest/Data/MonitorfilesanddirectoriesusingtheCLI)。

通过inputs.conf添加文件或目录输入

另一种添加文件和目录输入的常用方法是手动将其直接添加至inputs.conf配置文件中。该方法常用于大环境中或配置Splunk转发器来监控终端上的文件或目录。

编辑$SPLUNK_HOME/etc/system/local/inputs.conf并添加输入。添加完输入后,需要重启Splunk来识别更改。

UNIX系统:

Windows系统:如需进行多个输入,编辑inputs.conf通常可以更快地添加新文件和目录来监控。编辑inputs.conf时,要确保使用正确的语法,并重启Splunk来使修改生效。此外,在inputs.conf文件中设定源类型是指定源类型的最佳做法。

通过Splunk CLI一次性索引数据文件

除了从Splunk GUI中选择“上传并索引文件”进行操作之外,也可使用很多CLI功能来执行一次性批量加载数据。

使用oneshot命令告知Splunk文件位置及所用参数,比如源类型:

另一种方法是将希望索引的文件放入Splunk spool目录,$SPLUNK_HOME/var/spool/splunk,然后使用spool命令添加文件:如使用Windows系统,应省略Splunk命令前的“./”。

索引Windows事件日志

Splunk针对一些源类型有专门的inputs.conf配置方式,其中包括监控Windows事件日志。通常来说,把Splunk通用转发器(UF)安装在Windows服务器上,配置后可转发Windows事件至Splunk索引器。对inputs.conf进行如下配置来实时监控Windows安全日志、应用程序日志和系统事件日志:

除非另外指定索引,否则事件数据默认会进入主索引。另参见

·1.3节

·1.4节

·1.5节1.3 从网络端口获取数据

不是每台机器都能生成日志文件。通过网络端口和协议传送数据也很常见。例如通过系统日志来发送日志仍是获取网络设备(防火墙、路由器和交换机)数据的主要手段。

不仅网络设备可以通过网络端口向Splunk发送数据。应用程序和脚本可以使用套接字(socket)连接到Splunk所监听的网络端口。这是很有用的备选工具,因为有时候我们想向Splunk导入数据,但没法对文件进行写入操作。

本节将展示如何配置Splunk来接收UDP网络端口上的系统日志数据,该方法同时也适用于TCP端口配置。做好准备

在本节开始前,我们仅需运行Splunk Enterprise服务器。如何操作

按下列步骤配置Splunk,使其接收网络UDP数据。

1.登录Splunk服务器。

2.从右上角的主启动器,单击“添加数据”。

3.在“或者选择一个数据源”列表中,单击“来自一个UDP端口”链接。

4.出现源界面,在“UDP port”字段中输入514。在UNIX/Linux系统中,Splunk必须以root身份运行来访问特权端口514。另一种方法是指定更高的端口,如1514端口,或将数据从514端口传送至另一个使用iptables路由规则的端口。

5.进入“源类型”界面,在“设定源类型”下拉菜单中选择“来自列表”,然后在“从列表中选择源类型”下拉菜单中选择“系统日志”。

6.点击“保存”。在下一个界面中,点击“开始搜索”。Splunk现在已经配置好,可以监听UDP端口514了。现在任何发送至该端口的数据都会被指定系统日志源类型。如需搜索系统日志源类型,可执行如下命令:

除非碰巧正在向Splunk服务器IP发送UPD端口514上的数据,否则还无法看到任何数据。工作原理

当添加新的网络端口输入时,也就是在后台向inputs.conf文件添加新的配置节。Splunk服务器可包含一个或多个inputs.conf文件,它们位于$SPLUNK_HOME/etc/system/local,或Splunk应用程序的local目录。

要收集网络端口上的数据,Splunk会创建套接字来监听特定TCP或UDP端口,并索引从该端口接收的任何数据。比如在本节,设置Splunk监听UDP 514端口的数据。如果该端口上接收到数据,Splunk会索引数据并分配系统日志源类型给它。

Splunk也提供了许多用于网络输入的配置选项,例如如何解析主机值以用于所收集的数据。若想获取Splunk配置文件的更多信息,请访问http://docs.splunk.com/Documentation/Splunk/latest/Admin/Aboutconfigurationfiles。更多内容

如本节所述,可以通过Splunk的Web界面添加输入来从网络端口接收数据,此外还有其他方法来快速地添加多种输入,这些输入可以让我们自定义Splunk提供的许多配置选项。

通过CLI添加网络输入

也可通过Splunk CLI添加文件或目录输入。找到$SPLUNK_HOME/bin目录并执行下列命令(只需替换想使用的协议、端口和源类型):

UNIX系统:

Windows系统:

许多参数可随端口传递。参考Splunk技术文档来了解更多CLI数据输入的用法(http://docs.splunk.com/Documentation/Splunk/latest/Data/MonitorfilesanddirectoriesusingtheCLI)。

通过inputs.conf添加网络输入

可手动添加网络输入至inputs.conf配置文件。编辑$SPLUNK_HOME/etc/system/local/inputs.conf并添加输入。修改文件后需重启Splunk。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载