技术标签: 1024程序员节
在单实例部署中,Splunk Enterprise 的一个实例处理数据的所有方面,从输入到索引再到搜索。单实例部署可用于测试和评估目的,并能满足部门级规模的环境的需求。
但是,为了支持更大的环境,其中许多计算机都会生产数据,并且许多用户都需要搜索数据,可以通过在多台计算机上分布式部署 Splunk Enterprise 实例。进行分布式部署时,要配置各个实例以便每个实例执行专门的任务。例如,一个或多个实例可能对数据进行索引,而另一个实例则管理跨数据的搜索。
要扩展的系统,可以将此功能拆分到 Splunk Enterprise 的多个专用实例中。这些实例的数量可以从几个到数千个不等,具体取决于正在处理的数据量以及环境中的其他变量。
例如,可以创建一个部署,其中许多实例只负责摄取数据,其他几个实例负责索引数据,还有一个实例负责管理搜索。
也可以合并这些层级或将处理配置为其他方式,但大多数分布式部署都是采用这三个层级
Splunk Enterprise 的专用实例统称为组件。除了一个例外,组件是完整的 Splunk Enterprise 实例,这些实例已配置为专注于一个或多个特定功能,例如索引或搜索。例外是通用转发器,它是Splunk Enterprise的轻量级版本,具有单独的可执行文件。
Splunk Enterprise 组件有几种类型。它们分为两大类:
处理组件主要有三种类型:
转发器摄取数据。有多种类型的转发器,但对于大多数用途而言,通用转发器都是合适的选择。通用转发器采用SplunkEnterprise的轻量版本来输入数据,对数据执行最少的处理,然后向索引编制器转发数据。因为其资源需求最少,所以可以将其与生成数据的机器(例如Web服务器)放在一起。
索引编制器和搜索头都是由SplunkEnterprise实例配置而成,分别执行索引或搜索管理的专门功能。每个索引编制器和搜索头都是单独的实例,通常驻留在自己的机器上。
这张图表提供了一个简单的例子,说明处理组件可以如何驻留在不同的处理层。这个图表说明了一个可以满足小企业需求的部署类型。
从上图开始,我们在一个小型企业部署的上下文中说明了三个处理层:
为了扩展系统,需要向每个层级添加更多组件。为了便于管理或满足高可用性需求,可以将组件分为索引编制器集群或搜索头集群。
可以将某些SplunkEnterprise组件分组到集群中,使它们密切协调其活动。这具有两个关键目的:
索引器集群是一组配置为复制彼此数据的SplunkEnterprise索引器,这样系统就会保留所有数据的多个副本。这个过程称为索引复制。通过维护SplunkEnterprise数据的多个相同的副本,集群可以防止数据丢失,同时提高搜索数据可用性。
SplunkEnterprise集群具有从一个索引器自动故障转移到下一个索引器的功能。这意味着,如果一个或多个索引器出现故障,传入的数据将继续被编制索引,并且编制索引的数据将继续可供搜索。
除了增强高可用性之外,集群还有其他功能,有助于简化分布式部署的管理。例如:
即使环境中不考虑高可用性,仍可以通过部署不带索引复制的索引器群集来利用简化的管理功能。
搜索头集群是一组搜索头,充当集中搜索资源。搜索头共享知识对象、应用程序和所有其他配置。可以从集群中的任何搜索头运行相同的搜索、查看相同的仪表板以及访问相同的搜索结果。
搜索头群集具有以下几个重要优势:
水平扩展。随着用户数和搜索负载的增加,可以向集群添加新的搜索头。通过将搜索头集群与放置在用户和集群之间的第三方负载均衡器相结合使用,拓扑结构对用户是透明的。
高可用性。如果一个搜索头出现故障,可以从集群中的任何其他搜索头运行同一组搜索并访问同一组搜索结果。
无单点故障。搜索头集群使用动态队长来管理集群。如果队长出现故障,另一个搜索头会自动接管集群的管理。
Splunk部署中的处理层级对应于数据管道,这是数据在Splunk软件中穿行的路线。
每个Splunk处理组件都驻留在其中一个层级上。这些层级共同支持数据管道中发生的进程。
随着数据沿着数据管道移动,Splunk组件将数据从外部源(例如日志文件和网络源)中的原始形式转化为可搜索的事件,这些事件封装了有价值的信息。
在输入段中,Splunk 软件消耗数据。它从其源获取原始数据流,将其分解为 64K 块,并使用一些元数据键注释每个块。这些键适用于整个输入源。它们包括数据的主机、源和源类型。 键还可以包括内部使用的值(如数据流的字符编码)和控制以后数据处理的值(如应将事件存储到的索引)。
在此阶段,Splunk 软件不会查看数据流的内容,因此密钥适用于整个源,而不是单个事件。事实上,在这一点上,Splunk软件根本没有单个事件的概念,只有具有某些全局属性的数据流的概念。
在解析段期间,Splunk 软件会检查、分析和转换数据。这也称为事件处理。正是在这个阶段,Splunk软件将数据流分解为单个事件。解析阶段有许多子阶段:
在索引期间,Splunk 软件获取解析的事件并将其写入磁盘上的索引。它写入压缩的原始数据和相应的索引文件。
为简洁起见,解析和索引通常统称为索引过程。在高层次上,这是有道理的。但是,当需要更仔细地检查数据的实际处理或决定如何分配组件时,分别考虑这两个段可能很重要。
搜索段管理用户如何访问、查看和使用索引数据的所有方面。作为搜索功能的一部分,Splunk 软件存储用户创建的知识对象,例如报告、事件类型、仪表板、警报和字段提取。搜索功能还管理搜索过程本身。
注意:该图表示索引体系结构的简化视图。它提供了架构的功能视图,并没有完全描述 Splunk 软件内部。特别是,解析管道实际上由三条流水线组成:解析、合并和类型化,它们共同处理解析函数。在故障排除期间,这种区别可能很重要,但通常不会影响配置或部署 Splunk Enterprise 组件的方式。
Splunk 组件参与数据管道的一个或多个段。
每个数据管道的段都对应一个或多个Splunk Enterprise处理组件。例如,数据输入是管道的一个段,可以使用索引器或转发器输入数据。
数据管道的多数段都可以由多个组件类型来处理。使用的特定段取决于部署结构。
例如,尽管可以将数据直接输入到索引器中,但通常只在由单个实例组成的小型部署中这样做。在规模较大的部署(通常也是单个实例的部署)中,转而通过转发器输入数据。将输入任务委派给转发器可以为部署提供更大的灵活性。
下面的表格将数据管道的段与可以处理该段的组件关联起来:
在特定情况下,其他组件也可能发生解析操作:
在大多数部署中,转发器只处理数据输入,收集数据并将其发送到Splunk Enterprise索引器。然后,索引器执行解析和索引操作。然而,在某些部署中,转发器在将数据发送到索引器之前也对其进行解析,然后索引器只进行索引。
转发器有两种类型:
这两种类型的转发器在将数据发送到索引器之前都会用元数据(例如主机、来源和源类型)标记数据。
转发器允许在处理大量或不同类型的数据时高效地使用资源。它们还通过提供负载平衡、数据过滤和路由等功能,实现了一些有趣的部署拓扑。
在分布式搜索中,将索引/解析和搜索部分分离开来。搜索头向索引器发送搜索请求,并将结果合并后返回给用户。这种拓扑结构对于水平扩展特别有用。为了将部署扩展到部门级别之外,可能会采用分布式搜索。
管理组件支持处理组件的各项活动。与处理组件一样,管理组件是Splunk Enterprise实例的特殊配置版本。
部署通常包括以下一个或多个管理组件:
根据组件及其工作负载,可以将两个管理组件合并到一个Splunk Enterprise实例上。在某些情况下,可以将一个管理组件放置在包含处理组件的实例上。
在一些使用情况较少的情况下,可能能够将两个以上的管理组件合并到一个实例上,尽管一般不建议这样做。如果打算这样做,请密切监视性能影响,确保没有超载该实例。
下表总结了在理想情况下每种管理组件类型的共位可能性。请务必阅读下表后面的免责声明,其中包含有关如何使用该表的重要指南。
第二章 实现分布式部署
Splunk Enterprise 部署的范围从单实例部门部署(每天索引几 GB 的数据,仅为搜索数据的少数用户提供服务)到分布在多个数据中心的大型企业部署,索引要求在 TB 范围内,搜索由数百人执行。
Splunk Enterprise 的生产部署通常需要安装和配置各种组件,例如转发器、搜索头和索引器。本章包括一系列用于实现常见分布式部署方案的框架,其规模从部门部署到大型企业部署。
这些框架可作为导航实施过程的高级路线图。每个框架都描述了一个常见的部署方案。然后,它提供了实现该方案的过程的概述,以及指向该过程每个步骤的详细文档的链接。
选择最能反映你需求的方案,并遵循其框架。该框架将带你到正在运行的部署。此时,已准备好专注于管理任务的范围,例如设置用户、处理安全问题,以及最后为最终用户创建仪表板和搜索等知识对象。
要实施Splunk Enterprise生产部署,必须安装各种Splunk Enterprise组件。要安装的特定组件取决于部署类型。即使要实施单实例部署,其中单个Splunk Enterprise实例同时担任索引器和搜索头,也需要安装转发器以将数据传输到该实例。要扩展到超过一个实例,必须安装和配置几种类型的Splunk Enterprise组件。
配置的组件根据部署的大小和特定要求而有所不同。例如,确保数据高可用性的部署需要不同于不强调高可用性的部署的配置。
不同的组件在很大程度上是由相同的Splunk Enterprise软件包构建的,只是配置不同以满足不同角色。通用转发器是例外,它使用的是Splunk Enterprise的轻量级软件包。
实施部署的过程要求根据目标做出一系列决策。此外,还需要遵循大量文档中描述的程序。执行的程序根据部署需求而有所不同。
确定适合特定部署需求的正确程序集,然后找到文档中的所有程序可能是一项艰巨的任务。本章的目的是简化这一过程。本章的主题提供了有关信息,以帮助理解部署需求并从一开始就做出正确的决策。
接下来的章节“具有实施框架的典型部署场景”为几种具有代表性的部署类型或场景提供了单独的主题。这些主题包含每个场景的端到端部署框架。每个框架都包含一套可用于部署场景的高级别步骤,并提供每个步骤的详细程序所包含的主题的链接。
请按照以下步骤进行操作:
可以通过多种方式来自定义Splunk Enterprise部署。然而,大多数部署都属于一些基本的分组。本主题讨论了不同类型部署的一些关键特征和注意事项。
决定部署类型和规模的主要因素如下:
其他注意事项也会影响整体部署计划,例如安全要求和数据的位置。
以下是一些根据规模划分的典型部署类型:
这些部署类型只是从单实例部署到为大量用例提供企业级覆盖的部署之间连续规模上的几个点。
此外,可以在任何规模的的企业部署中部署索引器集群。索引器集群提供了高可用性、灾难恢复和简化的扩展等优势。
还可以以多种方式组合部署拓扑。例如,可以部署一个搜索头,同时搜索索引器集群和一组独立索引器。
注意:“小型企业”、“中型企业”等术语并非常规地指使用Splunk平台的企业的大小。相反,它们是指Splunk平台在企业中支持功能的广度和深度的指标。随着Splunk平台对于处理广泛用例的价值随着持续的成功而增长,部署的规模通常也会增长。例如,一家财富500强公司可能从一个部门级别的、针对特定用例的单实例Splunk Enterprise安装开始,然后随着时间的推移,逐渐过渡到小型企业和中型企业的部署,最终采用大型企业的部署,为整个公司的组织机构和用例提供关键价值。
继续阅读本主题的其余部分以了解想要实施的部署类型的明确信息。然后转到下一章以下主题之一:
“部门级部署:单个索引器”
“小型企业部署:具有单个搜索头和多个索引器的部署”
“中等到大型企业部署:具有多个索引器的搜索头集群”
“高可用性部署:索引器集群”
这些主题提供了有关每个部署类型的详细信息,包括基本架构的图表。最重要的是,每个主题都包含有关实施过程的高级别端到端指南,其中包括实施部署时要遵循的特定程序的链接。
部署的特点会随着规模的增长而变化。以下表格可以让了解需要部署哪些Splunk组件才能满足需求。
设计注意事项也会随着部署规模的扩展而变化。下表总结了设计部署时需要考虑的一些问题。
第三章 具有实现框架的典型部署方案
一个同时担任索引器和搜索头的Splunk Enterprise实例通常可以满足大型组织中单个部门的索引和搜索需求。通常还需要在生成数据的主机上安装转发器,以将数据从主机传输到索引器。
本主题介绍如何实施由以下部分组成的部署:
此类部署的特征包括:
下图显示了此类部署的体系结构的高级视图:
从底部开始,该图说明了处理层:
数据输入。数据通过转发器进入系统,转发器负责消耗外部数据,执行少量预处理,然后向索引器发送数据。在部门级部署中,通常拥有不到10个转发器,但对于某些用例,可能需要多达100个。
索引和搜索(组合)。单个索引器接收、索引并存储来自转发器的传入数据。索引器同时担任搜索头的职能。在这种模式下,索引器处理各种搜索请求,例如用户提出的临时请求和保存的搜索请求。搜索头为用户提供各种工具,例如仪表板,以增强搜索体验。
要实施此类部署场景,请按照以下步骤操作:
启动并运行 Splunk Enterprise 实例后,可以进一步优化系统并准备数据及其呈现,具体活动参考“部署后活动”。
注意:若要增加索引和搜索容量,第一步是将索引功能与搜索管理功能分开。为此,添加第二个 Splunk Enterprise 实例作为专用搜索头。拥有专用搜索头后,可以通过添加更多索引器来提高索引容量。
要增加索引和搜索能力超过某个点,必须从单个Splunk Enterprise实例过渡到多实例部署。将搜索管理和索引功能进行划分,将其分配到在单独的机器上运行的单独的实例上。在扩展的第一阶段,通常部署一个单独的搜索头,与两个或三个索引器进行通信。这种部署类型是多个部门或小型企业解决方案的特征。
本主题描述如何实施包含以下组件的部署:
注意:除了部署多个单独的索引器之外,还可以部署一个索引器集群。即使不需要高可用性以及伴随的存储开销,这种拓扑结构仍然很有用。它仍然需要少量开销,但提供简化的索引器管理优势。
此分布式搜索方案提供第一级水平缩放。它允许用户跨一组索引器运行搜索。随着需求的进一步增加,可以添加更多索引器。
此类部署的特征包括:
下图显示了此类部署的体系结构的高级视图:
从底部开始,该图说明了三个处理层:
本主题假定从零开始实施这种部署。如果要扩展现有的单实例部署,则过程与之类似,但需要注意几个额外的问题:
实施框架过程包括处理这些问题的步骤。
在从小型企业到中型企业部署的过渡过程中,需要提高索引和搜索能力。对于索引,可以继续添加索引器。对于搜索,可以添加搜索头以服务更多用户和更多搜索活动。
部署多个搜索头的建议方法是将搜索头组合到搜索头群集中。搜索头群集允许用户和搜索在一组搜索头之间共享资源。它们也比单个搜索标题组更易于管理。搜索头群集至少需要三个搜索头。
中型企业部署和大型企业部署之间的差异主要是规模和管理问题。基本部署拓扑类似。它们都使用具有多个索引器的搜索头群集。
中型企业部署比小型企业部署提供更大的水平扩展。它为更多的用户和搜索提供服务。随着需求的不断增加,可以继续添加索引器和搜索头。
此类部署的特征包括:
大型企业部署提供了更大的水平扩展。
此类部署的特征包括:
下图显示了大中型企业部署的体系结构的高级视图:
从底部开始,该图说明了三个处理层:
本主题假定从头开始实现搜索头集群部署。相反,如果要从现有的非集群部署进行扩展,则过程类似,但还需要注意一些其他问题:
若要使用索引器和转发器实现搜索头群集,请执行以下操作:
可以根据需要继续扩展部署。若要增加索引和搜索容量,第一步是添加更多索引器。为此,请安装另一个 Splunk Enterprise 实例,并配置搜索头和转发器以与之连接。
若要为更多用户提供服务并继续将搜索容量增加到特定级别以上,必须向群集添加另一个搜索头。
若要确保数据的高可用性,可以部署索引器群集。索引器群集是一组索引器,配置为复制彼此的数据,以便系统保留所有数据的多个副本。此过程称为索引复制。索引器群集可防止数据丢失,同时提高搜索的数据可用性。索引器群集也比单个索引器组更易于管理。
索引器群集的权衡是需要额外的存储来处理复制的副本。可以控制索引复制的程度,从而控制存储要求,以满足企业的可用性需求。
可以将索引器群集用于任何规模的企业部署。
随着搜索需求的增长,可以将索引器群集与搜索头群集组合在一起。
索引器群集的主要用例是企业部署,它需要高数据可用性,并且愿意分配存储数据的多个副本所需的额外磁盘空间。
还可以在不进行复制的情况下实现索引器群集。消除复制后,将失去索引器群集的一些主要优势,例如数据可用性和数据恢复,但仍可以获得简化多个索引器管理的好处。
索引器群集的主要体系结构类型包括:
下图显示了具有一个或多个单独搜索头的索引器群集的体系结构的高级视图:
从底部开始,该图说明了三个处理层:
管理器(主)节点调节集群节点的功能,但不索引、存储或搜索数据。
可以将索引器群集与搜索头群集组合在一起。如果需要部署多个搜索头,建议使用此方法
与以前的体系结构相比,主要区别在于搜索头群集取代了单个搜索头。索引器群集与搜索头群集的交互方式与与单个搜索标头交互的方式基本相同。
本主题假定你从头开始实现索引器群集部署。相反,如果要从一组非聚集索引器进行扩展,则可以将现有索引器合并到群集中,但需要注意一些问题:
若要实现索引器群集,请执行以下操作:
1. 安装必要的 Splunk 企业版实例,并部署索引器群集。
2. (仅限迁移)如果要从包含一个或多个独立索引器的部署迁移,另请阅读管理索引器和索引器群集手册中的“将非聚集索引器迁移到群集环境”。
3. 如果要为搜索层实现搜索头群集,参考“部署搜索头群集”和“将搜索头群集与索引器群集集成”。
4. 配置 Splunk 企业许可证。如果有现有许可证,则必须确保它涵盖任何新实例。
5. 在托管数据源的计算机上安装通用转发器(如果尚未这样做)。
6. 将对等节点连接到转发器:
7. 配置转发器的输入,以便数据开始进入系统。
可以根据需要缩放群集。若要增加索引和搜索容量,第一步是添加另一个索引器。为此,要启用新的 Splunk 企业实例作为对等节点。
若要为更多用户提供服务并继续将搜索容量增加到一定级别以上,必须添加更多搜索头。在索引器群集中包含多个搜索头的建议方法是将它们部署在搜索头群集中。
文章浏览阅读799次。使用nginx部署项目web服务器:TOMCAT java htmlAPache PHP html javaIIS asp 和 asp.netundowtow javanodejs 它可以部署web服务器nginx html php 部署前端,比较流行的一个web服务器启动 CD到nginx目录 执行 nginx 或者 start nginx 或者 直接运行nginx.exe关闭 nginx -s stop 或 任务管理器 ctrl+alt+esclocation / {root_this.$router.push 最上级路径
文章浏览阅读5.8k次。2021年各大互联网大厂年终奖一览表~新年干劲十足_年终奖bg
文章浏览阅读58次。原标题:小米note4确认,搭载骁龙710,网友直接呼良心!小米8的发布,大家已经被它的性价比所震撼到,一方面,主要源于它的处理器的强大,因为这款处理器是骁龙的最新款处理器,另外一方面,在摄像头方面也有了大幅度的提升,尤其是拍照方面AI处理上,已经得到前所未有的改变。 在下图中,我们可以看到,小米官方辟谣我叫note4,不叫Lex,可以从侧面证实小米note4即将发布,为和小米MIX3一起发布。另...
文章浏览阅读7k次,点赞4次,收藏21次。开发环境简介开发板正点原子MINI操作系统Linux-Mint 20.2交叉编译链gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihfUBoot版本imx_v2020.04_5.4.70_2.3.0环境搭建交叉编译链配置下载交叉编译链linaro官方下载地址:https://releases.linaro.org/components/toolchain/binaries/文中选用工具链为 gcc-l_mx6ull的uboot2020.04用什么版本的arm-linux-gnueabihf-gcc编译器
文章浏览阅读914次。h=int(input())m=int(input())s=int(input())z=h*3600+m*60+sprint(z)_:输入一个某时间的小时h、分钟m和秒s,计算从零时起该时间过了多少秒。输入格
文章浏览阅读285次。2014-10-15 01:30 16095人阅读 评论(28) 收藏 举报 PHP程序员的技术成长规划作者:黑夜路人(2014/10/15) 按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设
文章浏览阅读1.3k次。文章目录问题描述解决方案问题描述有这么一个html页面,具体代码如下:Nginx_CORS.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-wid..._nginx使用了代理转发就不会有跨域问题吗
文章浏览阅读3.6k次,点赞5次,收藏37次。java遍历集合的四种方式:普通for循环迭代器加强for循环(foreach)list.forEach_java集合遍历
文章浏览阅读291次。本文将在win10的环境下安装jdk16、配置环境变量。1.下载JDK(1)打开官网下载最新的JDK(Java SE Development Kit, JDK)(2)选择对应的版本(3)双击下载的exe进行安装在安装过程中可以改变安装位置也可以不改变,但是安装的位置一定要记住!!!!这关系到后面设置环境变量。然后安装过程中其它的选项就next~(4)配置环境变量一共需要配置3个系统环境变量。此电脑–属性–高级系统设置–环境变量—新建系统变量一定注意是系统变量!!!!别搞错了!!!!_java16.02安装
文章浏览阅读720次。1 赛题C 题 电商物流网络包裹应急调运与结构优化问题电商物流网络由物流场地(接货仓、分拣中心、营业部等)和物流场地之间的运输线路组成,如图 1 所示。受节假日和“双十一”、“618”等促销活动的影响,电商用户的下单量会发生显著波动,而疫情、地震等突发事件导致物流场地临时或永久停用时,其处理的包裹将会紧急分流到其他物流场地,这些因素均会影响到各条线路运输的包裹数量,以及各个物流场地处理的包裹数量。_数学建模物流配网络问题
文章浏览阅读1.5w次,点赞23次,收藏260次。本文覆盖机器学习常见知识要点,包括机器学习流程、算法分类(监督学习、无监督学习、强化学习)、依托的问题场景(分类、回归、聚类、降维)、机器学习模型评估与选择等。_机器自学习算法示意框图
文章浏览阅读1.2k次,点赞2次,收藏3次。每个人的学识水平化为09,用09表示其学识高低程度。众所周知,与新生婴儿讨论微积分是一个非常扯淡的事情,所以,学识不为0的人群才可以参与讨论, 现在给定一个m*n的人群,给定每个人的文化程度,每个人仅可和上下左右进行讨论,所以请你求出学术讨论组的个数。输入格式:用空格隔开的整数m,n(m行,n列)矩阵(1≤m,n≤100)。输出格式:学识组的个数。输入样例:4 10067480001..._厦门大学数据结构mooc 5-2 knowledge (20 point(s))