技术标签: 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 企业实例作为对等节点。
若要为更多用户提供服务并继续将搜索容量增加到一定级别以上,必须添加更多搜索头。在索引器群集中包含多个搜索头的建议方法是将它们部署在搜索头群集中。
文章浏览阅读1.1w次。七牛是专注文件存储的第三方服务商,服务较好。自己最近做到服务器存储图片的时候就想到用七牛来做,将图片或者文件存放在七牛,然后自己服务器只存放资源存放在七牛文件的url。今天主要分享两个内容:凭证的获取,安卓上传文件在做之前还是先把官方文档好好读几遍比较好首先说说凭证,七牛对所有上传的资源都需要身份验证,就是通过凭证来验证,验证通过,那么就可以成功上传文件,不通过,七牛服务器会反_7牛 s3存储的使用
文章浏览阅读3w次,点赞32次,收藏114次。Windows10 -64 安装tensorflow遇到的:cuda安装后找不到安装文件目录目录 一、错误:cuda安装后找不到安装文件目录二、查看cuda驱动程序的版本三、补充内容四、执行测试程序出错五、常用命令总结 一、错误:cuda安装后找不到安装文件目录原因是:将临时解压目录和安装目录设置成一样的了,导致安装结束,临时解压目录被删除,所以安装目录也被删除了;..._没有nvidia gpu computing toolkit文件夹
文章浏览阅读1.1k次。本文主要对memcache内部Big-O、LRU算法、内存分配(Memory allocation)、一致性哈希(Consistent hashing)等进行了深入剖析,并举例生动形象描述了一致性哈希算法_memcache 架构分析
文章浏览阅读2.1k次。人事部统计员小马负责本次公务员考试成绩数据的整理,按照下列要求帮助小马完成相关的整理、统计和分析工作:1.将考生文件夹下的工作簿文档“Excel素材.xlsx”另存为“Excel.xlsx”(“.xlsx”为文件扩展名),之后所有的操作均基于此文件,否则不得分。操作过程中,不可以随意改变工作表中数据的顺序。2.将考生文件夹下的工作簿“行政区划代码对照表.xlsx”中的工作表“Sheet1”复制到工..._excel准考证号的第四位为1,考试类别为a考试成绩
文章浏览阅读135次。跟你说,昨天......马云远赴非洲为他们颁奖......他们是谁呢?南非当地时间8月7日,来自非洲各国的一线野生动物巡护员齐聚开普敦。马云代表阿里巴巴公益基金会和桃花源生态保护基金会为他们颁奖。这群用生命保护大象、狮子和犀牛的巡护员们,第一次得到来自中国的资金和技术支持。在颁奖现场,每一位嘉宾的座位上都摆着一只可爱的非洲野生动物公仔。它们..._史上最危险的工作但是奖金最多
文章浏览阅读4k次。这里讨论两种多线程访问UI控件的方法,线程完成后更新Lable控件如下图,第一种方式为方式1按钮按下,线程运行,并更新label第二种方法为按下方式2按钮,线程运行,完成后更新label 新建winform项目程序,布局如上,大家可以不用配色,简单即可引用using System.Threading; 第一种方法:使用delegate和invoke来从其他线程中调用控件 当一个控件的InvokeRequired属性值为真时,说明有一个创建它以外的线程想访问它,所以我们判断这个属性来更新label的值 _winform多线程访问控件
文章浏览阅读2.9w次,点赞16次,收藏27次。我采用的.ini文件[uwsgi]master = truewsgi-file=myppt/wsgi.pyprocesses = 1threads = 2chdir = /www/wwwroot/ppt_jpg/myppt/http = 127.0.0.1:9876virtualenv=/www/wwwroot/ppt_jpg/myppt/ppt_venvdaemonize=uw..._uwsgi harakiri
文章浏览阅读7.4k次,点赞14次,收藏47次。前言: 最近准备在windows上面用ffmpeg做视频编解码工作,找了很多博客对编译方法描述都不全,花了一天时间自己折腾编译通过了,写篇比较完整的博客分享给大家,希望对大家有所帮助,另外,感谢其他博主的分享!一,源码包下载1.ffmpeg下载下载地址:https://ffmpeg.org(1)在主页面中找到ffmpeg5.0版本点击(2)点击下载,这里我下载的是gzip包2,下载x264代码下载地址:x264, the best H.2..._ffmpeg5.0
文章浏览阅读2.1w次,点赞118次,收藏586次。空洞卷积(膨胀卷积)的相关知识以及使用建议(HDC原则)_空洞卷积
文章浏览阅读1.6k次。python实现对excel数据某列提取文件名,匹配文件夹提取对应文件_利用python从excel表中读取文件名称再去本地提取文件
文章浏览阅读916次。以下不作为机器学习/算法工程师的学习路径,只是汇总的校招机器学习/算法工程师面试考点(因为还有笔试考点,后面结合在一起给大家学习路径),后续会为大家更新10w+字数的机器学习/算法工程师校招面试题库,还有其他岗位的相关题库和资料,想要什么岗位的可以留言哦~ 本篇根据各个公司的面试问的问题的大数据进行总结,后面还会更新面试中考察所占比例,当然,本文只包括技术面,不太包括hr面或者一些其他谈人生理..._sklearn dbscan kmeans isodata
文章浏览阅读2.9w次。1. 大英帝国 面积:三千三百一十万平方公里 年代:1946 人口:五亿三千一百万大英帝国,是一个以英国(实际仍为王国)为中心的全球帝国,在20世纪初的鼎盛时期,全世界有大约4至5亿人,也就意味着当时全球人口的约四分之一,都是该帝国的子民,其领土面积则有约3367万平方公里(它宣称对加拿大北极圈内、澳大利亚内陆和南极洲的土地拥有主权),是世界陆地总面积的四分之一,成为了历史上跨度最广、面积最大_恺撒疆域版图为多少万平方公里